Szerző Téma: Random  (Megtekintve 566 alkalommal)

Nem elérhető Tomee

  • 385
    • Profil megtekintése
Random
« Dátum: 2011. május 31. - 14:15:23 »
0 Show voters
Hello!
Hogy csinálhatnék, olyan randomot, aminél nem 50-50% esély van valamire, hanem 60-40% vagy 30-70%?

Random
« Válasz #1 Dátum: 2011. május 31. - 15:02:51 »
0 Show voters
Nem teszteltem,remélem jó!
[pawn]if(!strcmp(cmdtext, \"/randomhealth\", true))
   {
    new randomhealth;
     randomhealth = random(3);
    switch(randomhealth)
    {
    case 0:
    {
    SetPlayerHealth(playerid, 100);
    SendClientMessage(playerid ,0x5465 \"Az felvittük maxra!\"
    }
    case 1:
    {
    SetPlayerHealth(playerid, 0);
    SendClientMessage(playerid ,0x5465 \"Az életedet levittük 0-ra!\"
    }
    case 2:
    {
    SetPlayerHealth(playerid, 50);
    SendClientMessage(playerid ,0x5465 \"Az átálítottuk 0-ra!\"
    }   
    return 1;
}[/pawn]

Nem elérhető jana4

  • 5929
  • Ex Staff
    • Profil megtekintése
Random
« Válasz #2 Dátum: 2011. május 31. - 15:33:53 »
0 Show voters
Ilyent elvileg Pawnba nem lehet.

Mivel ha 3 véletlenszerût generálsz azoknak egyenkénti esélye 33,333%...


Másképp nem lehet.

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Random
« Válasz #3 Dátum: 2011. május 31. - 15:59:42 »
0 Show voters
#define IsInProcent(%1) (random(100)<%1)
Használat:
Ezt a kódot a bemásolod a szkripted elejére (a beágyazások alá).
Használati példa:
[pawn]   if (strcmp(\"/test\", cmdtext, true) == 0)
{
   if(IsProcent(22))
   {
       SendclientMessage(playerid,0xFFFFFFFF,\"22 százalék esélye volt, hogy ezt a szöveget megkapod.\");
      return 1;
   } else
   {
      SendclientMessage(playerid,0xFFFFFFFF,\"78 százalék esélye volt, hogy ezt a szöveget megkapod.\");
      return 1;
   }
}[/pawn]
Mûködés:
Generál egy véletlenszerû számot 100 alatt, és azt vizsgálja, hogy a szám kisebb vagy nagyobb(egyenlõ) a megadott százaléklábnál (a példában 22) .
Erre pont annyi esély van, amilyen számhoz viszonyítva vizsgál (a példában 22 -> 22% esély van rá.)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal