Szerző Téma: Ezt hogy kell %-os randomba tenni?  (Megtekintve 1337 alkalommal)

Ezt hogy kell %-os randomba tenni?
« Dátum: 2011. Március 18. - 22:55:13 »
0 Show voters
if(strcmp(cmdtext, \"/késki\", true, 9)== 0)
{
     if(IsPlayerInRangeOfPoint(playerid, 5, 1260.3025,-796.0180,1084.2344,180) //Ha a konyhafiók elõtt áll
     {
          new str[128], name[24];
          GetPlayerName(playerid, name, sizeof(name))
          format(str, sizeof(str), \"*     %s kivett egy kést a konyhafiókból.\", name) // /me-zi ha kiveszed
          SendClientMessageToAll(0xFFCCFF, str);
          GivePlayerWeapon(playerid, 4, 1);
     }
     return 1;
}

 
No van egy ilyenem. Azt szeretném kérni, hogy írjátok meg nekem légyszíves úgy, hogy 70% esély van rá hogy ad kést.
Ha nem ad kést akkor: %s kinyitotta a konyhafiókot de nem talált benne kést.
Köszönöm a segítséget

Ezt hogy kell %-os randomba tenni?
« Válasz #1 Dátum: 2011. Március 18. - 23:02:44 »
0 Show voters
Talán így próbáld ki.
 

if(strcmp(cmdtext, \"/késki\", true)== 0)
{
if(IsPlayerInRangeOfPoint(playerid, 5, 1260.3025,-796.0180,1084.2344)) //Ha a konyhafiók elõtt áll
{
   switch(random(99))
   {
      case 10..39, 40..49, 70..99:
      {
         new str[128];
         GetPlayerName(playerid, str, sizeof(str));
         format(str, sizeof(str), \"*     %s kivett egy kést a konyhafiókból.\", str); // /me-zi ha kiveszed
         SendClientMessageToAll(0xFFCCFF, str);
         GivePlayerWeapon(playerid, 4, 1);
      }
      default: SendClientMessage(playerid, -1, \"Nincs kés a fiókban\");
   }
}
return 1;
}
« Utoljára szerkesztve: 2011. Március 18. - 23:26:09 írta Zsolesszka »

Nem elérhető SoAP

  • 182
    • Profil megtekintése
Ezt hogy kell %-os randomba tenni?
« Válasz #2 Dátum: 2011. Március 18. - 23:18:18 »
0 Show voters
               new str[128];
               GetPlayerName(playerid, str, sizeof(str));
               format(str, sizeof(str), \"*     %s kivett egy kést a konyhafiókból.\", str); // /me-zi ha kiveszed

 
helyett....
 

               new str[128], name[MAX_PLAYER_NAME];
               GetPlayerName(playerid, name, MAX_PLAYER_NAME);
               format(str, 128, \"*     %s kivett egy kést a konyhafiókból.\", name); // /me-zi ha kiveszed

Ezt hogy kell %-os randomba tenni?
« Válasz #3 Dátum: 2011. Március 18. - 23:21:50 »
0 Show voters
Idézetet írta: SoAP date=1300486698\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6944\" data-ipsquote-contentclass=\"forums_Topic

               new str[128];
               GetPlayerName(playerid, str, sizeof(str));
               format(str, sizeof(str), \"*     %s kivett egy kést a konyhafiókból.\", str); // /me-zi ha kiveszed

 
helyett....
 

               new str[128], name[MAX_PLAYER_NAME];
               GetPlayerName(playerid, name, MAX_PLAYER_NAME);
               format(str, 128, \"*     %s kivett egy kést a konyhafiókból.\", name); // /me-zi ha kiveszed

 

Most minek írod át újból a pazarló módszerre? Nem véletlenül írtam át, esetleg ha kipróbálnád látnád hogy mûködik.

Ezt hogy kell %-os randomba tenni?
« Válasz #4 Dátum: 2011. Március 18. - 23:24:32 »
0 Show voters
#include <a_samp>
 
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, \"/késki\", true)== 0)
{
if(IsPlayerInRangeOfPoint(playerid, 5, 1260.3025,-796.0180,1084.2344)) //Ha a konyhafiók elõtt áll
{
   switch(random(99))
   {
      case 10..39, 40..49, 20..99:
      {
         new str[128];
         GetPlayerName(playerid, str, sizeof(str));
         format(str, sizeof(str), \"*     %s kivett egy kést a konyhafiókból.\", str); // /me-zi ha kiveszed
         SendClientMessageToAll(0xFFCCFF, str);
         GivePlayerWeapon(playerid, 4, 1);
      }
      default: SendClientMessage(playerid, -1, \"Nincs kés a fiókban\");
   }
}
return 1;
}
}

 
Ez a filterscript és compile-nél:
 
C:\\Documents and Settings\\Bluebay\\Dokumentumok\\késki_bluebay.pwn(12) : error 040: duplicate \"case\" label (value 20)
C:\\Documents and Settings\\Bluebay\\Dokumentumok\\késki_bluebay.pwn(25) : warning 209: function \"OnPlayerCommandText\" should return a value
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
1 Error.

Ezt hogy kell %-os randomba tenni?
« Válasz #5 Dátum: 2011. Március 18. - 23:25:52 »
0 Show voters
Ó bocsi 70 akar lenni nem 20. Módosítom az elsõ hozzá szólásom.

Ezt hogy kell %-os randomba tenni?
« Válasz #6 Dátum: 2011. Március 18. - 23:39:11 »
0 Show voters
Köszi a segitséget, megoldódott :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal