10.03.2012, 15:50
Tente fazer assim
Me mande o comando de reparar o veнculo do mecanico.
PHP код:
#include <a_samp>
#define EncodeDamage(%1,%2,%3,%4) %1 | (%2 << 1) | (%3 << 2) | (%4 << 3)
#define SLOTS 50
new
bool:Danificado[2000],
bool:NaoCarro[SLOTS],
bool:Cinto[SLOTS],
Float:xaa[SLOTS],
Float:yaa[SLOTS],
Float:zaa[SLOTS],
Float:HealthV,
damage[4]
;
public OnVehicleDamageStatusUpdate(vehicleid, playerid)
{
GetVehicleHealth(vehicleid,HealthV);
if(HealthV > 900) return false;
if(Cinto[playerid] == false && NaoCarro[playerid] == false)
{
RemovePlayerFromVehicle(playerid);
new Float:XD,Float:YD,Float:ZD,Float:ANGLED;
GetPlayerPos(playerid,XD,YD,ZD);
new Float:r;
GetVehicleZAngle(GetPlayerVehicleID(playerid),r);
XD += (10 * floatsin(-r, degrees));
YD += (10 * floatcos(-r, degrees));
GetPlayerFacingAngle(playerid,ANGLED);
SetPlayerPos(playerid,XD,YD,ZD+2);
SetPlayerHealth(playerid,HealthV/20);
SendClientMessage(playerid,0xFFFFFFFF,"[INFO] Vocк esta sem cinto de seguranзa cuidado com acidentes");
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
SetTimerEx("StopAnimes",8000,false,"i",playerid);
SetTimerEx("CongelarPlayer",10000,false,"i",playerid);
NaoCarro[playerid] = true;
}
if(HealthV < 400)
{
new Float:XD,Float:YD,Float:ZD;
GetPlayerPos(playerid,XD,YD,ZD);
SetPlayerPos(playerid,XD+1,YD+1,ZD+1);
TogglePlayerControllable(playerid, false);
SendClientMessage(playerid,0xFFFFFFFF,"[INFO] Seu Carro foi Danificado Chame um Mecanico imediatamente");
Danificado[vehicleid] = true;
}
return true;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(Danificado[vehicleid] == true)
{
new Float:XD,Float:YD,Float:ZD;
GetPlayerPos(playerid,XD,YD,ZD);
SetPlayerPos(playerid,XD+1,YD+1,ZD+1);
TogglePlayerControllable(playerid, false);
SendClientMessage(playerid,0xFFFFFFFF,"[INFO] Seu Carro foi Danificado Chame um Mecanico imediatamente");
}
return true;
}