GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Devil112 - 2016. Március 18. - 12:39:49

Cím: szállítás
Írta: Devil112 - 2016. Március 18. - 12:39:49
Sziasztok.
Olyan problémám van, hogy ez folyton ismétli önmagát és az utolsót nem hajtja végre.
MiérT?
 
   if(Pszallitas[playerid] == 1)
{
    if(IsPlayerInAnyVehicle(playerid))
{
    new carid = GetPlayerVehicleID(playerid);
    new cash=(random(100-50)+0);
           new rnd = random(sizeof(PizzaCP));
    if(pizzasmotorok(carid))
    {
        switch(Ppickup[playerid][0])
        {
         case 0:
           {
               PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
               format(string, sizeof(string), \"~w~Kaptál ~g~%d$-ot.\", cash);
               GameTextForPlayer(playerid, string, 5000, 1);
                SafeGivePlayerMoney(playerid,cash);
               PlayerInfo[playerid][Penz] += cash;
            varoskassza -= cash,
            Savevaroskassza();
                     SetPlayerCheckpoint(playerid,PizzaCP[rnd][0],PizzaCP[rnd][1],PizzaCP[rnd][2],2);
         }
         case 1:
           {
               PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
               format(string, sizeof(string), \"~w~Kaptál ~g~%d$-ot.\", cash);
               GameTextForPlayer(playerid, string, 5000, 1);
                SafeGivePlayerMoney(playerid,cash);
               PlayerInfo[playerid][Penz] += cash;
            varoskassza -= cash,
            Savevaroskassza();
               SetPlayerCheckpoint(playerid,PizzaCP[rnd][0],PizzaCP[rnd][1],PizzaCP[rnd][2],2);
         }
         case 2:
           {
               PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
               format(string, sizeof(string), \"~w~Kaptál ~g~%d$-ot.\", cash);
               GameTextForPlayer(playerid, string, 5000, 1);
                SafeGivePlayerMoney(playerid,cash);
               PlayerInfo[playerid][Penz] += cash;
            varoskassza -= cash,
            Savevaroskassza();
            SendClientMessage(playerid,COLOR_YELLOW,\"Leszállítottál 3 pizzát, menj vissza az éttermebe és szállíts le még 3-at.\");
                    Pszallitas[playerid] = 0;
                    DisablePlayerCheckpoint(playerid);
                    Ppickup[playerid][0] = 0;
                    Pszallitas[playerid] = 0;
         }
      }
        PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
    }
}
return 1;
}
Cím: szállítás
Írta: BackUP - 2016. Március 18. - 15:00:07
Az összes szkriptedet mi írjuk meg?
 
Pszallitas[playerid][0]++;
Cím: szállítás
Írta: Kyosuke_Hiroshi - 2016. Március 18. - 16:54:01
case 0 hoz és a case 1 hez rakj be egy ilyet
 
Ppickup[playerid][0]++;
Cím: szállítás
Írta: Devil112 - 2016. Március 22. - 20:16:52
nemjó :(
Cím: szállítás
Írta: Kovacs_Richard - 2016. Március 23. - 05:07:07
esetleg így?
 
if(Pszallitas[playerid] == 1)
{
if(IsPlayerInAnyVehicle(playerid))
{
new carid = GetPlayerVehicleID(playerid);
new cash=(random(100-50)+0);
new rnd = random(sizeof(PizzaCP));
if(pizzasmotorok(carid))
{
   PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
   format(string, sizeof(string), \"~w~Kaptál ~g~%d$-ot.\", cash);
   GameTextForPlayer(playerid, string, 5000, 1);
   SafeGivePlayerMoney(playerid,cash);
   PlayerInfo[playerid][Penz] += cash;
   varoskassza -= cash,
   Savevaroskassza();
   //
   switch(Ppickup[playerid][0])
   {
      case 2:
      {
         SendClientMessage(playerid,COLOR_YELLOW,\"Leszállítottál 3 pizzát, menj vissza az éttermebe és szállíts le még 3-at.\");
         Pszallitas[playerid] = 0;
         DisablePlayerCheckpoint(playerid);
         Ppickup[playerid][0] = 0;
      }
      default:
      {
         SetPlayerCheckpoint(playerid,PizzaCP[rnd][0],PizzaCP[rnd][1],PizzaCP[rnd][2],2);
         Ppickup[playerid][0]++;
      }
   }
}
}
return 1;
}

 
ezt a műveletet nem teljesen értem, mármint, hogy miért így írtad meg...
 
new cash=(random(100-50)+0);
Cím: szállítás
Írta: Devil112 - 2016. Március 23. - 16:12:01
Köszönöm szépen.:)
Miért mi azzal a probléma?:o
Cím: szállítás
Írta: BackUP - 2016. Március 23. - 16:52:16
miért tetted zárójelbe? Miért adtál hozzá 0-át? Mi az a 100-50? Ha a célod h 2 tartomány között adjon eredményt azt ezzel nem fogod elérni.
Helyes, ha nem két tartományról van szó:
 
new cash = random(50);

 
Helyes, ha a két tartomány közé akarsz bemenni:
 
new cash = random(100-50)+50;
Cím: szállítás
Írta: Devil112 - 2016. Március 23. - 17:51:20
Hm , legalább megint okosodtam:D
Köszönöm.:)