26.06.2014, 22:27
(
Последний раз редактировалось 0x002; 29.06.2014 в 14:11.
)
PHP код:
CMD:hp(playerid, vehicleid)
{
new Float:hp = GetPlayerHealth(playerid, hp);
new Float:ahp = GetPlayerArmour(playerid, ahp);
new Float:vhp = GetVehicleHealth(vehicleid, vhp);
new vehid = GetPlayerVehicleID(playerid);
if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if (hp < 100 && vhp < 1000){
RepairVehicle(vehid);
SetPlayerHealth(playerid, 100);
SendClientMessage(playerid, COLOR_GREEN, "Здоровье восстановлено, машина починена.");
}else if (hp == 100 && vhp != 1000){
RepairVehicle(vehid);
SendClientMessage(playerid, COLOR_GREEN, "Машина починена. Восстановление здоровья не требуется.");
}else{SendClientMessage(playerid, COLOR_GREEN, "Третее условие");
}
}
else if (GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
{
if (hp <= 100 && ahp == 0)
{
SetPlayerHealth(playerid, 100);
SendClientMessage(playerid, COLOR_GREEN, "Здоровье восстановлено.");
}
else if (hp < 100 && ahp < 100)
{
SetPlayerHealth(playerid, 100);
SetPlayerArmour(playerid, 100);
SendClientMessage(playerid, COLOR_GREEN, "Здоровье и броня восстановлены.");
}
else
{
SendClientMessage(playerid, COLOR_GREEN, "Условие после всех IF");
}
}
else SendClientMessage(playerid, COLOR_RED, "Ошибка!");
return 1;
}
else if (GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) = срабатывает второе условие вместо первого.
ЧЯДНТ? (Что я делаю не так?)