11.07.2012, 18:50
One more question guys. I want to make a seatbelt system. I already added a cmd /seatbelt. Here it is
I would like to make this code working:
What I should #define or... how to make it work. Thank you all in advance.
Код:
if(strcmp(cmdtext, "/seatbelt", true) == 0) { if(IsPlayerConnected(playerid)) { if(IsPlayerInAnyVehicle(playerid)) { if (!IsNotAEngineCar(idcar)) { GetPlayerName(playerid, sendername, sizeof(sendername)); if(PlayerInfo[playerid][pMaskUse] == 1) { format(sendername, sizeof(sendername), "Stranger_%d", PlayerInfo[playerid][pRandMask]); } if(PlayerInfo2[SeatBelt][playerid] == 0) { PlayerInfo2[SeatBelt][playerid] = 1; format(string, sizeof(string), "* %s puts their seatbelt on.", sendername); } else if(PlayerInfo2[SeatBelt][playerid] == 1) { PlayerInfo2[SeatBelt][playerid] = 0; format(string, sizeof(string), "* %s takes their seatbelt off.", sendername); } ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); } else { SendClientMessage(playerid,COLOR_GREY," You are not even inside a vehicle with Seatbelts !"); } } else { SendClientMessage(playerid,COLOR_GREY," You are not even inside a vehicle !"); } } return 1; }
Код:
public OnVehicleDamageStatusUpdate(vehicleid, playerid) { if(IsPlayerInAnyVehicle(playerid) == 1 && Seatbelt[playerid] == 0) { new Float:TempCarHealth; GetVehicleHealth(GetPlayerVehicleID(playerid), TempCarHealth); new Float:Difference = floatsub(CarHealth[playerid], TempCarHealth); if((floatcmp(CarHealth[playerid], TempCarHealth) == 1) && (floatcmp(Difference,100.0) == 1)) { Difference = floatdiv(Difference, 10.0); new Float:OldHealth; GetPlayerHealth(playerid, OldHealth); SetPlayerHealth(playerid, floatsub(OldHealth, Difference)); } CarHealth[playerid] = TempCarHealth; } else { CarHealth[playerid] = 0.0; //To aviod that a player dies when he enters a vehicle } return 1; }