eXence
Ученик
Баг с спавном Больница
Можете объяснить как сделать чтобы после смерти игрок появился в больнице, а не на спавнеУ меня ёсть сис больницу помогите плз
public OnPlayerDeath(playerid, killerid, reason)
public OnPlayerSpawn(playerid)
public Fresh()
PHP:
if(PlayerInfo[playerid][pJailed] == 0 && PlayerInfo[playerid][pLevel] > 0 && NoHosp[playerid] == 0)
{
if(IsACop(killerid) && PlayerInfo[playerid][pWanted] > 0) {}
else if(!PlayerInfo[playerid][pHospital])
{
if (PlayerInfo[playerid][pMestoJail] == 5 || PlayerInfo[playerid][pMestoJail] == 6 || PlayerInfo[playerid][pMestoJail] == 14 || PlayerInfo[playerid][pMestoJail] == 25)
{
PlayerInfo[playerid][pMestoJail] = 0;
}
if (IsAArm(playerid)) PlayerInfo[playerid][pHospital] = (HOSPITAL_TIME-2) * 60;
else PlayerInfo[playerid][pHospital] = HOSPITAL_TIME * 60;
PlayerPaintballing[playerid]= 0;
}
}
public OnPlayerSpawn(playerid)
PHP:
new string[170];
TextDrawShowForPlayer(playerid,ServerSite);
SetPlayerWantedLevel(playerid,PlayerInfo[playerid][pWanted]);
SetPVarInt(playerid, "NoAB", 1);
if(PlayerInfo[playerid][pMember] > 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
else SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
SetPlayerSkills(playerid);
if(ReloadAnimsTimer[playerid] != -1) KillTimer(ReloadAnimsTimer[playerid]);
ReloadAnimsTimer[playerid] = SetTimerEx("ReloadAllAnims",3000,false,"i",playerid);
if(PlayerInfo[playerid][pView] == 1) DestroyObject(ViewObject[playerid]);
if(PlayerInfo[playerid][pHospital] > 0)
{
if (PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pMember] == 19)
{
SetPlayerInterior(playerid, 3);//Замените на свою функцию
SetPlayerVirtualWorld(playerid, 11);
new rk = random(4)+8;
SetPlayerPos(playerid,kpos[rk][0],kpos[rk][1],kpos[rk][2]);
SetPlayerFacingAngle(playerid, 0.0);
format(string,sizeof(string),"Вы попали в госпиталь на %d секунд, отдыхайте.",PlayerInfo[playerid][pHospital]);
SendClientMessage(playerid, 0xFF6347AA, string);//Замените на свою функцию
}
else
{
format(string, sizeof(string), "* Диспетчер: %s[%d] попал в больницу! Вылечить его можно командой /uh [id] (6й ранг)",PN(playerid),playerid);
SendRadioMessage(4, COLOR_RED, string);
SendRadioMessage(22, COLOR_RED, string);
SetPlayerInterior(playerid, 0);//Замените на свою функцию
SetPlayerVirtualWorld(playerid, 0);
new rk = random(8);
SetPlayerPos(playerid,kpos[rk][0],kpos[rk][1],kpos[rk][2]);
SetPlayerCameraPos(playerid,213,-123.5,997.49997558594);
SetPlayerCameraLookAt(playerid,213,-128.89999389648,992.00001220703);
//SetPlayerPos(playerid,213.0,-127.9,992.1);//Замените на свою функцию
SetPlayerFacingAngle(playerid, 180.0);
TogglePlayerControllable(playerid, 0);//Замените на свою функцию
ClearAnimations(playerid);
//ApplyAnimation( playerid, "CRACK", "crckdeth2", 4.1, 1, 0, 0, 0, 0 );
//ApplyAnimation( playerid, "CRACK", "crckdeth2", 4.1, 1, 0, 0, 0, 0 );
format(string,sizeof(string),"Вы попали в больницу на %d секунд, отдыхайте.",PlayerInfo[playerid][pHospital]);
SendClientMessage(playerid, 0xFF6347AA, string);//Замените на свою функцию
}
//SetCameraBehindPlayer(playerid);
SetPlayerVirtualWorld(playerid, 0);//Замените на свою функцию
noHpCheck[playerid] = 3;
SetPlayerHealthAC(playerid, 100); //Замените на свою функцию
pTemp[playerid][pCheckSpawn] = 3;
return true;
}
else
{
ViewObject[playerid] = CreateObject(19300, 0, 0, 0, 0, 0, 0);
SetCameraBehindPlayer(playerid);
SetPlayerSpawn(playerid);
}
return 1;
}
public Fresh()
PHP:
if(PlayerInfo[i][pHospital] > 0)
{
format(string, sizeof(string), "~r~%d",PlayerInfo[i][pHospital]);
GameTextForPlayer(i, string, 1000, 6);
PlayerInfo[i][pHospital] --;
if(!PlayerInfo[i][pHospital])
{
SetPlayerInterior(i, 0);//Замените на свою функцию
SetPlayerVirtualWorld(i, 0);//Замените на свою функцию
if (PlayerInfo[i][pMember] == 3 || PlayerInfo[i][pMember] == 19)
{
SendClientMessage(i, 0xBFC0C2FF,"Вас выпустили из госпиталя, берегите здоровие!");//Замените на свою функцию
SetPlayerPos(i,274.9515,1861.3544,18.6547);//Замените на свою функцию
SetPlayerFacingAngle(i, 177.9823);
}
else
{
SendClientMessage(i, COLOR_WHITE, "Вы были вылечены в {FEBC41} Центральной больницы Лос Сантос");
SendClientMessage(i, 0xBFC0C2FF,"Вы заплатили за лечение 1000 вирт, Берегите здоровие!");//Замените на свою функцию
//SetPlayerPos(i,2034.1804,-1404.3721,17.2610);//Замените на свою функцию
//SetPlayerFacingAngle(i, 163.6733);
SetPlayerPos(i,214.3488,-137.8708,992.7422);//Замените на свою функцию
SetPlayerFacingAngle(i, 272);
if (PlayerInfo[i][pCash] > 1000){PlayerInfo[i][pCash] -= 1000;}
FracBank[0][fMedic] += 50;
FracBank[0][fMedicSF] += 50;
}
SetCameraBehindPlayer(i);
TogglePlayerControllable(i, true);//Замените на свою функцию
SetPlayerHealthAC(i,100);
}
}
Последнее редактирование:
