Van egy /motor parancsom ami a motort kapcsolja ki és be. A baj az, hogy bármilyen kocsiba is ülök be, a motor nem indul el és nem áll le. A kocsiidk jól vannak beírva, nincsenek elcsúszva.1-30 kocsi megvan, /dl is jelzi.
if(!strcmp(cmdtext, \"/motor\", true))
{
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)//Ha a vezető írja be
{
new vehicleid = GetPlayerVehicleID(playerid);//Lekéri a kocsi idjét amiben ül
if(Motor[vehicleid] == off)
{
new kocsimotorid = GetPlayerVehicleID(playerid);
if(pInfo[playerid][VehicleKey1] == kocsimotorid)
if(pInfo[playerid][VehicleKey2] == kocsimotorid)
{
SetTimerEx(\"EngineStart\",2000,false,\"ii\",vehicleid);// Elindítja.
}
if(kocsimotorid == 9)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 10)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 11)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 12)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 13)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 14)//Ha SFPD-s kocsiban ül
{
if(pInfo[playerid][LeaderJob] == 1)//És rendőr
{
SetTimerEx(\"EngineStart\",2000,false,\"ii\",vehicleid);// Elindítja.
}
}
if(kocsimotorid == 15)// Ha mentőben ül
if(kocsimotorid == 16)
if(kocsimotorid == 17)
{
if(pInfo[playerid][LeaderJob] == 2)//És mentős
{
SetTimerEx(\"EngineStart\",2000,false,\"ii\",vehicleid);// Akkor elindítja
}
}
if(kocsimotorid == 18)// Ha tűzoltókocsiban ül
if(kocsimotorid == 19)
if(kocsimotorid == 20)
{
if(pInfo[playerid][LeaderJob] == 3)//És tűzoltó
{
SetTimerEx(\"EngineStart\",2000,false,\"ii\",vehicleid);// Akkor elindítja
}
}
if(kocsimotorid == 1)// Ha OTAL kocsiban ül
if(kocsimotorid == 2)
if(kocsimotorid == 3)
if(kocsimotorid == 4)
if(kocsimotorid == 5)
if(kocsimotorid == 6)
if(kocsimotorid == 7)
if(kocsimotorid == 8)
{
if(pInfo[playerid][LeaderJob] == 4)//És OTALos
{
SetTimerEx(\"EngineStart\",2000,false,\"ii\",vehicleid);// Akkor elindítja
}
}
if(kocsimotorid == 21)// Ha terrorista kocsiban ül
if(kocsimotorid == 22)
if(kocsimotorid == 23)
if(kocsimotorid == 24)
if(kocsimotorid == 25)
if(kocsimotorid == 26)
if(kocsimotorid == 27)
if(kocsimotorid == 28)
if(kocsimotorid == 29)
if(kocsimotorid == 30)
{
if(pInfo[playerid][LeaderJob] == 5)//És terrorista
{
SetTimerEx(\"EngineStart\",2000,false,\"ii\",vehicleid);// Akkor elindítja
}
}
}
else if (Motor[vehicleid] == on)
{
EngineStop(vehicleid);
}
else
{
if (Motor[vehicleid] == on)
{
EngineStop(vehicleid);
}
else
{
SendClientMessage(playerid,COLOR_RED,\"Ehhez a járműhöz nincs kulcsod!\");
}
}
}
return 1;
}
A timer indítja 2 mp késleltetéssel
forward EngineStart(vehicleid);
public EngineStart(vehicleid)
{
new engine, lights, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(vehicleid, 1, 1, alarm, doors, bonnet, boot, 0);
Motor[vehicleid] = on;
new Float:x,Float:y,Float:z;
GetVehiclePos(vehicleid,x,y,z);
for(new i = 0; i < MAX_PLAYERS; i++)
if(IsPlayerInRangeOfPoint(i,5,x,y,z))
{
SendClientMessage(i,COLOR_WHITE,\"*A közelben beindult egy jármű motorja*\");
Starting[vehicleid] = 0;
}
else if(IsPlayerInRangeOfPoint(i,10,x,y,z))
{
SendClientMessage(i,COLOR_GREY,\"*A távolban beindult egy jármű motorja*\");
}
}
forward EngineStop(vehicleid);
public EngineStop(vehicleid)
{
new engine, lights, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(vehicleid, 0, 0, alarm, doors, bonnet, boot, 0);
Motor[vehicleid] = off;
new Float:x,Float:y,Float:z;
GetVehiclePos(vehicleid,x,y,z);
for(new i = 0; i < MAX_PLAYERS; i++)
if(IsPlayerInRangeOfPoint(i,5,x,y,z))
{
SendClientMessage(i,COLOR_WHITE,\"*A közelben leállt egy jármű motorja*\");
}
else if(IsPlayerInRangeOfPoint(i,10,x,y,z))
{
SendClientMessage(i,COLOR_GREY,\"*A távolban leállt egy jármű motorja*\");
}
}
new vehicleid = GetPlayerVehicleID(playerid);//Lekéri a kocsi idjét amiben ül
new kocsimotorid = GetPlayerVehicleID(playerid);
elég 1x lekérdezni az ID-t
de a hiba itt van:
if(kocsimotorid == 9)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 10)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 11)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 12)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 13)//Ha SFPD-s kocsiban ül
if(kocsimotorid == 14)//Ha SFPD-s kocsiban ül
[/quote]
HA a 9-es kocsiban ül
HA a 10-es kocsiban ül
HA a 11-es kocsiban ül
...
érted már? tehát egyszerre több kocsiban kellene ülnie...
itt az if-ek nem VAGY-ot hanem ÉS-t jelentenek...
if(kocsimotorid == 9 || //Ha SFPD-s kocsiban ül
kocsimotorid == 10 || //Ha SFPD-s kocsiban ül
kocsimotorid == 11) //Ha SFPD-s kocsiban ül
így kellene megcsinálnod, vagy egymás mellé...