Спавн

Slavko

Продвинутый
22 Июн 2015
224
4
Как заспавнить героя в определенных координатах ? Например, как в жизни на арене игроков тпшит на дуэль.
 

M@G

Пользователь
1 Авг 2015
63
0
Есть другая проблема:
в хамере в определенном месте стоит info_player_start_goodguys. Герой спавнится используя FORCE_PICKED_HERO. Никаких дополнительных CreateHeroForPlayer не прописывалось. Если использовать GetAbsOrigin в OnPlayerPickHero (events.lua), то выдаваемая позиция совпадает с тем местом, где герой спавнится. Но если попытаться использовать эту же команду в OnHeroInGame(gamemode.lua), то выдается (0,0,0).
Казалось бы, можно OnHeroInGame не использовать. Но если к герою прикрепить абилку и добавить эффект (партиклы) при касте с параметром "Target" "CASTER", то эти партиклы создаются не в месте, где стоит герой, а в позиции (0,0,0).

Имеется ли какое-то объяснение этому? И если есть, то как это можно обойти?
 
Последнее редактирование модератором:

doter.ua

Продвинутый
17 Авг 2014
280
5
M@G, выведи в консоль все аргументы (обычно keys), мб там есть что-то полезное.
UPDATE: если ты про barebones, то OnHeroInGame самодельная функция, вызываемая из события нпс спавнед. https://github.com/bmddota/barebone.../scripts/vscripts/internal/events.lua#L39-L47
и это https://github.com/bmddota/barebone...barebones/scripts/vscripts/events.lua#L26-L35

исток: ListenToGameEvent('npc_spawned', Dynamic_Wrap(GameMode, 'OnNPCSpawned'), self)
 

M@G

Пользователь
1 Авг 2015
63
0
Эмм. Entity и индексы одинаковые, позиции разные... оО

problem1.jpg
 

doter.ua

Продвинутый
17 Авг 2014
280
5
M@G, если я не ошибаюсь, то hero и entity индексы - разные вещи. У героя должен быть свой ентитиИД кроме хироИД.
 

M@G

Пользователь
1 Авг 2015
63
0
С партиклами разобрался. У меня отсутствовали ControlPointEntities.

В общем, немного странная структура у barebones. OnHeroInGame срабатывал через OnNPCSpawned раньше, чем OnPlayerPickHero, и при этом брал какой-то левый энтити. В итоге я стал вызывать OnHeroInGame через OnPlayerPickHero и передавать ему нормальную сущность героя. А _OnNPCSpawned, который в интернал, теперь больше не нужен. Profit!:)
 
Реклама: