HappyFeedFriends
Друзья CG
- 14 Авг 2017
- 540
- 32
- Проект
- Battle Heroes Arena
Вроде в самой панели они описаны?!Как в js получить глобальные координаты панели?
Вроде в самой панели они описаны?!Как в js получить глобальные координаты панели?
Скорее всего это прописано в коде конкретно для омнислеша, варда и крутилки, так как остальные способности можно использовать прямо в ульте.Как можно заглушить определённую способность и потом её активировать? (Как ульт Джаггера блокирует использование омнислеша)
self:RefundManaCost()
self:EndCooldown()
CDOTA_BaseNPC:CastAbilityNoTarget(handle ability, int playerIndex)
--либо так, если нужно кастовать прям мгновенно.
CDOTABaseAbility:CastAbility()
Может он имеет ввиду как топоры у тролля?Скорее всего это прописано в коде конкретно для омнислеша, варда и крутилки, так как остальные способности можно использовать прямо в ульте.
Прописываешь в OnSpellStart способности нужную проверку и если ее нужно блокировать, то записываешь куда-то, что ее нужно потом вызвать, а также:
А затем активируешьLua:self:RefundManaCost() self:EndCooldown()
Lua:CDOTA_BaseNPC:CastAbilityNoTarget(handle ability, int playerIndex) --либо так, если нужно кастовать прям мгновенно. CDOTABaseAbility:CastAbility()
function CAddonTemplateGameMode:OnEntityKilled( keys )
local killed_unit = EntIndexToHScript( keys.entindex_killed )
local killer = EntIndexToHScript( keys.entindex_attacker )
if killed_unit:GetUnitName() == "npc_dota_neutral_kobold" then
for i = 0, PlayerResource:GetPlayerCount() - 1 do
local gold = 322 -- кол-во голды
local player = PlayerResource:GetSelectedHeroEntity(i)
if player:GetTeam() == killer:GetTeam() then
player:ModifyGold( gold, true, 0 )
end
end
end
end
1)FindUnitsInRadius() IsAlive()Подскажите пожалуйста, вот я выдрал в недрах форума вот такой код:
он дает 322 голды за убийство крипа всей команде, не важно как далеко от крипа ты находился и был ли мертв.Код:function CAddonTemplateGameMode:OnEntityKilled( keys ) local killed_unit = EntIndexToHScript( keys.entindex_killed ) local killer = EntIndexToHScript( keys.entindex_attacker ) if killed_unit:GetUnitName() == "npc_dota_neutral_kobold" then for i = 0, PlayerResource:GetPlayerCount() - 1 do local gold = 322 -- кол-во голды local player = PlayerResource:GetSelectedHeroEntity(i) if player:GetTeam() == killer:GetTeam() then player:ModifyGold( gold, true, 0 ) end end end end
Я был бы очень благодарен если бы вы мне помогли понять или подправить этот код, чтобы голду давало только живым героям и в определенном радиусе от крипа.
И еще вопрос, если у меня 20 видов крипов и я хочу чтобы за каждого из них давало по разному, то мне надо 20 таких функций?
И что делать с опытом, сейчас он работает как надо, но из npc_units_custom. Т.е. там например 200 опыта за крипа делится между героями в определенном радиусе. или это не правильно?
1)FindUnitsInRadius() IsAlive()
2)нет, тебе нужно 20 проверок на имена юнитов, или через массив сделай... то есть таблицу, как её тут
3)?????
function CAddonTemplateGameMode:OnEntityKilled( keys )
local killed_unit = EntIndexToHScript( keys.entindex_killed )
local killer = EntIndexToHScript( keys.entindex_attacker )
if killed_unit:GetUnitName() == "npc_dota_neutral_kobold" then
local enemies = FindUnitsInRadius( DOTA_TEAM_NEUTRALS, tpoint, FIND_UNITS_EVERYWHERE, 300, DOTA_UNIT_TARGET_TEAM_NONE, DOTA_UNIT_TARGET_ALL, DOTA_UNIT_TARGET_FLAG_NONE, FIND_ANY_ORDER, false )
if #enemies > 0 then
for _,enemy in pairs( enemies ) do
local gold = 322 -- кол-во голды
local player = PlayerResource:GetSelectedHeroEntity(i)
if player:GetTeam() == killer:GetTeam() then
player:ModifyGold( gold, true, 0 )
end
end
end
end
MODIFIER_PROPERTY_MOVESPEED_LIMITКак задать минимальную скорость передвижения или запретить некоторым героям и юнитам передвигаться? Дота позволяет только 100 мса сделать, не меньше. А нужно, чтобы скорость была равна 0, но при этом все функции героя сохранялись.
Скорее всего только делать каждые 0.03Как работает блокирование снарядов у 1 скилла клинка? И можно их отражать обратно во врагов?
ProjectileManager:ProjectileDodge( unit )
MODIFIER_PROPERTY_REFLECT_SPELL
Саму карту вроде нельзя, но это тебе к разрыву crumbling island arena или чека на его гитхабе. У него вроде что-то с островам там.Здравствуйте у меня вопрос, как сделать что бы через определенное время менялась карта
Например: Была карта номер 1 прошло 5 минут и карта поменялась на 2?
Делаешь несколько локаций в одной карте, а потом ограничиваешь движение камеры при смене раундовЗдравствуйте у меня вопрос, как сделать что бы через определенное время менялась карта
Например: Была карта номер 1 прошло 5 минут и карта поменялась на 2?
SpawnEntityFromTableSynchronous( "world_bounds", { Min = Vector( 2, 2, 8 ), Max = Vector( 3, 2, 2) } )
Если ты про те, что выше. Разве не работают?Можно ли сделать, чтобы символы unicode работали для print?
Код:┌───┬───┐ │ │ │ └───┴───┘
Неа, пишет вот такую хрень вместо них: âЕсли ты про те, что выше. Разве не работают?