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

Статус
В этой теме нельзя размещать новые ответы.
Что тут не так? Пишет что проблема в GetMaxMana()
Lua:
function modifier_mana_percentage_beg:GetModifierConstantManaRegen( params )
local manaspend = self:GetMaxMana() * (-1) + -50
    return manaspend
end
 
Что тут не так? Пишет что проблема в GetMaxMana()
Lua:
function modifier_mana_percentage_beg:GetModifierConstantManaRegen( params )
local manaspend = self:GetMaxMana() * (-1) + -50
    return manaspend
end
В том, что у модификатора нет метода GetMaxMana()
 
Можно ли сделать абилку на которую не будет распространяться "MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE"?
 
Можно ли сделать абилку на которую не будет распространяться "MODIFIER_PROPERTY_COOLDOWN_PERCENTAGE"?
Сетапить кд через StartCooldown()


Как хэндлить предметы юнита?, как у лон друида на медведе, если через таблицу то с++ удаляет если нет живого entity....
 
Проще говоря как сделать медведя лон друида? (саму способность), мой вариант работает только если перепризывать юнита, т.к если он умрёт и пройдет 6 секунд то все его данные будут стёрты из компилера и он не сможет найти данные в таблице. (В данный момент именно так)
 
Проще говоря как сделать медведя лон друида? (саму способность), мой вариант работает только если перепризывать юнита, т.к если он умрёт и пройдет 6 секунд то все его данные будут стёрты из компилера и он не сможет найти данные в таблице. (В данный момент именно так)
Я не очень в луа разбираюсь, но что если, данные о мишке хранить в самой абилке? Сохранять данные при смерти или каждые 0.03 сек?
 
Проще говоря как сделать медведя лон друида? (саму способность), мой вариант работает только если перепризывать юнита, т.к если он умрёт и пройдет 6 секунд то все его данные будут стёрты из компилера и он не сможет найти данные в таблице. (В данный момент именно так)
Уж незнаю насколько это правильно работает ,но у меня сделано таким образом

Код:
        if caster.bear then     
            local unit = caster.bear
            item_table = {}
            for i = 0, 8 do
                local item = unit:GetItemInSlot( i )

                if item ~= nil then         
                    table.insert(item_table , item)
                end
                
            end
            

            
        end

        -- Create the unit and make it controllable
        caster.bear = CreateUnitByName(unit_name, origin, true, caster, caster, caster:GetTeamNumber())
        caster.bear:SetControllableByPlayer(player, true)
            local items = item_table or {}
             for _,item in pairs(items) do   
                 caster.bear:AddItem(item)
             end
 
Уж незнаю насколько это правильно работает ,но у меня сделано таким образом

Код:
        if caster.bear then    
            local unit = caster.bear
            item_table = {}
            for i = 0, 8 do
                local item = unit:GetItemInSlot( i )

                if item ~= nil then        
                    table.insert(item_table , item)
                end
               
            end
           

           
        end

        -- Create the unit and make it controllable
        caster.bear = CreateUnitByName(unit_name, origin, true, caster, caster, caster:GetTeamNumber())
        caster.bear:SetControllableByPlayer(player, true)
            local items = item_table or {}
             for _,item in pairs(items) do  
                 caster.bear:AddItem(item)
             end
Попробую но я думал таблицу надо создать если её нет if not caster.bear then caster.bear, и если у тебя медведь умирает то сохраняются ли у тебя предметы в нём?..... у меня почему то нет хоть и странным непонятным образом написал.... хД, а так еще раз спасибо.
 
Script Runtime Error: ...путь/к/файлу.lua:24: attempt to call method 'GetForwardVector' (a nil value) в консоли, абилка работает как надо и красных надписей на экране нет, объясните плз что пытается сказать мне консоль, сама строка self.direction = self.caster:GetForwardVector()
 
Последнее редактирование:
Script Runtime Error: ...путь/к/файлу.lua:24: attempt to call method 'GetForwardVector' (a nil value) в консоли, абилка работает как надо и красных надписей на экране нет, объясните плз что пытается сказать мне консоль, сама строка self.direction = self.caster:GetForwardVector()
IsServer()
 
ConcreteEntityList: approaching limit, allocating entity chuck 18/20 for ents [9216 -> 9728]
ConcreteEntityList: approaching limit, allocating entity chuck 19/20 for ents [9728 -> 10000]
Not enough edict slots remaining to combine items!
Not enough edict slots remaining to combine items!
Not enough edict slots remaining to combine items!
=== Top-20 Entity List Summary (server.dll) ===
class ent_dota_tree - 507 instances (100.00%)
=== Total: 507/10,000 non-networkable entities ===
=== Top-20 Entity List Summary (server.dll) ===
class dota_item_wearable - 2,979 instances (29.98%)
class generic_hidden - 733 instances (7.38%)
class item_tpscroll - 366 instances (3.68%)
class npc_dota_creep_neutral - 349 instances (3.51%)
class npc_dota_hero_juggernaut - 273 instances (2.75%)
class special_bonus_hp_600 - 249 instances (2.51%)
class npc_dota_hero_meepo - 240 instances (2.42%)
class special_bonus_movement_speed_20 - 221 instances (2.22%)
class special_bonus_unique_juggernaut_2 - 137 instances (1.38%)
class special_bonus_unique_juggernaut_3 - 137 instances (1.38%)
class special_bonus_armor_10 - 137 instances (1.38%)
class special_bonus_attack_speed_25 - 137 instances (1.38%)
class special_bonus_unique_juggernaut - 137 instances (1.38%)
class special_bonus_all_stats_5 - 137 instances (1.38%)
class juggernaut_omni_slash - 137 instances (1.38%)
class juggernaut_blade_dance - 137 instances (1.38%)
class juggernaut_healing_ward - 137 instances (1.38%)
class juggernaut_blade_fury - 137 instances (1.38%)
class npc_dota_creep_lane - 135 instances (1.36%)
class special_bonus_unique_meepo_2 - 112 instances (1.13%)
=== Total: 9,936/10,000 networkable entities (listed 7,027) ===
Ran out of networkable entities! (See console spew for entity list summary)

Что делать??
 
Перестать создавать тысячи предметов
 
Статус
В этой теме нельзя размещать новые ответы.
Реклама: