SA-MP Forums Archive
Duda - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Duda (/showthread.php?tid=472672)



Duda - BruceDickinson - 30.10.2013

Bien un saludo suce que tengo el siguiente scrip
Код:
new diamantes = random(3);
switch(diamantes)
{
case 0: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");
case 1: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");
case 2: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");
case 3: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");
case 4: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");
case 5: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");
case 6: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!."); Info[playerid][pDiamante] = 1;
}
y es logico que en el case 6 me debe dar un error lo que quiero es que el random le de un diamante y le envie el mensaje en el case 6 pero si alguno tiene otra forma de hacerlo se lo agradesco gracias


Respuesta: Duda - deryan - 30.10.2013

Utiliza asн:

pawn Код:
new diamantes = random(7);//7 porque tambien se cuenta el 0
switch(diamantes)
{
case 0, 1, 2, 3 , 4 , 5: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");//si le tocan estas 6 opciones no hara nada y mandara el mensaje
case 6: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎEncontraste un diamante, felicitaciones!."), Info[playerid][pDiamante] = ++;//en el caso 6 mandara un mensaje diciendole que ha encontrado 1 diamante y se usa "++" para que le suba 1 valor en lugar de establecerlo
}
Intenta de esta manera


Respuesta: Duda - EduGTA - 30.10.2013

Quote:
Originally Posted by deryan
Посмотреть сообщение
Utiliza asн:

pawn Код:
new diamantes = random(7);//7 porque tambien se cuenta el 0
switch(diamantes)
{
case 0, 1, 2, 3 , 4 , 5: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");//si le tocan estas 6 opciones no hara nada y mandara el mensaje
case 6: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎEncontraste un diamante, felicitaciones!."), Info[playerid][pDiamante] = ++;//en el caso 6 mandara un mensaje diciendole que ha encontrado 1 diamante y se usa "++" para que le suba 1 valor en lugar de establecerlo
}
Intenta de esta manera
Y si quieres hacerlo mбs corto (sin poner 0, 1, 2, 3, 4 y 5):

pawn Код:
case 0 .. 5: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!.");



Respuesta: Duda - Parka - 30.10.2013

Si quieres hacer algo como eso te recomiendo usar default y poner un buen limite en random recuerda siempre que random te otorga un numero del 0 al Mбximo que hallas colocado en el.

pawn Код:
new diamantes = random(20);
switch(diamantes){
    case 5,10,15:{
        SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎEncontraste un diamante, felicitaciones!.");
        Info[playerid][pDiamante] += 1;
    }
    default: SendClientMessage(playerid, -1, "{00C0FF}»» {FFFFFF} ЎNo encontraste nada!");
}
PD: el cуdigo de deryan te dara errores puesto que esto Info[playerid][pDiamante] = ++; no es valido y te darб errores.


Respuesta: Duda - BruceDickinson - 30.10.2013

gracias nos soy tan noob xD solo queria saber como hacerlo saludos