10.07.2014, 21:35
Hey,
I have very annoying bug in my gamemode. When i connect my server i can't start any car(ex: when i spawn car with /veh i cant drive with it) if i'm not in faction or somewhere. If i'm civin system just says "You don't have key's to start engine", but if i change my faction id and start faction car and all works fine now even this /veh vehicle. Sorry for terrible english..
All id's are correct! Checked many times. My /engine command.
I have very annoying bug in my gamemode. When i connect my server i can't start any car(ex: when i spawn car with /veh i cant drive with it) if i'm not in faction or somewhere. If i'm civin system just says "You don't have key's to start engine", but if i change my faction id and start faction car and all works fine now even this /veh vehicle. Sorry for terrible english..
All id's are correct! Checked many times. My /engine command.
Код:
if(!strcmp(cmd, "/engine", true))
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInAnyVehicle(playerid))
{
if(k2ivitatav[playerid] == 1)
{
if(!engineOn[GetPlayerVehicleID(playerid)])
{
if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
{
return 1;
}
if(IsAnOwnableCar(idcar))
{
if(PlayerInfo[playerid][pPcarkey] == idcar) { }
else if(PlayerInfo[playerid][pPcarkey2] == idcar) { }
else if(PlayerInfo[playerid][pPcarkey3] == idcar) { }
else { return 1; }
}
if(pveh == 999 || pveh == 999 || pveh == 999 || pveh == 999)
{
return 1;
}
if(idcar == 999 || idcar == 999)
{
return 1;
}
if(idcar >= 32 && idcar <= 35)
{
if(HireCar[playerid] != idcar)
{
return 1;
}
}
if(IsAPlane(idcar))
{
return 1;
}
if(IsAHarvest(idcar))
{
return 1;
}
if(IsADrugHarvest(idcar))
{
return 1;
}
if(IsASweeper(idcar))
{
return 1;
}
new Float:health;
GetVehicleHealth(GetPlayerVehicleID(playerid),health);
new playerveh = GetPlayerVehicleID(playerid);
if (health <= 400 && !IsABoat(playerveh) && !IsAPlane(playerveh) && !IsAHarvest(playerveh) && !IsADrugHarvest(playerveh) && !IsASweeper(playerveh))
{
engineOn[GetPlayerVehicleID(playerid)] = false;
TogglePlayerControllable(playerid, 0);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s ьritab mootorit kдivitada kuid ebaхnnestub.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SendClientMessage(playerid, COLOR_BLUE, "Mootor ei kдivitunud. Mootor on liiga kuum. Kutsu Mehaanik.");
gEngine[playerid] = 0;
return 1;
}
if(Gas[playerveh] == 0)
{
Mecmd(playerid,"ьritab mootorit kдivitada kuid ebaхnnestub.");
SendClientMessage(playerid, COLOR_GRAD1, "Masinas pole enam tilkagi kьtust.");
return 1;
}
if( sTankimas[playerid] == 1 )
{
TogglePlayerControllable(playerid, false);
return SendClientMessage(playerid, COLOR_GREY, "Sa ei saa tankimise ajal mootorit kдivitada.");
}
if(gEngine[playerid] == 1) { return 1; }
PutPlayerInVehicle(playerid, playerveh, 0);
TogglePlayerControllable(playerid, 0);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s kдivitab sхiduki mootori.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SetTimerEx("StartingTheVehicle",1,0,"i",playerid);
gEngine[playerid] = 1;
return 1;
}
if(engineOn[GetPlayerVehicleID(playerid)])
{
if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
{
return 1;
}
if(IsAnOwnableCar(idcar))
{
if(PlayerInfo[playerid][pPcarkey] == idcar) { }
else if(PlayerInfo[playerid][pPcarkey2] == idcar) { }
else if(PlayerInfo[playerid][pPcarkey3] == idcar) { }
else { }
}
if(pveh == 999 || pveh == 999 || pveh == 999 || pveh == 999)
{
return 1;
}
if(idcar == 999 || idcar == 999)
{
return 1;
}
if(idcar >= 999 && idcar <= 999)
{
if(HireCar[playerid] != idcar)
{
return 1;
}
}
if(IsAHarvest(idcar))
{
return 1;
}
if(IsADrugHarvest(idcar))
{
return 1;
}
if(IsAPlane(idcar))
{
return 1;
}
if(IsASweeper(idcar))
{
return 1;
}
engineOn[GetPlayerVehicleID(playerid)] = false;
TogglePlayerControllable(playerid, 0);
PlayerPlaySound(playerid,1022, 0.0, 0.0, 0.0)
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s keerab vхtit ja suretab mootori.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
gEngine[playerid] = 0;
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "You don't have keys to start engine.");
}
}
}
return 1;
}


