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: tudvari - 2011. december 30. - 20:30:35

Cím: Kidobás az Autóból
Írta: tudvari - 2011. december 30. - 20:30:35
Megakartam azt csinálni,hogy ha a játékos úttisztító,akor kidobja az úttisztítóból,de nem megy:
[pawn]
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
TextDrawShowForPlayer(playerid, muszerfal[playerid]);
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 574)
{
   if (JatekosInfo[playerid][Munka] != 1)
   {
       SendClientMessage(playerid, HIBA, \"Nem vagy úttisztító!\");
       RemovePlayerFromVehicle(playerid);
       return 1;
   }
   else
   {
       SendClientMessage(playerid, VKEK, \"Ahhoz,hogy elkezd a munkát be kell írnod : /tisztít\");
       return 1;
   }
}
return 1;
}
[/pawn]
De nem csinál semmit,remélem tud valaki segíteni :D
Cím: Kidobás az Autóból
Írta: lackos888 - 2011. december 30. - 21:09:26
Csõ, ne kérd le szerintem újra a kocsit, csináld így(Rem jó):
[pawn]
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
TextDrawShowForPlayer(playerid, muszerfal[playerid]);
if(GetVehicleModel(vehicleid) == 574)
{
   if (JatekosInfo[playerid][Munka] != 1)
   {
       SendClientMessage(playerid, HIBA, \"Nem vagy úttisztító!\");
       RemovePlayerFromVehicle(playerid);
   }
   else
   {
       SendClientMessage(playerid, VKEK, \"Ahhoz,hogy elkezd a munkát be kell írnod : /tisztít\");
   }
}
return 1;
}[/pawn]
Cím: Kidobás az Autóból
Írta: staubka - 2011. december 30. - 21:11:23
[pawn]public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
TextDrawShowForPlayer(playerid, muszerfal[playerid]);
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 574)
{
   if (JatekosInfo[playerid][Munka] != 1)
   {
       SendClientMessage(playerid, HIBA, \"Nem vagy úttisztító!\");
       RemovePlayerFromVehicle(playerid);
       SetPlayerPos(playerid,x,y,z+3);
       return 1;
   }
   else
   {
       SendClientMessage(playerid, VKEK, \"Ahhoz,hogy elkezd a munkát be kell írnod : /tisztít\");
       return 1;
   }
}
return 1;
}[/pawn]
Ez nem az a megoldás hogy kifog menni a jármûbõl mintha F-el kiszállna, az nemtom miért nem mûködik, viszont így garantáltan kidobja. :D
Cím: Kidobás az Autóból
Írta: tudvari - 2011. december 30. - 21:18:23
Nem ír ki semmit.Nem lehet,hogy OnPlayerStateChange-el kell csinálni?
Cím: Kidobás az Autóból
Írta: palesz_88 - 2011. december 30. - 21:26:19
Azt szeretnéd, hogy animációval kiszálljon?
 
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_EXIT_VEHICLE);

 
* más játékosok elvileg nem fogják látni az animációt
Cím: Kidobás az Autóból
Írta: dexi - 2011. december 30. - 21:27:27
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new   vehicleid = GetPlayerVehicleID(playerid);
/*-------------------*/
if(newstate == PLAYER_STATE_DRIVER)
{
if (JatekosInfo[playerid][Munka] != 1)
{
   for(new i; i < sizeof(/*MUNKAAUTÓ VÁLTOZÓ*/); i++)
   {
      if(vehicleid == /*MUNKAAUTÓ VÁLTOZÓ*/)
      {
         SendClientMessage(playerid, -1, \"Nem vagy úttisztító\");
         RemovePlayerFromVehicle(playerid);
      }
   }
}
       }
       return 1;
}

 
A melósautóidnak hozz létre változót:
 
new kocsik[amennyiautó+1];

 

kocsik[0] = ...
kocsik[1] = ...
kocsik[2] = ...
kocsik[3] = ...
...
Cím: Kidobás az Autóból
Írta: tudvari - 2011. december 30. - 22:08:32
Pill mindjárt kipróbálom,de így akkor ha 12 sweeper van,akkor new uttisztitokocsi[13]; és 0-tól 11 lesz a számozás nem?

Dupla hozzászólás automatikusan összefûzve. ( 2011. december 30. - 22:14:44 )

Köszi mûködik,megy a +