Szerző Téma: /börtön parancs probléma  (Megtekintve 1341 alkalommal)

/börtön parancs probléma
« Dátum: 2014. február 04. - 15:13:44 »
0 Show voters
Üdvözlök Mindenkit!
Van egy /börtön parancsom és hát eddig úgy volt hogy, csak rendõr csukhat le és maximálisan 3000 másodpercre lehetett. Nos nekem viszont van másik 2 rendvédelmi szervezetem és megírtam hogy, a másik két szervezet mennyire tudjon lecsukni milyen rangon.  Megemeltem a 3000 másodpercet 8000 másodpercre. viszont nekem az a gondom hogy valamiért egyik szervezet/frakció se tudd börtönbe csukni mert valamiért elkeveri az else függvényeket. A pawno semmi féle hibát nem jelez. Ebben kérném a segítségeteket! Mindenkinek köszönöm a segítséget elõre is és elnézést ha rossz helyre nyitottam meg a témát!
kódrészlet:
 
   if(strcmp(cmd, \"/börtön\", true) == 0 || strcmp(cmd, \"/borton\", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
   tmp = strtok(cmdtext, idx);
   if(!strlen(tmp))
   {
      SendClientMessage(playerid, COLOR_LIGHTBLUE, \"BloueWard RPG: /börtön [idõtartam] [indok]\");
      return 1;
   }
   new time = strval(tmp);
   if(time < 30 || time > 8000)
   {
      SendClientMessage(playerid, COLOR_GRAD2, \"{FFFFFF}Információk:\");
      SendClientMessage(playerid, COLOR_GRAD2, \"{33CCFF}1. Nemzeti Nyomozó Iroda: {FFFFFF}Az idõtartam 30 másodperc és 8000 másodperc között legyen\");
      SendClientMessage(playerid, COLOR_GRAD2, \"{2641FE}2. Terorr Elhárítási Központ: {FFFFFF}Az idõtartam 30 másodperc és 6000 másodperc között legyen\");
      SendClientMessage(playerid, COLOR_GRAD2, \"{0000FF}3. Rendõrség: {FFFFFF}Az idõtartam 30 másodperc és 3000 másodperc között legyen\");
      return 1;
   }
   new suspect = GetClosestPlayer(playerid);
   new giveplayername[MAX_PLAYER_NAME];
   GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
   new length = strlen(cmdtext);
   while ((idx < length) && (cmdtext[idx] <= \' \'))
   {
   idx++;
   }
   new offset = idx;
   new result[64];
   while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
   {
   result[idx - offset] = cmdtext[idx];
   idx++;
   }
   result[idx - offset] = EOS;
   if(!strlen(result))
   {
   SendClientMessage(playerid, COLOR_LIGHTBLUE, \"BloueWard RPG: /börtön [idõtartam] [indok]\");
   return 1;
   }
   if(IsPlayerConnected(suspect))
   {
       if(PlayerToPoint(6.0, playerid, -1301.0054,2708.2629,50.1141))
       {
                if(GetDistanceBetweenPlayers(playerid,suspect) < 5)
                {
                    if(PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 6)
                    {   // Nemzeti Nyomozó Iroda
               if(PlayerInfo[playerid][pRank] == 1) if( time > 2000) { SendClientMessage(playerid, COLOR_GRAD2,\" Nyomozó rangal maximálisan 2000 mp-re tudod lecsukni!\"); return 1; } // Nyomozó
                  if(PlayerInfo[playerid][pRank] == 2) if( time > 3000) { SendClientMessage(playerid, COLOR_GRAD2,\" Ügynök rangal maximálisan 2500 mp-re tudod lecsukni!\"); return 1; } // Ügynök
                if(PlayerInfo[playerid][pRank] == 3) if( time > 4000) { SendClientMessage(playerid, COLOR_GRAD2,\" Fõnyomozó rangal maximálisan 3000 mp-re tudod lecsukni!\"); return 1; } // Fõnyomozó
               if(PlayerInfo[playerid][pRank] == 4) if( time > 5000) { SendClientMessage(playerid, COLOR_GRAD2,\" Különleges ügynök rangal maximálisan 4000 mp-re tudod lecsukni!\"); return 1; } // Különleges ügynök
               if(PlayerInfo[playerid][pRank] == 5) if( time > 6000) { SendClientMessage(playerid, COLOR_GRAD2,\" Fõfelügyelõ rangal maximálisan 6000 mp-re tudod lecsukni!\"); return 1; } // Fõfelügyelõ
               if(PlayerInfo[playerid][pRank] == 6) if( time > 7000) { SendClientMessage(playerid, COLOR_GRAD2,\" Igazgató-helyettes rangal maximálisan 7000 mp-re tudod lecsukni!\"); return 1; } // Igazgató-helyettes
               if(PlayerInfo[playerid][pRank] == 7) if( time > 8000) { SendClientMessage(playerid, COLOR_GRAD2,\" Igazgató rangal maximálisan 8000 mp-re tudod lecsukni!\"); return 1; } // Igazgató-helyettes
               if(PlayerInfo[playerid][szervLeader] == 4 || PlayerInfo[playerid][szervTag] == 4)
               {
                  // Terorr Elhárítási Központ
                          if(PlayerInfo[playerid][szervRang] == 1) if(time > 1000) { SendClientMessage(playerid, COLOR_GRAD2, \" Újonc rangal maximálisan 1000 mp-re tudod lecsukni!\"); return 1; } // Újonc
                      if(PlayerInfo[playerid][szervRang] == 2) if(time > 1300) { SendClientMessage(playerid, COLOR_GRAD2, \" Közlegény rangal maximálisan 1300 mp-re tudod lecsukni!\"); return 1; } // Közlegény
                   if(PlayerInfo[playerid][szervRang] == 3) if(time > 1500) { SendClientMessage(playerid, COLOR_GRAD2, \" Tiszt rangal maximálisan 1500 mp-re tudod lecsukni!\"); return 1; } // Tiszt
                   if(PlayerInfo[playerid][szervRang] == 4) if(time > 2000) { SendClientMessage(playerid, COLOR_GRAD2, \" Kommandós rangal maximálisan 2000 mp-re tudod lecsukni!\"); return 1; } // Kommandós
                   if(PlayerInfo[playerid][szervRang] == 5) if(time > 2500) { SendClientMessage(playerid, COLOR_GRAD2, \" Hadnagy rangal maximálisan 2500 mp-re tudod lecsukni!\"); return 1; } // Hadnagy
                      if(PlayerInfo[playerid][szervRang] == 6) if(time > 3000) { SendClientMessage(playerid, COLOR_GRAD2, \" FõHadnagy rangal maximálisan 3000 mp-re tudod lecsukni!\"); return 1; } // FõHadnagy
                   if(PlayerInfo[playerid][szervRang] == 7) if(time > 3500) { SendClientMessage(playerid, COLOR_GRAD2, \" Százados rangal maximálisan 3500 mp-re tudod lecsukni!\"); return 1; } // Százados
                   if(PlayerInfo[playerid][szervRang] == 8) if(time > 4500) { SendClientMessage(playerid, COLOR_GRAD2, \" Kapitány rangal maximálisan 4000 mp-re tudod lecsukni!\"); return 1; } // Kapitány
                  if(PlayerInfo[playerid][szervRang] == 9) if(time > 5000) { SendClientMessage(playerid, COLOR_GRAD2, \" MásodParancsnok rangal maximálisan 5000 mp-re tudod lecsukni!\"); return 1; } // MásodParancsnok
                  if(PlayerInfo[playerid][szervRang] == 10) if(time > 6000) { SendClientMessage(playerid, COLOR_GRAD2, \" Parancsnok rangal maximálisan 6000 mp-re tudod lecsukni!\"); return 1; } // Parancsnok
                  if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1)
                  {
                     // Rendõrség
                     if(PlayerInfo[playerid][pRank] == 1) if(time > 500) { SendClientMessage(playerid, COLOR_GRAD2, \"Õrmester rangal maximálisan 500 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 2) if(time > 600) { SendClientMessage(playerid, COLOR_GRAD2, \"Tõrzsõrmester rangal maximálisan 600 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 3) if(time > 700) { SendClientMessage(playerid, COLOR_GRAD2, \"Fõtõrzsõrmester rangal maximálisan 700 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 4) if(time > 800) { SendClientMessage(playerid, COLOR_GRAD2, \"Zászlós rangal maximálisan 800 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 5) if(time > 900) { SendClientMessage(playerid, COLOR_GRAD2, \"Tõrzszászlós rangal maximálisan 900 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 6) if(time > 1000) { SendClientMessage(playerid, COLOR_GRAD2, \"Fõtõrzszászlós rangal maximálisan 1000 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 7) if(time > 1200) { SendClientMessage(playerid, COLOR_GRAD2, \"Hadnagy rangal maximálisan 1200 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 8) if(time > 1400) { SendClientMessage(playerid, COLOR_GRAD2, \"Fõhadnagy rangal maximálisan 1400 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 9) if(time > 1800) { SendClientMessage(playerid, COLOR_GRAD2, \"Százados rangal maximálisan 1800 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 10) if(time > 2000) { SendClientMessage(playerid, COLOR_GRAD2, \"Õrnagy rangal maximálisan 2000 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 11) if(time > 2300) { SendClientMessage(playerid, COLOR_GRAD2, \"Alezredes rangal maximálisan 2300 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 12) if(time > 2600) { SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes rangal maximálisan 2600 mp-re tudod lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 13) if(time > 3000) { SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 14) if(time > 3000) { SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); return 1; }
                     if(PlayerInfo[playerid][pRank] == 15) if(time > 3000) { SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); return 1; }
                     SafeResetPlayerWeapons(suspect);
                     new nev[32];
                     GetPlayerName(playerid, nev, sizeof(nev));
                     format(stringx, sizeof(stringx), \"* %s lecsukott téged %d másodpercre | Oka: %s\", nev, time,result);
                     SendClientMessage(suspect, COLOR_LIGHTBLUE, stringx);
                     PlayerInfo[playerid][XP] += 100;
                     PlayerInfo[playerid][Penz] += 5000;
                     SafeGivePlayerMoney(playerid, 5000);
                     varoskassza -= 5000;
                     format(stringx, sizeof(stringx), \"Lecsuktad %s %d másodpercre! Kaptál 100 XP-t és 5000Ft prémiúmot!\", rag(giveplayername,3), time);
                     SendClientMessage(playerid, COLOR_LIGHTBLUE, stringx);
                     format(stringx, sizeof(stringx),\"<< %s lecsukta %s %d másodpercre | Oka: %s >>\", nev, rag(giveplayername,3), time,result);
                     ABroadCast(COLOR_ADMIN,stringx,2);
                     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][NNI/ TEK/ Rendõr] %s rendõr lecsukta %s %d másodpercre | Oka: %s\",y,m,d,h,mi,s, nev, rag(giveplayername,3), time,result);
                     LoOoG(stringx);
                     if(PlayerToPoint(6.0, playerid, -1301.0054,2708.2629,50.1141)) SetPlayerVirtualWorld(suspect,0);
                     new randomj;
                     randomj = random(sizeof(RandomJailSpawn));
                     SetPlayerPos(suspect, RandomJailSpawn[randomj][0], RandomJailSpawn[randomj][1], RandomJailSpawn[randomj][2]);
                     SetPlayerInterior(suspect, 10);
                     PlayerInfo[suspect][pJailTime] = time;
                     PlayerInfo[suspect][pJailed] = 3;
                     PlayerCuffed[suspect] = 0;
                     PlayerCuffedTime[suspect] = 0;
                     TogglePlayerControllable(suspect,1);
                     ClearAnimations(giveplayerid);
                  }
                  else
                  {
                     SendClientMessage(playerid, COLOR_GRAD2,\"Nem Vagy Rendõr!\");
                  }
               }
               else
               {
                      SendClientMessage(playerid, COLOR_GRAD2,\"Nem Vagy A Terorr Elhárítás Központ Tagja!\");
               }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GRAD2, \"Nem Vagy A Nemzeti Nyomozó Iroda Tagja!\");
            }
         }
      }
      else SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy a rendõrség bõrtõn oldali bejáratánál!\");
   }
   else
   {
         SendClientMessage(playerid, COLOR_GREY, \"Nincs senki a közelben.\");
      return 1;
   }
}
return 1;
}

Nem elérhető Lucio

  • 232
    • Profil megtekintése
/börtön parancs probléma
« Válasz #1 Dátum: 2014. február 04. - 19:17:23 »
0 Show voters
Nos elõször is ez itt elég nagy hülyeség:
 
 if(time < 30 || time > 8000)
   {
    SendClientMessage(playerid, COLOR_GRAD2, \"{FFFFFF}Információk:\");
    SendClientMessage(playerid, COLOR_GRAD2, \"{33CCFF}1. Nemzeti Nyomozó Iroda: {FFFFFF}Az idõtartam 30 másodperc és 8000 másodperc között legyen\");
    SendClientMessage(playerid, COLOR_GRAD2, \"{2641FE}2. Terorr Elhárítási Központ: {FFFFFF}Az idõtartam 30 másodperc és 6000 másodperc között legyen\");
    SendClientMessage(playerid, COLOR_GRAD2, \"{0000FF}3. Rendõrség: {FFFFFF}Az idõtartam 30 másodperc és 3000 másodperc között legyen\");
    return 1;
   }

 
Ezt így kéne megoldani:
 
 if(time < 30 || time > 8000)
{
    if(PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 6)
return SendClientMessage(playerid, COLOR_GRAD2, \"{33CCFF}1. Nemzeti Nyomozó Iroda: {FFFFFF}Az idõtartam 30 másodperc és 8000 másodperc között legyen\");
else if(PlayerInfo[playerid][pLeader] == 4 || PlayerInfo[playerid][pMember] == 4)
return SendClientMessage(playerid, COLOR_GRAD2, \"{2641FE}2. Terorr Elhárítási Központ: {FFFFFF}Az idõtartam 30 másodperc és 6000 másodperc között legyen\");
else if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1)
return SendClientMessage(playerid, COLOR_GRAD2, \"{0000FF}3. Rendõrség: {FFFFFF}Az idõtartam 30 másodperc és 3000 másodperc között legyen\");
}

 
Tehát. Te azt írtad le, hogy bármilyen frakcióba van írassa ki mind a 3 szöveget. Így most csak a megfelelõ embernek írja ki, aki abba a frakcióba tartozik.
A rangokat pedig switchel oldanám meg. Egy példa:
 
switch(PlayerInfo[playerid][pRank])
{
case 1: if(time > 2000) return SendClientMessage(playerid, COLOR_GRAD2,\" Nyomozó rangal maximálisan 2000 mp-re tudod lecsukni!\");
//És így tovább a többi ranggal
}

 
És látom, hogy általában return 1-et használsz, ha nem akarod, hogy tovább menjen a kód. Ezt elég azzal is(ha csak egy függvény, ha több akkor a return 1-et kell használni), hogy return SendClientMessage(playerid, -1, \"Ez egy visszatérési szöveg\"); és így nem megy tovább a kód, hanem kiírja.
UI.: Viszont, ha if-eknél akarsz maradni az elõbbihez akkor ajánlom így:
 
if(PlayerInfo[playerid][pRank] == 1 && time > 2000) {  return SendClientMessage(playerid, COLOR_GRAD2,\" Nyomozó rangal maximálisan 2000 mp-re tudod lecsukni!\"); } // Nyomozó
else if(PlayerInfo[playerid][pRank] == 2 && time > 3000) {  return SendClientMessage(playerid, COLOR_GRAD2,\" Nyomozó rangal maximálisan 3000 mp-re tudod lecsukni!\");

 
Ilyenkor szokott fontos és hasznos lenni a &&(és) és a ||(vagy) jel az if-eknél.
« Utoljára szerkesztve: 2014. február 04. - 19:20:45 írta Lucio »

/börtön parancs probléma
« Válasz #2 Dátum: 2014. február 05. - 13:50:25 »
0 Show voters
Ez eddig oké viszont valahol ott a baj ahol a frakciók / szervek lecsukása van. Sejtésem szerint rosszul van rendezve a függvény és ezért buggol. Viszont nincs rá ötletem hogy, lehetne ezt jól rendezni mert, 3 frakció/szerv van és úgy akarom hogy else-vel tagadja amit lent láttok is! A segítségeket elõre is köszönöm szépen!
 
                       if(PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 6)
                    {   // Nemzeti Nyomozó Iroda
               if(PlayerInfo[playerid][pRank] == 1) if( time > 2000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Nyomozó rangal maximálisan 2000 mp-re tudod lecsukni!\"); } // Nyomozó
                  if(PlayerInfo[playerid][pRank] == 2) if( time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Ügynök rangal maximálisan 2500 mp-re tudod lecsukni!\"); } // Ügynök
                if(PlayerInfo[playerid][pRank] == 3) if( time > 4000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Fõnyomozó rangal maximálisan 3000 mp-re tudod lecsukni!\"); } // Fõnyomozó
               if(PlayerInfo[playerid][pRank] == 4) if( time > 5000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Különleges ügynök rangal maximálisan 4000 mp-re tudod lecsukni!\"); } // Különleges ügynök
               if(PlayerInfo[playerid][pRank] == 5) if( time > 6000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Fõfelügyelõ rangal maximálisan 6000 mp-re tudod lecsukni!\"); } // Fõfelügyelõ
               if(PlayerInfo[playerid][pRank] == 6) if( time > 7000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Igazgató-helyettes rangal maximálisan 7000 mp-re tudod lecsukni!\"); } // Igazgató-helyettes
               if(PlayerInfo[playerid][pRank] == 7) if( time > 8000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Igazgató rangal maximálisan 8000 mp-re tudod lecsukni!\"); } // Igazgató-helyettes
               if(PlayerInfo[playerid][szervLeader] == 4 || PlayerInfo[playerid][szervTag] == 4)
               {
                  // Terorr Elhárítási Központ
                          if(PlayerInfo[playerid][szervRang] == 1) if(time > 1000) { return SendClientMessage(playerid, COLOR_GRAD2, \" Újonc rangal maximálisan 1000 mp-re tudod lecsukni!\"); } // Újonc
                      if(PlayerInfo[playerid][szervRang] == 2) if(time > 1300) { return SendClientMessage(playerid, COLOR_GRAD2, \" Közlegény rangal maximálisan 1300 mp-re tudod lecsukni!\"); } // Közlegény
                   if(PlayerInfo[playerid][szervRang] == 3) if(time > 1500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Tiszt rangal maximálisan 1500 mp-re tudod lecsukni!\"); } // Tiszt
                   if(PlayerInfo[playerid][szervRang] == 4) if(time > 2000) { return SendClientMessage(playerid, COLOR_GRAD2, \" Kommandós rangal maximálisan 2000 mp-re tudod lecsukni!\"); } // Kommandós
                   if(PlayerInfo[playerid][szervRang] == 5) if(time > 2500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Hadnagy rangal maximálisan 2500 mp-re tudod lecsukni!\"); } // Hadnagy
                      if(PlayerInfo[playerid][szervRang] == 6) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \" FõHadnagy rangal maximálisan 3000 mp-re tudod lecsukni!\"); } // FõHadnagy
                   if(PlayerInfo[playerid][szervRang] == 7) if(time > 3500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Százados rangal maximálisan 3500 mp-re tudod lecsukni!\"); } // Százados
                   if(PlayerInfo[playerid][szervRang] == 8) if(time > 4500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Kapitány rangal maximálisan 4000 mp-re tudod lecsukni!\"); } // Kapitány
                  if(PlayerInfo[playerid][szervRang] == 9) if(time > 5000) { return SendClientMessage(playerid, COLOR_GRAD2, \" MásodParancsnok rangal maximálisan 5000 mp-re tudod lecsukni!\"); } // MásodParancsnok
                  if(PlayerInfo[playerid][szervRang] == 10) if(time > 6000) { return SendClientMessage(playerid, COLOR_GRAD2, \" Parancsnok rangal maximálisan 6000 mp-re tudod lecsukni!\"); } // Parancsnok
                  if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1)
                  {
                     // Rendõrség
                     if(PlayerInfo[playerid][pRank] == 1) if(time > 500) { return SendClientMessage(playerid, COLOR_GRAD2, \"Õrmester rangal maximálisan 500 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 2) if(time > 600) { return SendClientMessage(playerid, COLOR_GRAD2, \"Tõrzsõrmester rangal maximálisan 600 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 3) if(time > 700) { return SendClientMessage(playerid, COLOR_GRAD2, \"Fõtõrzsõrmester rangal maximálisan 700 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 4) if(time > 800) { return SendClientMessage(playerid, COLOR_GRAD2, \"Zászlós rangal maximálisan 800 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 5) if(time > 900) { return SendClientMessage(playerid, COLOR_GRAD2, \"Tõrzszászlós rangal maximálisan 900 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 6) if(time > 1000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Fõtõrzszászlós rangal maximálisan 1000 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 7) if(time > 1200) { return SendClientMessage(playerid, COLOR_GRAD2, \"Hadnagy rangal maximálisan 1200 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 8) if(time > 1400) { return SendClientMessage(playerid, COLOR_GRAD2, \"Fõhadnagy rangal maximálisan 1400 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 9) if(time > 1800) { return SendClientMessage(playerid, COLOR_GRAD2, \"Százados rangal maximálisan 1800 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 10) if(time > 2000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Õrnagy rangal maximálisan 2000 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 11) if(time > 2300) { return SendClientMessage(playerid, COLOR_GRAD2, \"Alezredes rangal maximálisan 2300 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 12) if(time > 2600) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes rangal maximálisan 2600 mp-re tudod lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 13) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 14) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); }
                     if(PlayerInfo[playerid][pRank] == 15) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); }
                     SafeResetPlayerWeapons(suspect);
                     new nev[32];
                     GetPlayerName(playerid, nev, sizeof(nev));
                     format(stringx, sizeof(stringx), \"* %s lecsukott téged %d másodpercre | Oka: %s\", nev, time,result);
                     SendClientMessage(suspect, COLOR_LIGHTBLUE, stringx);
                     PlayerInfo[playerid][XP] += 100;
                     PlayerInfo[playerid][Penz] += 5000;
                     SafeGivePlayerMoney(playerid, 5000);
                     varoskassza -= 5000;
                     format(stringx, sizeof(stringx), \"Lecsuktad %s %d másodpercre! Kaptál 100 XP-t és 5000Ft prémiúmot!\", rag(giveplayername,3), time);
                     SendClientMessage(playerid, COLOR_LIGHTBLUE, stringx);
                     format(stringx, sizeof(stringx),\"<< %s lecsukta %s %d másodpercre | Oka: %s >>\", nev, rag(giveplayername,3), time,result);
                     ABroadCast(COLOR_ADMIN,stringx,2);
                     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][NNI/ TEK/ Rendõr] %s rendõr lecsukta %s %d másodpercre | Oka: %s\",y,m,d,h,mi,s, nev, rag(giveplayername,3), time,result);
                     LoOoG(stringx);
                     if(PlayerToPoint(6.0, playerid, -1301.0054,2708.2629,50.1141)) SetPlayerVirtualWorld(suspect,0);
                     new randomj;
                     randomj = random(sizeof(RandomJailSpawn));
                     SetPlayerPos(suspect, RandomJailSpawn[randomj][0], RandomJailSpawn[randomj][1], RandomJailSpawn[randomj][2]);
                     SetPlayerInterior(suspect, 10);
                     PlayerInfo[suspect][pJailTime] = time;
                     PlayerInfo[suspect][pJailed] = 3;
                     PlayerCuffed[suspect] = 0;
                     PlayerCuffedTime[suspect] = 0;
                     TogglePlayerControllable(suspect,1);
                     ClearAnimations(giveplayerid);
                  }
                  else
                  {
                     SendClientMessage(playerid, COLOR_GRAD2,\"Nem Vagy Rendõr!\");
                  }
               }
               else
               {
                      SendClientMessage(playerid, COLOR_GRAD2,\"Nem Vagy A Terorr Elhárítás Központ Tagja!\");
               }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GRAD2, \"Nem Vagy A Nemzeti Nyomozó Iroda Tagja!\");
            }
         }
      }
      else SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy a rendõrség bõrtõn oldali bejáratánál!\");
   }
   else
   {
         SendClientMessage(playerid, COLOR_GREY, \"Nincs senki a közelben.\");
      return 1;
   }
}
return 1;
}

Nem elérhető Lucio

  • 232
    • Profil megtekintése
/börtön parancs probléma
« Válasz #3 Dátum: 2014. február 05. - 15:39:57 »
+1 Show voters
Tessék, talán így. (Lehet kitöröltem zárásokat amik kellenének, majd ellenõrizd)
 
        if(PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 6)
{ // Nemzeti Nyomozó Iroda
   if(PlayerInfo[playerid][pRank] == 1 && time > 2000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Nyomozó rangal maximálisan 2000 mp-re tudod lecsukni!\"); } // Nyomozó
   if(PlayerInfo[playerid][pRank] == 2) if( time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Ügynök rangal maximálisan 2500 mp-re tudod lecsukni!\"); } // Ügynök
   if(PlayerInfo[playerid][pRank] == 3) if( time > 4000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Fõnyomozó rangal maximálisan 3000 mp-re tudod lecsukni!\"); } // Fõnyomozó
   if(PlayerInfo[playerid][pRank] == 4) if( time > 5000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Különleges ügynök rangal maximálisan 4000 mp-re tudod lecsukni!\"); } // Különleges ügynök
   if(PlayerInfo[playerid][pRank] == 5) if( time > 6000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Fõfelügyelõ rangal maximálisan 6000 mp-re tudod lecsukni!\"); } // Fõfelügyelõ
   if(PlayerInfo[playerid][pRank] == 6) if( time > 7000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Igazgató-helyettes rangal maximálisan 7000 mp-re tudod lecsukni!\"); } // Igazgató-helyettes
   if(PlayerInfo[playerid][pRank] == 7) if( time > 8000) { return SendClientMessage(playerid, COLOR_GRAD2,\" Igazgató rangal maximálisan 8000 mp-re tudod lecsukni!\"); } // Igazgató-helyettes
}
else if(PlayerInfo[playerid][szervLeader] == 4 || PlayerInfo[playerid][szervTag] == 4)
{
        // Terorr Elhárítási Központ
     if(PlayerInfo[playerid][szervRang] == 1 && time > 1000) { return SendClientMessage(playerid, COLOR_GRAD2, \" Újonc rangal maximálisan 1000 mp-re tudod lecsukni!\"); } // Újonc
     if(PlayerInfo[playerid][szervRang] == 2) if(time > 1300) { return SendClientMessage(playerid, COLOR_GRAD2, \" Közlegény rangal maximálisan 1300 mp-re tudod lecsukni!\"); } // Közlegény
     if(PlayerInfo[playerid][szervRang] == 3) if(time > 1500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Tiszt rangal maximálisan 1500 mp-re tudod lecsukni!\"); } // Tiszt
     if(PlayerInfo[playerid][szervRang] == 4) if(time > 2000) { return SendClientMessage(playerid, COLOR_GRAD2, \" Kommandós rangal maximálisan 2000 mp-re tudod lecsukni!\"); } // Kommandós
     if(PlayerInfo[playerid][szervRang] == 5) if(time > 2500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Hadnagy rangal maximálisan 2500 mp-re tudod lecsukni!\"); } // Hadnagy
     if(PlayerInfo[playerid][szervRang] == 6) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \" FõHadnagy rangal maximálisan 3000 mp-re tudod lecsukni!\"); } // FõHadnagy
     if(PlayerInfo[playerid][szervRang] == 7) if(time > 3500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Százados rangal maximálisan 3500 mp-re tudod lecsukni!\"); } // Százados
     if(PlayerInfo[playerid][szervRang] == 8) if(time > 4500) { return SendClientMessage(playerid, COLOR_GRAD2, \" Kapitány rangal maximálisan 4000 mp-re tudod lecsukni!\"); } // Kapitány
     if(PlayerInfo[playerid][szervRang] == 9) if(time > 5000) { return SendClientMessage(playerid, COLOR_GRAD2, \" MásodParancsnok rangal maximálisan 5000 mp-re tudod lecsukni!\"); } // MásodParancsnok
              if(PlayerInfo[playerid][szervRang] == 10) if(time > 6000) { return SendClientMessage(playerid, COLOR_GRAD2, \" Parancsnok rangal maximálisan 6000 mp-re tudod lecsukni!\"); } // Parancsnok
}
        else if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1)
        {
         // Rendõrség
         if(PlayerInfo[playerid][pRank] == 1 && time > 500) { return SendClientMessage(playerid, COLOR_GRAD2, \"Õrmester rangal maximálisan 500 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 2) if(time > 600) { return SendClientMessage(playerid, COLOR_GRAD2, \"Tõrzsõrmester rangal maximálisan 600 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 3) if(time > 700) { return SendClientMessage(playerid, COLOR_GRAD2, \"Fõtõrzsõrmester rangal maximálisan 700 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 4) if(time > 800) { return SendClientMessage(playerid, COLOR_GRAD2, \"Zászlós rangal maximálisan 800 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 5) if(time > 900) { return SendClientMessage(playerid, COLOR_GRAD2, \"Tõrzszászlós rangal maximálisan 900 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 6) if(time > 1000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Fõtõrzszászlós rangal maximálisan 1000 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 7) if(time > 1200) { return SendClientMessage(playerid, COLOR_GRAD2, \"Hadnagy rangal maximálisan 1200 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 8) if(time > 1400) { return SendClientMessage(playerid, COLOR_GRAD2, \"Fõhadnagy rangal maximálisan 1400 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 9) if(time > 1800) { return SendClientMessage(playerid, COLOR_GRAD2, \"Százados rangal maximálisan 1800 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 10) if(time > 2000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Õrnagy rangal maximálisan 2000 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 11) if(time > 2300) { return SendClientMessage(playerid, COLOR_GRAD2, \"Alezredes rangal maximálisan 2300 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 12) if(time > 2600) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes rangal maximálisan 2600 mp-re tudod lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 13) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 14) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); }
         if(PlayerInfo[playerid][pRank] == 15) if(time > 3000) { return SendClientMessage(playerid, COLOR_GRAD2, \"Ezredes feletti rangal maximálisan 3000 mp-re tudsz lecsukni!\"); }
}
else return SendClientMessage(playerid, -1, \"Nem vagy rendvédelmi tag!\");
         SafeResetPlayerWeapons(suspect);
         new nev[32];
         GetPlayerName(playerid, nev, sizeof(nev));
         format(stringx, sizeof(stringx), \"* %s lecsukott téged %d másodpercre | Oka: %s\", nev, time,result);
         SendClientMessage(suspect, COLOR_LIGHTBLUE, stringx);
         PlayerInfo[playerid][XP] += 100;
         PlayerInfo[playerid][Penz] += 5000;
         SafeGivePlayerMoney(playerid, 5000);
         varoskassza -= 5000;
         format(stringx, sizeof(stringx), \"Lecsuktad %s %d másodpercre! Kaptál 100 XP-t és 5000Ft prémiúmot!\", rag(giveplayername,3), time);
         SendClientMessage(playerid, COLOR_LIGHTBLUE, stringx);
         format(stringx, sizeof(stringx),\"<< %s lecsukta %s %d másodpercre | Oka: %s >>\", nev, rag(giveplayername,3), time,result);
         ABroadCast(COLOR_ADMIN,stringx,2);
         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][NNI/ TEK/ Rendõr] %s rendõr lecsukta %s %d másodpercre | Oka: %s\",y,m,d,h,mi,s, nev, rag(giveplayername,3), time,result);
         LoOoG(stringx);
         if(PlayerToPoint(6.0, playerid, -1301.0054,2708.2629,50.1141)) SetPlayerVirtualWorld(suspect,0);
         new randomj;
         randomj = random(sizeof(RandomJailSpawn));
         SetPlayerPos(suspect, RandomJailSpawn[randomj][0], RandomJailSpawn[randomj][1], RandomJailSpawn[randomj][2]);
         SetPlayerInterior(suspect, 10);
         PlayerInfo[suspect][pJailTime] = time;
         PlayerInfo[suspect][pJailed] = 3;
         PlayerCuffed[suspect] = 0;
         PlayerCuffedTime[suspect] = 0;
         TogglePlayerControllable(suspect,1);
         ClearAnimations(giveplayerid);
}
    else SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy a rendõrség bõrtõn oldali bejáratánál!\");
   }
   else
   {
       SendClientMessage(playerid, COLOR_GREY, \"Nincs senki a közelben.\");
    return 1;
   }
  }
  return 1;
}

/börtön parancs probléma
« Válasz #4 Dátum: 2014. február 05. - 17:48:26 »
0 Show voters
Köszönöm! Viszont ha, már megnyitottam a témát úgyszint ehhez a parancshoz tartozik a dolog van egy ilyen része a parancsnak

format(stringx, sizeof(stringx),\"<< %s lecsukta %s %d másodpercre | Oka: %s >>\", nev, rag(giveplayername,3), time,result);

 
ebbe bugol az egyik névlekérés mégpedig a giveplayername. Ezt hogy lehetne javítani?
itt a névlekérés sorai is!
 
         new giveplayername[MAX_PLAYER_NAME];
   GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));

 
Ezzel az a problémám hogy, mikor beírom a parancsot és lecsukja az elsõnél ki írja a játékos nevét aki lecsukta tökéletesen viszont a második %s-nél mindig id 0-nak a nevét írja! Elõre Köszönöm A Segítséget!

Nem elérhető Lucio

  • 232
    • Profil megtekintése
/börtön parancs probléma
« Válasz #5 Dátum: 2014. február 05. - 19:29:55 »
+1 Show voters
Próbáld meg, hogy átírod erre a névlekérést:
 
GetPlayerName(suspect, giveplayername, sizeof(giveplayername));

 
Mivel a suspect változóba belerakja a legközelebbi játékos ID-jét vagyis akit le fog csukni, és annak az ID-nek kéred le a nevét.
Azért az ID 0-nak kérte le, mert a giveplayerid változó értéke 0 volt, mivel nem abba a változóba mentette akit le akarsz csukni

/börtön parancs probléma
« Válasz #6 Dátum: 2014. február 07. - 00:55:27 »
0 Show voters
Lucio nagyon szépen köszönöm a segítséget és a magyarázatot sokat tanultam belõle! Zárok és profi vagy :D

Nem elérhető Lucio

  • 232
    • Profil megtekintése
/börtön parancs probléma
« Válasz #7 Dátum: 2014. február 07. - 09:22:45 »
0 Show voters
Ugyan... Semmiség :D

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal