Ez a Jármûves védelem arra szolgál, hogy pl van egy kocsid és nem akarod, hogy ellopják, és ha vki beszál a kocsidba, akkor kitesszi a kocsiból, vagy meghal, most itt az rcon-t használjuk, ha nincs rconal belépve az illetõ, akkor csökkenti az életét, és kidobja.
1.Kezdjük ott, hogy felmész egy szerverre leteszel egy jármûvet és lemented /save ezt a Sa könyvtárábba a \"savedpositions.txt\" -be nyisd meg valami ilyet látsz:
A
ddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);
2.A modod/Scripted elejére csinálsz egy new-t:
new veh;
3. Utána a GameModeInit -hez azt illeszd be, ami a savedpositons.txt-ben van, a veh helyett azt írd, amit írtál a new-hez.
veh= AddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);
4.
public OnPlayerStateChange(playerid,newstate)
{
new jarmu;
jarmu = GetPlayerVehicleID(playerid);
if(newstate == PLAYER_STATE_DRIVER)
{
if(jarmu == veh)
{
if(IsPlayerAdmin(playerid))
{
}else{
RemovePlayerFromVehicle(playerid);
SetPlayerHealth(playerid, 50.00);
SendClientMessage(playerid,COLOR_RED,\"Nincs jogod elvinni Az admin jármûveket!\");
return 1;
}
}
}
}
RemovePlayerFromVehicle(playerid); = Kidobja a jármûbõl, aki beszáll.
SetPlayerHealth(playerid, -50.00); = 50 % -al csökkenti az életet.
Persze ide több jármûvet is lehet betenni így pl.:
if(jarmu == veh || jarmu == veh2 || jarmu == veh3)
Figyelj arra, ha több jármûvet teszel akkor a végén mindig zárd be ) - jelel
A (jarmu == veh) oda a veh helyett, azt írd amit a:
veh= AddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);
írtál.
Kész is vagyunk, ezeket ugyanígy tuningolt jármûvekel is meglehet oldani.
Ez tényleg nem leírás nem írsz le vele semmit és ne code tagokba írd le hanem mellé! És van benne hiba is:
ddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);
helyett
AddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);
if(IsPlayerAdmin(playerid))
{
}else{
RemovePlayerFromVehicle(playerid);
SetPlayerHealth(playerid, 50.00);
SendClientMessage(playerid,COLOR_RED,\"Nincs jogod elvinni Az admin jármûveket!\");
return 1;
}
Sokkal egyszerûbb igy:
if(!IsPlayerAdmin(playerid))
{
RemovePlayerFromVehicle(playerid);
SetPlayerHealth(playerid, 50.00);
SendClientMessage(playerid,COLOR_RED,\"Nincs jogod elvinni Az admin jármûveket!\");
return 1;
}
Tehát egy felkiáltójelet teszel az IsPlayerAdmin elé, igy nem kell az \'else\'.
Ja és még, OnPlayerEnterVehicle-t használj, hogy be se tudjon szállni (most be tudna, csak azonnal ki is szállna).
Na meg:
Ez tényleg nem leírás nem írsz le vele semmit és ne code tagokba írd le hanem mellé! És van benne hiba is:
ddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);
helyett
AddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);