[Ayuda] Optimizar codigo
#1

EL caso es que tengo este codigo, mas que optimizar busco una manera de hacerlo bien y visual

pawn Код:
stock RandomAllowedCars()
{
    SendClientMessageToAll( -1, "Iniciado RandomAllowedCars()");
    new randomCars = random(211) + 400;
    if(randomCars == 417 || 425 || 430 || 432 || 435 || 441 || 446 || 447 || 449 || 450 || 452 || 453 || 454 || 460 || 464 || 465 || 469 || 472 || 473 || 476 || 484 || 487 || 488 || 493 || 497 || 501 || 511 || 512 || 513 || 519 || 520 || 537 || 538 || 548 || 553 || 563 || 564 || 569 || 570 || 577 || 584 || 590 || 591 || 592 || 593 || 594 || 595 || 606 || 607 || 608 || 610 || 611)
    {
        return RandomAllowedCars();
    }
    else
    {
        return randomCars;
    }
}
Como veis eso de los "o" "||" no funciona pero nose otra manera de hacerlo, creo que se podria guardar en una variable pero tampoco quiero ponerme a hacer mas bucles
Gracias
Reply
#2

debes hacerlo con switch
https://sampwiki.blast.hk/wiki/Control_Structures#switch_2

no te funciona por que debes de colocar randomCars == despuйs de cada ||

pawn Код:
//ejemplo.
if( var == id || var == id || var == id /*etc ...*/)
pawn Код:
switch(rand){
    case 417,425,430,432,435,441,446,447,449,450,452..454,460,464,465,469,472,473,476,484,487,488,493,497,501,511..513,519,520,537,538\
    548,553,563,564,569,570,577,584,590..595,606..608,610..611:{ /*obtenido*/ }
    default: { /*no obtenido*/ }
}
/*
.. (dos puntos) en switch es de tal numero a tal otro numero (debe ser menor a mayor)

, (coma) en switch  es tal numero o tal otro numero, similar a || en if

case es el resultado positivo del switch

default es el resultado negativo del switch
*/
saludos.
Reply
#3

Gracias OTACON, no se me habia ocurrido el switch y los dos ultimos apuntes no los sabia O_o
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)