Hey Community,
ich habe mir ins Script ein Motorsystem eingebaut. Es funktioniert auch fast, aber nicht so wie es soll.
Und zwar ist mein Wunsch. Das das Auto beim einsteigen aus ist und man erst den motor starten muss. Weil im echten Leben kann man ja auch nicht einfach so einsteigen und drauf losfahren.
Habe hier mal alles zusammen gesucht um euch hier das ganze System zu posten.
new motor[MAX_VEHICLES] = 0;
public OnVehicleSpawn(vehicleid)
{
motor[vehicleid] = 0;
return 1;
}
public OnPlayerEnterVehicle(playerid,vehicleid)
{
if(motor[vehicleid] == 1)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vehicleid,1,lights,alarm,doors,bonnet,boot,objective);
}
else
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vehicleid,0,lights,alarm,doors,bonnet,boot,objective);
}
return 1;
}
public OnPlayerCommandText(playerid,cmdtext[])
{
if(strcmp(cmdtext,"/motor",true)==0)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerVehicleSeat(playerid) == 0)
{
new veh = GetPlayerVehicleID(playerid);
if(motor[veh] == 0)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
SendClientMessage(playerid,0xFF0000FF,"Du hast den Motor angeschalten.");
motor[veh] = 1;
return 1;
}
else
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
SendClientMessage(playerid,0xFF0000FF,"Du hast den Motor ausgeschalten.");
motor[veh] = 0;
return 1;
}
}
else
{
SendClientMessage(playerid,0xFF0000FF,"Du bist nicht der Fahrer.");
return 1;
}
}
else
{
SendClientMessage(playerid,0xFF0000FF,"Du bist in keinem Fahrzeug.");
return 1;
}
}
return 0;
}
public OnPlayerKeyStateChange(playerid,newkeys,oldkeys)
{
if(newkeys == KEY_SUBMISSION)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerVehicleSeat(playerid) == 0)
{
new veh = GetPlayerVehicleID(playerid);
if(motor[veh] == 0)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
motor[veh] = 1;
}
else
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
motor[veh] = 0;
}
}
}
}
return 1;
}
Wie mache ich das jetzt, sodass der Motor beim einsteigen aus ist?!
//Edit: Einen Rechtschreibfehler verbessert ;p Wer welsche findet darf sie behalten ;D