- Регистрация
- 12 Июл 2019
- Сообщения
- 35
- Лучшие ответы
- 0
- Репутация
- 2
Вот энум с нужной мне переменной player[playerid][pDeath]:
Вот сами проверки, в идеале после смерти персонажа он должен появляться на месте смерти и изображать анимацию лежа:
---------- Сообщение добавлено в 22:08 ---------- Предыдущее сообщение добавлено в 22:05 ----------
---------- Сообщение добавлено в 23:44 ---------- Предыдущее сообщение добавлено в 22:08 ----------
Я решил! Вот код:
Теперь игрок спавнится после смерти там же, где сдох! Всего-то надо было переменные координат сделать глобальными!
Закрыто
PHP:
enum pInfo {
pPass[50+1], pMail[60+1], pMoney, pLevel, pAge, pNational, pSkin, pSex, pID, pReferalCheck, pReferal[MAX_PLAYER_NAME+1], pDateReg[10+1], pExp, pDeath
}
new
player[MAX_PLAYERS][pInfo];
PHP:
public OnPlayerSpawn(playerid)
{
if(login_check{playerid} == true)
{
SetPlayerSpawn(playerid);
}
if(login_check{playerid} == true && player[playerid][pDeath] == 1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetPlayerPos(playerid, x, y, z);
ApplyAnimation(playerid, "CRACK", "CRCKIDLE2", 4.1, 1, 1, 1, 1, 0);
FreezePlayer(playerid, 0);
}
return true;
}
public OnPlayerDeath(playerid, killerid, reason)
{
player[playerid][pDeath] = 1;
return true;
}
---------- Сообщение добавлено в 22:08 ---------- Предыдущее сообщение добавлено в 22:05 ----------
А он появляется на месте спавна после авторизации, с заморозкой (TogglePlayerControllabel)Вот энум с нужной мне переменной player[playerid][pDeath]:
Вот сами проверки, в идеале после смерти персонажа он должен появляться на месте смерти и изображать анимацию лежа:PHP:enum pInfo { pPass[50+1], pMail[60+1], pMoney, pLevel, pAge, pNational, pSkin, pSex, pID, pReferalCheck, pReferal[MAX_PLAYER_NAME+1], pDateReg[10+1], pExp, pDeath } new player[MAX_PLAYERS][pInfo];
PHP:public OnPlayerSpawn(playerid) { if(login_check{playerid} == true) { SetPlayerSpawn(playerid); } if(login_check{playerid} == true && player[playerid][pDeath] == 1) { new Float:x, Float:y, Float:z; GetPlayerPos(playerid, x, y, z); SetPlayerPos(playerid, x, y, z); ApplyAnimation(playerid, "CRACK", "CRCKIDLE2", 4.1, 1, 1, 1, 1, 0); FreezePlayer(playerid, 0); } return true; } public OnPlayerDeath(playerid, killerid, reason) { player[playerid][pDeath] = 1; return true; }
---------- Сообщение добавлено в 23:44 ---------- Предыдущее сообщение добавлено в 22:08 ----------
Я решил! Вот код:
PHP:
enum pInfo {
pPass[50+1], pMail[60+1], pMoney, pLevel, pAge, pNational, pSkin, pSex, pID, pReferalCheck, pReferal[MAX_PLAYER_NAME+1], pDateReg[10+1], pExp, pDeath
}
new
player[MAX_PLAYERS][pInfo];
PHP:
new Float:x1,
Float:y1,
Float:z1;
PHP:
public OnPlayerSpawn(playerid)
{
if(login_check{playerid} == true)
{
SetPlayerSpawn(playerid);
if(player[playerid][pDeath] == 1)
{
SetPlayerPos(playerid, x1, y1, z1);
return true;
}
}
return true;
}
public OnPlayerDeath(playerid, killerid, reason)
{
GetPlayerPos(playerid, x1, y1, z1);
player[playerid][pDeath] = 1;
return true;
}
Закрыто