Question

Как сделать так что бы игрок после смерти появлялся в определенной точке? Помогите пожалуйста)

 

Share this post


Link to post

4 answers to this question

  • 0

OnPlayerDeath: 

SetPVarInt(playerid, "death", 1); 

В OnPlayerSpawn: 

if(GetPVarInt(playerid, "death")) 
{
	нужные действия
	DeletePVar(playerid, "death"); 
}

Ну или вместо пваров использовать переменную, как угодно. 

Share this post


Link to post
  • 0

В OnPlayerSpawn
 

Спойлер

if(PlayerInfo[playerid][Проверка] > 0)
{

SetPlayerPos(playerid,x,z,y);
}

 

Share this post


Link to post
  • 0

При смерте OnPlayerDeat создавай пвар и давай значение 1 
а при спавне OnPlayerSpawn проверяй если пвар равен 1 то спавнь где хочешь и потом либо обнуляй либо удаляй пвар

Share this post


Link to post
  • 0

Мое первое сообщение O.o

Если уж делать нуля без всяких лишних перебросов игрока по координатам, персонаж игрока должен знать где появиться еще до 

OnPlayerSpawn

В этом обратном вызове лучше обработать выдачу оружия (если надо выдать больше 3 единиц)

Камеру, анимации текстдравы и так далее.

По уму желательно вызывать SetSpawnInfo в вызовах OnPlayerDeath и OnPlayerRequestSpawn и тогда игрок появися на нужных координатах без всяких перебросов.

Если делать присваивание координат в OnPlayerSpawn игрок сначала появится на спавн координатах (в ранее примененных AddPlayerClass или SetSpawnInfo) и лишь потом в нужных.

 

 

Для ленивцев следующая конструкция

public OnPlayerRequestSpawn(playerid){
   if(/*проверка на допуск к появлению*/){
       return false;
   }
   OnPlayerSetupSpawn(playerid);
   return true;
}

public OnPlayerDeath(playerid, killerid, reason){
    OnPlayerSetupSpawn(playerid);
    return true;
}

public OnPlayerSpawn(playerid){
   // сделать далее действия
    return true;
}

stock OnPlayerSetupSpawn(playerid){
   new team = GetPlayerTeam(playerid);
   new skin = GetPlayerSkin(playerid);
   new Float:s[4]; // это будут ваши спавн координаты
   new wa[3][2];// = {{4,1}, {25, 10}, {30, 50}}; // оружие 
    SetSpawnInfo(playerid, team, skin, s[0], s[1], s[2], s[3], wa[0][0], wa[0][1], wa[1][0], wa[1][1], wa[2][0], wa[2][1]);
}

 

Так же используя SetSpawnInfo можно и вовсе отказаться от кучи AddPlayerClass в GameModeInit оставив всего 3 для определения кнопки которую игрок нажимает ^_^

 

Заметка от DEST , создано

На будущее, для читабельности, берите код в тег "Код" и скрывайте спойлером.
Как это сделать? (кликабельно)

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content