Проблема с проверкой при смерти игрока...
#1

Я добавил в самый конец паблика OnPlayerDeath (До return 1;,после последней проверки):
Code:
	if(Crystalonplayer[playerid] != 0 && Crystalrobbed != 0)
	{
	new Float: pcx,Float: pcy,Float: pcz;
	GetPlayerPos(playerid,pcx,pcy,pcz);
	Kristal = CreateObject(2976, pсx, pсy, pсz, 0.000000, 0.000000, 0.000000);
	Crystalonplayer[playerid] = 0;
	Crystalrobbed = 0;
	SendClientMessage(playerid,COLOR_GREY,"Вы потеряли кристал!");
	}
Тоесть проверка на если кристал у игрока и если кристал похищен.
Данная проверка не применяется...
Игрок умирает если кристал похищен и если он у него как ни в чём не бывало...
Куда эту проверку вставить чтобы при любой смерти игрока у которого кристал,кристал спаунился на том месте где игрок умер?
Reply
#2

Можно еще в OnPlayerStateChange
if ( state == PLAYER_STATE_WASTED ) бла бла

OnPlayerStateChange вызывается раньше чем OnPlayerDeath
Reply
#3

неа...не хочет...
Есть варианты?
Reply
#4

Значит одно из действий в условии не исполняется. Я предпологаю что дело в Crystalrobbed != 0
Reply
#5

Ставил и == 1...
Reply
#6

Учитесь использовать дебаг:
перд всем этим кодом printf("playerid = %d (-%d- -%d-)",playerid,Crystalonplayer[playerid],Crystalrobbed);
и смотри какое из условий не выполняется.
Reply
#7

Quote:
Originally Posted by Mike_S.
Ставил и == 1...
Убери его вообще и оставь только if(Crystalonplayer[playerid] != 0)
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)