PDA

Просмотр полной версии : [Вопрос] Спавн игрока на месте его смерти



Vasya_Pupkin
06.10.2017, 13:35
Всем привет.
Как сделать спан на то же место где вас убили

Делал так
В
public OnPlayerDeath(playerid, killerid, reason)

new Float:s[3];
GetPlayerPos(playerid,s[0],s[1],s[2]);
pTemp[playerid][P][0] = s[0];
pTemp[playerid][P][1] = s[1];
pTemp[playerid][P][2] = s[2];

Потом в
public OnPlayerSpawn(playerid)

SetPlayerPos(playerid,pTemp[playerid][P][0],pTemp[playerid][P][1],pTemp[playerid][P][2]);
Но он спавниться в поле,а не там где умер

Outsider
06.10.2017, 13:55
Вызывай SpawnPlayer() в паблике OnPlayerDeath.

DeimoS
06.10.2017, 15:08
Во-первых, почему не сделать так?

GetPlayerPos(playerid, pTemp[playerid][P][0], pTemp[playerid][P][1], pTemp[playerid][P][2]);
Любите же вы массивы создавать впустую.

Во-вторых, всё должно работать. GetPlayerPos возвращает нормальные координаты в OnPlayerDeath. Проблема где-то в другом месте (либо не доходит до выполнения SetPlayerPos в OnPlayerSpawn, либо переменные обнуляются где-то).

Хотя я бы советовал использовать SetSpawnInfo, а не эти извращения с SetPlyerPos в OnPlayerSpawn.

Vasya_Pupkin
06.10.2017, 16:14
Все сделал спасибо. (можно закрывать)