Вообщем суть в том что когда я занимаю койку она сразу-же через секунду обновляется, скрипт койки вот такой:
stock ClearMedBed(playerid, bedid)
{
if(GetPlayerData(playerid, P_OCCUPIED_BED) != -1)
{
SetPlayerData(playerid, P_OCCUPIED_BED, -1);
}
g_med_bed_used[bedid] = false;
UpdateMedBed(bedid);
return 1;
}
stock UpdateMedBed(bedid) // ???????? ?????
{
new fmt_text[85];
format(fmt_text, sizeof fmt_text, "????? ?%d\n{00CC00}????????\n\n{AAAAAA}??????? ????? ALT\n????? ?????? ??", bedid + 1);
UpdateDynamic3DTextLabelText(g_med_bed_label[bedid], 0xFFFFFFEE, fmt_text);
return 1;
}
public: HospitalTreatment()
{
for(new playerid; playerid < MAX_PLAYERS; playerid ++)
{
if(!IsPlayerConnected(playerid)) continue;
else if(!IsPlayerLogged(playerid)) continue;
else if(GetPlayerData(playerid, P_OCCUPIED_BED) == -1) continue;
if(!IsPlayerInRangeOfPoint(playerid, 70.0, 1131.1603, -8.5709, 1011.1254))
{
ClearMedBed(playerid, GetPlayerData(playerid, P_OCCUPIED_BED));
}
else
{
GameTextForPlayer(playerid, "~g~~h~~h~+ 1 HP", 1000, 4);
SetPlayerChatBubble(playerid, "+1 hp", 0x33CC33FF, 5.0, 1000);
SetPlayerHealthEx(playerid, 1.0, true);
}
}
SetTimer("HospitalTreatment", (random(5) + 1) * 1000, false);
return 1;
}
Ещё я наткнулся на вот такие вот строки при поиске решения этой проблемы:
SetTimer("ClearBanList", 15_000, false);
SetTimer_("OnSecondTimer", 1000, 0, -1);
SetTimer_("SpeedBooster", 100, 0, -1);
CallLocalFunction("HospitalTreatment", "");
SetGameModeText(SERVER_VERSION);
return 1;
Это похоже на какой-то таймер, если знаете как это исправить отпишитесь!