Простые вопросы #2

Статус
В этой теме нельзя размещать новые ответы.
разъясните пожалуйста значения функции findunitsradius() (скилл хочу сделать чтобы атаковал в радиусе аое)
 
Как поставить на карту респавн крипов? Помогите пожалуйста,сколько на формуе находил,не помогало ничего...
 
Не могу понять что не так со скриптом

function tp1(event)
local unit = event.activator
local wws= "teleporter_start_r_end"

local ent = Entities:FindByName( nil, wws)
local point = ent:GetAbsOrigin()
event.activator:SetAbsOrigin( point )
FindClearSpaceForUnit(event.activator, point, false)
event.activator:Stop()
require('timers')
PlayerResource:SetCameraTarget(event.activator:GetPlayerOwnerID(), event.activator)
Timers:CreateTimer(0.1, function()
PlayerResource:SetCameraTarget(event.activator:GetPlayerOwnerID(), nil)
return nil
end)
end

Выдает ошибку :
Script Runtime Error: ...ddons\thunderscotrpg\scripts\vscripts\teleportertest.lua:6: attempt to index local 'ent' (a nil value)
stack traceback:
...ddons\thunderscotrpg\scripts\vscripts\teleportertest.lua:6: in function <...ddons\thunderscotrpg\scripts\vscripts\teleportertest.lua:1>

Также таймерсы есть и лежат в папке vscripts

И прошу переписать скрипт/помочь мне решить проблемку , а то хочу что бы телепорт был идеальным так сказать
 

Вложения

  • таймер.png
    таймер.png
    2 KB · Просмотры: 5
Отдаю приказ юниту через CastAbilityNoTarget кастовать CHANNELLED спелл, но чанеллинг не начинается, а выполняется только OnSpellStart() абилки. Если нажимать скилл в игре у героя или юнита, то все норм
Попробуй SetChanneling, и перед этим сделай юниту Interrupt
 
я это знаю, я не понимаю что они значат вот это ( iTeamNumber, vPosition, hCacheUnit, flRadius, iTeamFilter, iTypeFilter, iFlagFilter, iOrder, bCanGrowCache ) в скобках, что обычно расставляется вместо них?
https://translate.google.com/?hl=ru
https://github.com/search?q=FindUnitsInRadius&type=Code
В шаблонах (в частности в lua_abilities_example) есть примеры использования
iTeamNumber - команда для относительного поиска (нужно для iTeamFilter).
vPosition - все-таки попробуй сам догадаться
hCacheUnit - юзлесс помойка. Ставь nil
flRadius - секретный параметр, тайна назначения которого не постижима даже для древних мудрецов и величайших мыслителей современности.
iTeamFilter - фильтр по команде (DOTA_UNIT_TARGET_TEAM)
iTypeFilter - фильтр по типу (DOTA_UNIT_TARGET_TYPE)
iFlagFilter - [ОСТОРОЖНО! ШОК КОНТЕНТ!!1] фильтр по флагу (DOTA_UNIT_TARGET_FLAGS)
iOrder - ставь 0
bCanGrowCache - ставь false
 
файл.lua:строка
Попробуй SetChanneling, и перед этим сделай юниту Interrupt
SetLevel(1) надо было добавить, но неизвестно тогда как OnSpellStart выполнялся, не вкаченной абилки, что еще интересно в экшн панели юнита, нету этого скилла, он появляется без иконки(черный квадрат) при добавлении абилки, а затем исчезает(но юнит его кастует[OnChannelFinish выполняется через 5 сек{GetChannelTime() 5 сек}]), так же не отображается сама полоска чанелинга при клике на юнита. Держу в курсе
 
файл.lua:строка

SetLevel(1) надо было добавить, но неизвестно тогда как OnSpellStart выполнялся, не вкаченной абилки, что еще интересно в экшн панели юнита, нету этого скилла, он появляется без иконки(черный квадрат) при добавлении абилки, а затем исчезает(но юнит его кастует[OnChannelFinish выполняется через 5 сек{GetChannelTime() 5 сек}]), так же не отображается сама полоска чанелинга при клике на юнита. Держу в курсе
У невкачаных абилок все параметры по дефолту - 0. Вот у него и было ChannelTime 0
 
Не могу понять что не так со скриптом

function tp1(event)
local unit = event.activator
local wws= "teleporter_start_r_end"

local ent = Entities:FindByName( nil, wws)
local point = ent:GetAbsOrigin()
event.activator:SetAbsOrigin( point )
FindClearSpaceForUnit(event.activator, point, false)
event.activator:Stop()
require('timers')
PlayerResource:SetCameraTarget(event.activator:GetPlayerOwnerID(), event.activator)
Timers:CreateTimer(0.1, function()
PlayerResource:SetCameraTarget(event.activator:GetPlayerOwnerID(), nil)
return nil
end)
end

Выдает ошибку :
Script Runtime Error: ...ddons\thunderscotrpg\scripts\vscripts\teleportertest.lua:6: attempt to index local 'ent' (a nil value)
stack traceback:
...ddons\thunderscotrpg\scripts\vscripts\teleportertest.lua:6: in function <...ddons\thunderscotrpg\scripts\vscripts\teleportertest.lua:1>

Также таймерсы есть и лежат в папке vscripts

И прошу переписать скрипт/помочь мне решить проблемку , а то хочу что бы телепорт был идеальным так сказать
ету такого энтити у тебя на карте в момент использования данного скрипта.
 
https://translate.google.com/?hl=ru
https://github.com/search?q=FindUnitsInRadius&type=Code
В шаблонах (в частности в lua_abilities_example) есть примеры использования
iTeamNumber - команда для относительного поиска (нужно для iTeamFilter).
vPosition - все-таки попробуй сам догадаться
hCacheUnit - юзлесс помойка. Ставь nil
flRadius - секретный параметр, тайна назначения которого не постижима даже для древних мудрецов и величайших мыслителей современности.
iTeamFilter - фильтр по команде (DOTA_UNIT_TARGET_TEAM)
iTypeFilter - фильтр по типу (DOTA_UNIT_TARGET_TYPE)
iFlagFilter - [ОСТОРОЖНО! ШОК КОНТЕНТ!!1] фильтр по флагу (DOTA_UNIT_TARGET_FLAGS)
iOrder - ставь 0
bCanGrowCache - ставь false
Ставить ордер тип его значением,а не строго сделанной переменной,оох,уже вижу как Габен меняет значение и всё ломается.
 
У невкачаных абилок все параметры по дефолту - 0. Вот у него и было ChannelTime 0
крч после удаления надо не сразу выдавать новые абилки, а с задержкой - Timers:CreateTimer( FrameTime(), function(), теоретически после удаления хендла абилки слот остается занятым, из-за чего новые неизвестно куда выдаются( и абилка в экшн панели появилась и время чанелинга можно отслеживать при клике)
 
Был у кого багич,когда абила полученная через addability() не работала (прекешил),но она тупо не работает как должна. (Абилки дотовские имеются ввиду)
 
Был у кого багич,когда абила полученная через addability() не работала (прекешил),но она тупо не работает как должна. (Абилки дотовские имеются ввиду)
Какая именно абилка и для какого героя?
Сетлевел делал?
 
Собираюсь делать карту по частям так как не хочу отвлекаться на другие участки. Как мне сделать что бы переносить участок карты на основную карту с возможностью редактирования? и возможно ли это?
 
Статус
В этой теме нельзя размещать новые ответы.
Реклама: