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: justrics - 2012. november 26. - 22:21:29

Cím: Most meg a lecsukás nem megy.
Írta: justrics - 2012. november 26. - 22:21:29
Nos gondok jönnek! :D Ismét a ti szakértelmeteket kérném! :)
Van ez a /lecsuk parancs ami nem mûködik jobban mondva mûködik de nem telézi a player, nem végzi a dolgait. Azért nincs vége mert ez csak a 3 wanted levelig van nem akartam lefoglalni az egész oldalt vele. :) Ha ebben tudtok ismét segíteni nagyon megköszönöm!
 

CMD:lecsuk(playerid,params[])
{
new pwl;
new rnd = random(sizeof(JailSpawnPoints));
new giveplayerid, Float:pos[3];
if(GetPlayerTeam(playerid) != Rendor) return SendClientMessage(playerid,PIROS,\"Nem vagy rendõr te nem csukhatsz le senkit!\");
if(sscanf(params,\"r\",giveplayerid)) return SendClientMessage(playerid,PIROS,\"Használat: /lecsuk [játékos id / névrészlet]\");
if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,PIROS,\"A játékos nincs csatlakozva nem tudod lecsukni.\");
if(GetPlayerTeam(giveplayerid) == Rendor || GetPlayerTeam(giveplayerid) == Tuzolto || GetPlayerTeam(giveplayerid) == Mentos) return SendClientMessage(playerid,PIROS,\"Mentõst,rendõrt,tûzoltót nem csukhatsz le!\");
if(GetPVarInt(giveplayerid, \"Bilincselt\") == 0) return SendClientMessage(playerid, PIROS, \"Elõbb meg kell bilincselned a játékost, hogy lecsukhasd.\");
if(IsPlayerInAnyVehicle(giveplayerid)) return SendClientMessage(playerid, PIROS, \"A játékos jármûben ül\");
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, PIROS, \"Te jármûben vagy így nem tudod elengedni!\");
if(GetPlayerWantedLevel(giveplayerid) <= 2) return SendClientMessage(playerid, PIROS, \"A játékost nem kell lecsukni, túl alacson a kõrözöttsége.\");
GetPlayerPos(giveplayerid, pos[0], pos[1], pos[2]);
if(!IsPlayerInRangeOfPoint(playerid, 2.0, pos[0], pos[1], pos[2])) return SendClientMessage(playerid, PIROS, \"A játékos nincs közeledben!\");
{
if(pwl == 3)
    {
        //ResetPlayerWeapons(giveplayerid);
      SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_NONE);
       SetPlayerScore(playerid,GetPlayerScore(playerid)+2);
       SetPlayerWantedLevel(giveplayerid,0);
       SetPlayerToTeamColour(giveplayerid);
       SetPVarInt(giveplayerid, \"Bilincselt\", 0); //átállítjuk a játékost nem bilincseltre
       SetTimerEx(\"jailtime\", 120000,0,\"i\",giveplayerid); //2 perc böri
       SetPlayerPos(giveplayerid,JailSpawnPoints[rnd][0],JailSpawnPoints[rnd][1],JailSpawnPoints[rnd][2]);
       SetPlayerInterior(giveplayerid,3);
       TogglePlayerControllable(giveplayerid, 1);
       SetPVarInt(giveplayerid, \"Jailed\", 1);
      return 1;
   }
Cím: Most meg a lecsukás nem megy.
Írta: Johnies00 - 2012. november 27. - 16:47:37
Nem tudom tesztelted-e mert elméletileg errort kéne rá írnia mert hiányzik 2 } jel, próbáld meg úgy hogy az rnd változó Float legyen, elvileg így jónak kell lennie:
 

CMD:lecsuk(playerid,params[])
{
new pwl;
new Float:rnd = random(sizeof(JailSpawnPoints));
new giveplayerid, Float:pos[3];
if(GetPlayerTeam(playerid) != Rendor) return SendClientMessage(playerid,PIROS,\"Nem vagy rendõr te nem csukhatsz le senkit!\");
if(sscanf(params,\"r\",giveplayerid)) return SendClientMessage(playerid,PIROS,\"Használat: /lecsuk [játékos id / névrészlet]\");
if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,PIROS,\"A játékos nincs csatlakozva nem tudod lecsukni.\");
if(GetPlayerTeam(giveplayerid) == Rendor || GetPlayerTeam(giveplayerid) == Tuzolto || GetPlayerTeam(giveplayerid) == Mentos) return SendClientMessage(playerid,PIROS,\"Mentõst,rendõrt,tûzoltót nem csukhatsz le!\");
if(GetPVarInt(giveplayerid, \"Bilincselt\") == 0) return SendClientMessage(playerid, PIROS, \"Elõbb meg kell bilincselned a játékost, hogy lecsukhasd.\");
if(IsPlayerInAnyVehicle(giveplayerid)) return SendClientMessage(playerid, PIROS, \"A játékos jármûben ül\");
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, PIROS, \"Te jármûben vagy így nem tudod elengedni!\");
if(GetPlayerWantedLevel(giveplayerid) <= 2) return SendClientMessage(playerid, PIROS, \"A játékost nem kell lecsukni, túl alacson a kõrözöttsége.\");
GetPlayerPos(giveplayerid, pos[0], pos[1], pos[2]);
if(!IsPlayerInRangeOfPoint(playerid, 2.0, pos[0], pos[1], pos[2])) return SendClientMessage(playerid, PIROS, \"A játékos nincs közeledben!\");
{
if(pwl == 3)
{
//ResetPlayerWeapons(giveplayerid);
SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_NONE);
SetPlayerScore(playerid,GetPlayerScore(playerid)+2);
SetPlayerWantedLevel(giveplayerid,0);
SetPlayerToTeamColour(giveplayerid);
SetPVarInt(giveplayerid, \"Bilincselt\", 0); //átállítjuk a játékost nem bilincseltre
SetTimerEx(\"jailtime\", 120000,0,\"i\",giveplayerid); //2 perc böri
SetPlayerPos(giveplayerid,JailSpawnPoints[rnd][0],JailSpawnPoints[rnd][1],JailSpawnPoints[rnd][2]);
SetPlayerInterior(giveplayerid,3);
TogglePlayerControllable(giveplayerid, 1);
SetPVarInt(giveplayerid, \"Jailed\", 1);
}
}
return 1;
}
Cím: Most meg a lecsukás nem megy.
Írta: justrics - 2012. november 27. - 17:24:42
Természetesen hiányzik ahogyan leírtam de ezalatt van még pwl 4,5,6 csak azokat nem másoltam be mert sok meg ugyan az van benne. Azonban amit te írtál nekem arra tag mismach hiba van. Ez rendesen mûködött nem volt gond a parancsal de most nem jó valamiért. Azaz ismétlem úgy jó hogy az if-eket ellenõrzi de a setplayer post mer a if pwl alatti részeket nem hajtja végre.
Cím: Most meg a lecsukás nem megy.
Írta: Rupert - 2012. november 27. - 17:44:52

CMD:lecsuk(playerid,params[])
{
new pwl;
new rnd = random(sizeof(JailSpawnPoints));
new giveplayerid, Float:pos[3];
if(GetPlayerTeam(playerid) != Rendor) return SendClientMessage(playerid,PIROS,\"Nem vagy rendõr te nem csukhatsz le senkit!\");
if(sscanf(params,\"r\",giveplayerid)) return SendClientMessage(playerid,PIROS,\"Használat: /lecsuk [játékos id / névrészlet]\");
if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,PIROS,\"A játékos nincs csatlakozva nem tudod lecsukni.\");
if(GetPlayerTeam(giveplayerid) == Rendor || GetPlayerTeam(giveplayerid) == Tuzolto || GetPlayerTeam(giveplayerid) == Mentos) return SendClientMessage(playerid,PIROS,\"Mentõst,rendõrt,tûzoltót nem csukhatsz le!\");
if(GetPVarInt(giveplayerid, \"Bilincselt\") == 0) return SendClientMessage(playerid, PIROS, \"Elõbb meg kell bilincselned a játékost, hogy lecsukhasd.\");
if(IsPlayerInAnyVehicle(giveplayerid)) return SendClientMessage(playerid, PIROS, \"A játékos jármûben ül\");
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, PIROS, \"Te jármûben vagy így nem tudod elengedni!\");
if(GetPlayerWantedLevel(giveplayerid) <= 2) return SendClientMessage(playerid, PIROS, \"A játékost nem kell lecsukni, túl alacson a kõrözöttsége.\");
GetPlayerPos(giveplayerid, pos[0], pos[1], pos[2]);
if(!IsPlayerInRangeOfPoint(playerid, 2.0, pos[0], pos[1], pos[2])) return SendClientMessage(playerid, PIROS, \"A játékos nincs közeledben!\");
if(pwl == 3)
    {
        //ResetPlayerWeapons(giveplayerid);
      SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_NONE);
       SetPlayerScore(playerid,GetPlayerScore(playerid)+2);
       SetPlayerWantedLevel(giveplayerid,0);
       SetPlayerToTeamColour(giveplayerid);
       SetPVarInt(giveplayerid, \"Bilincselt\", 0); //átállítjuk a játékost nem bilincseltre
       SetTimerEx(\"jailtime\", 120000,0,\"i\",giveplayerid); //2 perc böri
       SetPlayerPos(giveplayerid,JailSpawnPoints[rnd][0],JailSpawnPoints[rnd][1],JailSpawnPoints[rnd][2]);
       SetPlayerInterior(giveplayerid,3);
       TogglePlayerControllable(giveplayerid, 1);
       SetPVarInt(giveplayerid, \"Jailed\", 1); }
      return 1;
   }