Engine start -
Hunud - 29.08.2016
Engine wont start when press shift
OnPlayerKeyStateChange
Код:
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(newkeys == KEY_JUMP)
{
new id = GetPlayerVehicleID(playerid);
if(id == 481 || id == 509 || id == 510) return SCM(playerid, -1, ""C_SIVA"* Ozbiljno mislis upaliti bicikl?");
if(MotorUpaljen[id] == 0)
{
new msg[128];
format(msg, sizeof(msg), "%s pokusava pokrenuti motor na vozilu %s...", GetName(playerid), GetVehicleNameEx(id));
ProxDetector(25.0, playerid, msg, PROX);
GameTextForPlayer(playerid, "~y~Paljenje motora...", 2500, 4);
SetTimerEx("PaljenjeMotora", MOTOR_PALJENJE*1000, false, "i", playerid);
Zaledi(playerid);
}
else if(MotorUpaljen[id] == 1)
{
new msg[128];
format(msg, sizeof(msg), "%s iskljucuje motor na vozilu %s.", GetName(playerid), GetVehicleNameEx(id));
ProxDetector(25.0, playerid, msg, PROX);
GetVehicleParamsEx(id, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(id, VEHICLE_PARAMS_OFF, lights, alarm, doors, bonnet, boot, objective);
MotorUpaljen[id] = 0;
}
}
}
//---------- [ Paljenje svetala ] ----------//
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(newkeys == KEY_SUBMISSION && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
new id = GetPlayerVehicleID(playerid);
if(id == 481 || id == 509 || id == 510) return SCM(playerid, -1, ""C_SIVA"* Ne mozete na biciklima upaliti svetlo.");
if(MotorUpaljen[id] == 0) return SCM(playerid, -1, ""C_SIVA"* Morate imati upaljeno vozilo!");
if(SvetlaUpaljena[id] == 0)
{
new msg[128];
format(msg, sizeof(msg), "%s ukljucuje svetla na vozilu %s.", GetName(playerid), GetVehicleNameEx(id));
ProxDetector(25.0, playerid, msg, PROX);
GetVehicleParamsEx(id, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(id, engine, VEHICLE_PARAMS_ON, alarm, doors, bonnet, boot, objective);
SvetlaUpaljena[playerid] = 1;
}
else if(SvetlaUpaljena[id] == 1)
{
new msg[128];
format(msg, sizeof(msg), "%s iskljucuje svetla na vozilu %s.", GetName(playerid), GetVehicleNameEx(id));
ProxDetector(25.0, playerid, msg, PROX);
GetVehicleParamsEx(id, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(id, engine, VEHICLE_PARAMS_OFF, alarm, doors, bonnet, boot, objective);
SvetlaUpaljena[id] = 0;
}
}
}
OnPlayerStateChange
if(newstate == PLAYER_STATE_DRIVER)
{
new vid = GetPlayerVehicleID(playerid);
if(MotorUpaljen[vid] == 0)
{
SCM(playerid, -1, ""C_ZUTA"*Da pokrenete vozilo, pritisnite dugme 'SHIFT' na vasoj tastaturi.");
}
else if(MotorUpaljen[vid] == 1) // Skloniti
{
SCM(playerid, -1, ""C_SIVA"*Motor upaljen.");
}
if(SvetlaUpaljena[vid] == 0)
{
SCM(playerid, -1, ""C_ZUTA"*Da upalite svetla, pritisnite dugme '2' na vasoj tastaturi.");
}
if(SvetlaUpaljena[vid] == 1) // Skloniti
{
SCM(playerid, 1, ""C_SIVA"*Svetla upaljena.");
}
}
Timer starting engine
Код:
forward PaljenjeMotora(playerid);
public PaljenjeMotora(playerid)
{
new motor = random(2), vehicleid = GetPlayerVehicleID(playerid); // Vrednost je 1(Uspesno) ili 0(Neuspesno)!
if(motor == 1)
{
new msg[128];
format(msg, sizeof(msg), "%s pokrece motor na vozilu %s.", GetName(playerid), GetVehicleNameEx(vehicleid));
GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(vehicleid, VEHICLE_PARAMS_ON, lights, alarm, doors, bonnet, boot, objective);
GameTextForPlayer(playerid, "~g~Motor pokrenut!", 2000, 4);
MotorUpaljen[vehicleid] = 1;
Odledi(playerid);
ProxDetector(25.0, playerid, msg, PROX);
}
else if(motor == 0)
{
GameTextForPlayer(playerid, "~r~Neuspesno, pokusajte opet.", 2000, 4);
Odledi(playerid);
new msg[128];
format(msg, sizeof(msg), "%s ne uspeva pokrenuti motor na vozilu %s.", GetName(playerid), GetVehicleNameEx(vehicleid));
ProxDetector(25.0, playerid, msg, PROX);
}
return 1;
}
Re: Engine start -
Sew_Sumi - 29.08.2016
If you checked OnPlayerKeyStateChange and looked at the keys section, you'd see that key isn't the same when in the vehicle.
Pressing S when in the car using KEY_JUMP, will start it. But not in your code. You want to view the OnPlayerKeyStateChange wiki.
https://sampwiki.blast.hk/wiki/OnPlayerK...heck_for_a_key
https://sampwiki.blast.hk/wiki/Keys