18.03.2010, 20:57
For some reason, I think my OnVehicleDeath isn't called. Nothing happens if I destroy those vehicles. Here's the code:
Код:
public OnVehicleDeath(vehicleid,killerid)
{
new playerid;
new vehicleid = GetPlayerVehicleID(killerid);
new str[256];
//new vehi = GetPlayerVehicleID(killerid);
if(IsVehicleSpawned(vehicleid))
{
if (VehicleInfo[vehicleid][vInsurances] == 0)
{
if(strfind(str,PlayerVehicle[killerid][pVeh1], true) == 0)
{
DestroyVehicle(vehicleid);
fremove(string);
strmid(PlayerVehicle[killerid][pVeh1], "None", 0, strlen("None"), 255);
return 1;
}
else if(strcmp(str, PlayerVehicle[killerid][pVeh2], true) == 0)
{
DestroyVehicle(vehicleid);
fremove(string);
strmid(PlayerVehicle[killerid][pVeh2], "None", 0, strlen("None"), 255);
return 1;
}
else if(strcmp(str, PlayerVehicle[killerid][pVeh3], true) == 0)
{
DestroyVehicle(vehicleid);
fremove(string);
strmid(PlayerVehicle[killerid][pVeh3], "None", 0, strlen("None"), 255);
return 1;
}
else if(strcmp(str, PlayerVehicle[killerid][pVeh4], true) == 0)
{
DestroyVehicle(vehicleid);
fremove(string);
strmid(PlayerVehicle[killerid][pVeh4], "None", 0, strlen("None"), 255);
return 1;
}
else if(strcmp(str, PlayerVehicle[killerid][pVeh5], true) == 0)
{
DestroyVehicle(vehicleid);
fremove(string);
strmid(PlayerVehicle[killerid][pVeh5], "None", 0, strlen("None"), 255);
return 1;
}
else
{
VehicleInfo[vehicleid][vInsurances] -= 1;
SaveVehicles(killerid, vehicleid);
format(string, sizeof(string), "You have %d insurance left",VehicleInfo[vehicleid][vInsurances]);
SendClientMessage(killerid, COLOR_LIGHTRED, string);
}
return 1;
{
return 0;
}
}
}
}

