TerraNova
Wiek: 36 Na forum: 5118 dni Posty: 98
Nick w MP: Lonalchemik
Piwa : 797
Ot?? mam problem z hp gracza podczas wypadku nie spada mi ono nie wem w czym ju? problem jest kto mi pomo?e?
Kod: new Float:health;
new medykow;
forward WypadekAuta();
public WypadekAuta()
{
foreach(new i : Player)
{
if(IsPlayerInAnyVehicle(i))
{
GetVehicleHealth(GetPlayerVehicleID(i), Pojazd[GetPlayerVehicleID(i)][NoweHPPojazdu]);
Pojazd[GetPlayerVehicleID(i)][HPPojazdu] = Pojazd[GetPlayerVehicleID(i)][StareHPPojazdu] - Pojazd[GetPlayerVehicleID(i)][NoweHPPojazdu];
if(Pojazd[GetPlayerVehicleID(i)][HPPojazdu] >= 50 && GetPlayerState(i) == PLAYER_STATE_DRIVER && Gracz[i][Wypadek] == 0 && gTeam[i] == TEAM_XOOMER && Gracz[i][Ladunek] == GetVehicleTrailer(GetPlayerVehicleID(i)))
{
TogglePlayerControllable(i, 0);
GetPlayerPos(i, Wybuch[0], Wybuch[1], Wybuch[2]);
CreateExplosion(Wybuch[0], Wybuch[1], Wybuch[2]-5, 5, 10);
CreateExplosion(Wybuch[0], Wybuch[1]+5, Wybuch[2]-3, 9, 0);
CreateExplosion(Wybuch[0], Wybuch[1]-5, Wybuch[2]-3, 9, 0);
CreateExplosion(Wybuch[0]+5, Wybuch[1], Wybuch[2]-3, 9, 0);
CreateExplosion(Wybuch[0]-5, Wybuch[1], Wybuch[2]-3, 9, 0);
CreateExplosion(Wybuch[0]+5, Wybuch[1]+5, Wybuch[2]-3, 9, 0);
CreateExplosion(Wybuch[0]-5, Wybuch[1]-5, Wybuch[2]-3, 9, 0);
TogglePlayerControllable(i, 1);
PozarXoomer = 1;
SetTimer("Eksplozja", 10000, 0);
}
if(Pojazd[GetPlayerVehicleID(i)][HPPojazdu] >= 120 && Gracz[i][Wypadek] == 0)
{
if(GetPlayerState(i) == PLAYER_STATE_PASSENGER || GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
if(Pojazd[GetPlayerVehicleID(i)][NoweHPPojazdu] > 400)
{
SetVehicleHealth(GetPlayerVehicleID(i), 10);
}
Gracz[i][Wypadek] = 1;
GetPlayerHealth(i, health);
if(GetPlayerState(i) == PLAYER_STATE_PASSENGER)
{
SetPlayerHealth(i, health-33);
}
else if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
SetPlayerHealth(i, GetPlayerVehicleID(i)-24);
}
TogglePlayerControllable(i, 0);
Pojazd[GetPlayerVehicleID(i)][HPPojazdu] = 0;
foreach(new j : Player)
{
if(gTeam[j] == TEAM_POGOTOWIE)
{
GetPlayerPos(i, xw, yw, zw);
SetPlayerCP(j, xw, yw, zw, 1);
SendClientMessage(j, CZERWONY, "Jeden z graczy spowodowa? wypadek! ?piesz mu na pomoc. Miejsce wypadku masz zaznaczone na mapie czerwonym kwadratem.");
medykow=1;
}
}
if(medykow == 1)
{
Gracz[i][TimerWypadku] = SetTimerEx("PoWypadku", 5000, 0, "d", i);
SendClientMessage(i, CZERWONY, "Spowodowa?e? wypadek! Musisz poczeka? 5 sekund, a? si? ockniesz.");
}
else
{
Gracz[i][TimerWypadku] = SetTimerEx("PoWypadku", 30000, 0, "d", i);
SendClientMessage(i, CZERWONY, "Spowodowa?e? wypadek! Musisz poczeka? 30 sekund, albo wezwa? pogotowie.");
}
}
}
GetVehicleHealth(GetPlayerVehicleID(i), Pojazd[GetPlayerVehicleID(i)][StareHPPojazdu]);
}
}
}
forward PoWypadku(playerid);
public PoWypadku(playerid)
{
Gracz[playerid][Wypadek] = 0;
TogglePlayerControllable(playerid, 1);
}
SetPlayerCP(playerid, Float:x, Float:y, Float:z, Float:wielkosc)
{
DisablePlayerCheckpoint(playerid);
SetPlayerCheckpoint(playerid, x, y, z, wielkosc);
}