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: ~DuMBasS - 2012. november 18. - 19:53:00

Cím: Rablás "Timer" Segítség
Írta: ~DuMBasS - 2012. november 18. - 19:53:00
Üdv mindenkinek.!
A segítségeteket szeretném kérni a következõben.!
 
    if(strcmp(cmd, \"/bankrablas\", true) == 0 || strcmp(cmd, \"/bankrablás\", true) == 0)
{
    if(IsPlayerConnected(playerid))
{
   if(KivanRabolva == 0)
   {
       if(PlayerToPoint(4.0, playerid, 2042.9617,-2634.6543,13.5469) && Rabol[playerid] == 0 || PlayerToPoint(4.0, playerid, 271.9797,191.2031,1007.7756) && Rabol[playerid] == 0)
      {
         if(PlayerInfo[playerid][pBomba] == 1)
         {
                        if(PlayerToPoint(10.0, playerid, 2042.9617,-2634.6543,13.5469))
                        {
                  SetTimer(\"bombarobban\",1000*30,0);
               }
               if(PlayerToPoint(20.0, playerid, 271.9797,191.2031,1007.7756))
               {
                   SetTimer(\"bombarobban2\", 1000*30,0)
               }
            SendClientMessage(playerid,COLOR_LIGHTRED,\"Bomba élesítve... Körülbelül 30 másodpercperc múlva robban! Robbanás után pakold tele a táskát pénzzel. (( /bankrablás a zsáknál ))\");
            new nev[32];
            GetPlayerName(playerid, nev, sizeof(nev));
            format(string, sizeof(string), \"* %s élesítette a bombát\", nev);
            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            SetPlayerChatBubble(playerid, \"élesítette a bombát\", COLOR_PURPLE, 80.0, 10000);
            new h,mi,s,y,m,d;
            getdate(y,m,d);
            gettime(h,mi,s);
            format(stringx,sizeof(stringx), \"[%d/%d/%d][%d:%d:%d] [bANKRABLÁS] %s élesítette a bombát\",y,m,d,h,mi,s,nev);
            LoOoG(stringx);
            if(PlayerInfo[playerid][szervTag] == 1 || PlayerInfo[playerid][szervLeader] == 1)
            {
            SzervUzi(1, COLOR_LIGHTRED, \"[bANDAÜZENET]: Elkezdtétek kirabolni a bankot!\");
            }
            else if(PlayerInfo[playerid][szervTag] == 2 || PlayerInfo[playerid][szervLeader] == 2)
            {
            SzervUzi(2, COLOR_LIGHTRED, \"[bANDAÜZENET]: Elkezdtétek kirabolni a bankot!\");
            }
            else if(PlayerInfo[playerid][szervTag] == 3 || PlayerInfo[playerid][szervLeader] == 3)
            {
            SzervUzi(3, COLOR_LIGHTRED, \"[bANDAÜZENET]: Elkezdtétek kirabolni a bankot!\");
            }
            SendRadioMessage(1, COLOR_LIGHTRED, \"[bANKI ALKALMAZOTT]: Segítség! Fegyveresek betörtek és rabolják a bankot! Siessenek!\");
            SendRadioMessage(1, COLOR_LIGHTRED, \"[KÖZPONT]: Minden egységnek!! BlueBerry-ben bankrablás van folyamatban!\");
            SendRadioMessage(1, COLOR_LIGHTRED, \"[KÖZPONT]: Fegyveresen veszélyesek, feltehetõleg többen vannak! Mindenki óvatosan\");
            SendRadioMessage(1, COLOR_LIGHTRED, \"[RENDÕRSÉG]: Minden egységnek!! Kövessétek a rangidõs parancsait!\");
            SendRadioMessage(1, COLOR_LIGHTRED, \"[RANGIDÕS]: Vettem! Az akciót én vezetem. Bank környékét lezárni!\");
            SendRadioMessage(1, COLOR_LIGHTRED, \"[RANGIDÕS]: Parancsom nélkül nincs tüzelés, túszuk is lehet!\");
            SendRadioMessage(1, COLOR_LIGHTRED, \"[bANKI ALKALMAZOTT]: Kérem, segítsenek, nem akarok meghal...[A kapcsolat megszakadt]\");
            SendRadioMessage(1, COLOR_LIGHTRED, \"[RANGIDÕS]: Mindenkitõl a legjobbat várom! Rádión adom az utasításokat!\");
            PlayerInfo[playerid][pBomba] = 0;
            Rabol[playerid] = 1;
            GetPlayerName(playerid, sendername, sizeof(sendername));
              format(string, sizeof(string), \">> %s kirabolja a bankot <<\", sendername);
            SendAdminMessage(COLOR_ADMIN,string);
         }
         else
         {
             SendClientMessage(playerid,COLOR_GRAD2,\"Nincs bombád, amivel kirobbanthatnád az ajtót!\");
         }
   }
      else if(PlayerToPoint(4.0, playerid, 2040.5339,-2646.2295,13.5469) || PlayerToPoint(4.0, playerid, 3974.6821,-1909.9989,1026.5844))
   {
       if(Rabol[playerid] == 1 || Rabol[playerid] == 0)
       {
          Rabol[playerid] = 2;
          if(PlayerInfo[playerid][szervTag] == 1 || PlayerInfo[playerid][szervLeader] == 1)
         {
         SzervUzi(1, COLOR_LIGHTRED, \"[bANDAÜZENET]: Elkezdtétek pakolni a pénzt! (( 2 perc ))\");
         }
         else if(PlayerInfo[playerid][szervTag] == 2 || PlayerInfo[playerid][szervLeader] == 2)
         {
         SzervUzi(2, COLOR_LIGHTRED, \"[bANDAÜZENET]: Elkezdtétek pakolni a pénzt! (( 2 perc ))\");
         }
         else if(PlayerInfo[playerid][szervTag] == 3 || PlayerInfo[playerid][szervLeader] == 3)
         {
         SzervUzi(3, COLOR_LIGHTRED, \"[bANDAÜZENET]: Elkezdtétek pakolni a pénzt! (( 2 perc ))\");
         }
         SendClientMessage(playerid,COLOR_LIGHTRED,\"Elkezdted pakolni a pénzt... Körülbelül 2 perc míg bepakolsz...\");
         RobTimer[playerid] = SetTimerEx(\"elegvolt\", 1000*60*2, false, \"i\", playerid);
         TogglePlayerControllable(playerid, 0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         ApplyAnimation(playerid, \"BOMBER\",\"BOM_Plant_Loop\",4.0,1,0,0,1,0);
         new nev[32];
         GetPlayerName(playerid, nev, sizeof(nev));
         format(string, sizeof(string), \"* %s elkezdte pakolni a pénzt a táskába\", nev);
         ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
         SetPlayerChatBubble(playerid, \"elkezdte pakolni a pénzt a táskába\", COLOR_PURPLE, 80.0, 10000);
      }
      else if(Rabol[playerid] == 2)
      {
          Rabol[playerid] = 0;
         ClearAnimations(playerid);
         TogglePlayerControllable(playerid, 1);
         KillTimer(RobTimer[playerid]);
      }
   }
   }
   else SendClientMessage(playerid,COLOR_GRAD2,\"Nemrég rabolták ki a bankot!\");
}
return 1;
}

 
Ezt a parancsot szeretném úgy megcsinálni hogy ne tudják floodolni. Tehát ha egyszer beírja a játékos akkor elkezdi rabolni a bankot, de ha még1x beírja akkor ne rabolja újra hanem azt írja neki hogy: \"Már rablod a bankot\" vagy valami hasonlót.
Remélem tudtok nekem segíteni.! Elõre is köszönöm.!
Cím: Rablás "Timer" Segítség
Írta: justrics - 2012. november 19. - 14:00:27
Parancsolj én magamnál így oldottam meg az atm rablást remélem segít.
 

forward atmrablas(playerid);
public atmrablas(playerid)
{
SendClientMessage(playerid,NARANCS,\"Most már újra rabolhatsz!\");
    rabolhato[playerid] = 0;
return 1;
}
CMD:atmrabol(playerid,params[])
{
if(GetPlayerTeam(playerid) == Rendor || GetPlayerTeam(playerid) == Tuzolto || GetPlayerTeam(playerid) == Mentos)
{
SendClientMessage(playerid,NARANCS,\"Te legális frakcióban vagy nem rabolhatsz!\");
return 1;
}
if(rabolhato[playerid] == 1) //nem rabolható
{
   SendClientMessage(playerid,ZOLD,\"Te már raboltál!\");
   SendClientMessage(playerid,ZOLD,\"Próbálkozz késõbb!\");
}
if(rabolhato[playerid] == 0) //rabolható
       {
   if(IsPlayerInRangeOfPoint(playerid,2.0,1495.5366,-1749.8984,15.4453) || IsPlayerInRangeOfPoint(playerid,2.0,1304.4009,-1367.9572,13.5403) || IsPlayerInRangeOfPoint(playerid,2.0,2043.1364,-1411.9291,17.1708) ||
   IsPlayerInRangeOfPoint(playerid,2.0,1495.5247,-1022.8626,23.8115) || IsPlayerInRangeOfPoint(playerid,2.0,1172.8624,-1328.1230,15.3996))
   {
          SendClientMessage(playerid,CSARGA, \"Feltörted az ATM-et szedd össze a pénzt és fuss!\");
          //TogglePlayerControllable(playerid, 0);
          SendClientMessageToAll(PIROS,\"FIGYELEM: Kirabolták az egyik ATM-et!\");
          rabolhato[playerid] = 1; //itt már nem rabolható
          SetTimerEx(\"atmrablas\", 300000,0,\"i\",playerid); //5perces vissza számlálás
          new randomszam = (random(20000)+10000);
      GivePlayerMoney(playerid,randomszam);
          SetPlayerWantedLevel(playerid, GetPlayerWantedLevel(playerid) + 2);
          SetPlayerScore(playerid,GetPlayerScore(playerid)+2);
          SetPlayerColor(playerid, PIROS);
      }
   else
      {
      SendClientMessage(playerid,PIROS, \"Nem vagy atm közelében!\");
   }
return 1;
}
return 1;
}