- 5 Июн 2023
- 83
- 3
Помогите пожалуйста я не понимаю как сделать так чтобы улучшение от шарда давалось не шардом а скипетром
Для изменения местами шарда и аганима в DotA 2 без полного изменения способностей, вам потребуется использовать Lua-скриптинг и работать с соответствующими функциями и переменными.Помогите пожалуйста я не понимаю как сделать так чтобы улучшение от шарда давалось не шардом а скипетром
local heroShard = {}
local heroAghanim = {}
function OnHeroSpawned(event)
local hero = event.hero
local playerID = hero:GetPlayerID()
-- Проверяем наличие шарда и аганима у героя
if hero:HasModifier("modifier_item_aghanims_shard") then
heroShard[playerID] = true
else
heroShard[playerID] = false
end
if hero:HasModifier("modifier_item_ultimate_scepter_consumed") then
heroAghanim[playerID] = true
else
heroAghanim[playerID] = false
end
end
function SwapShardAndAghanim(playerID)
local hero = PlayerResource:GetSelectedHeroEntity(playerID)
-- Проверяем текущее состояние героя
local hasShard = heroShard[playerID]
local hasAghanim = heroAghanim[playerID]
-- Меняем местами шард и аганим
if hasShard then
hero:RemoveModifierByName("modifier_item_aghanims_shard")
hero:AddNewModifier(hero, nil, "modifier_item_ultimate_scepter_consumed", {})
heroShard[playerID] = false
heroAghanim[playerID] = true
elseif hasAghanim then
hero:RemoveModifierByName("modifier_item_ultimate_scepter_consumed")
hero:AddNewModifier(hero, nil, "modifier_item_aghanims_shard", {})
heroShard[playerID] = true
heroAghanim[playerID] = false
end
end
SwapShardAndAghanim для конкретного игрока, чтобы поменять местами шард и аганим у его героя.local heroShard = {}
local heroAghanim = {}
function OnHeroSpawned(event)
local hero = event.hero
local playerID = hero:GetPlayerID()
-- Проверяем наличие шарда и аганима у героя
if hero:HasModifier("modifier_item_aghanims_shard") then
heroShard[playerID] = true
else
heroShard[playerID] = false
end
if hero:HasModifier("modifier_item_ultimate_scepter_consumed") then
heroAghanim[playerID] = true
else
heroAghanim[playerID] = false
end
end
function SwapShardAndAghanim(playerID)
local hero = PlayerResource:GetSelectedHeroEntity(playerID)
-- Проверяем текущее состояние героя
local hasShard = heroShard[playerID]
local hasAghanim = heroAghanim[playerID]
-- Меняем местами шард и аганим
if hasShard then
hero:RemoveModifierByName("modifier_item_aghanims_shard")
hero:AddNewModifier(hero, nil, "modifier_item_ultimate_scepter_consumed", {})
heroShard[playerID] = false
heroAghanim[playerID] = true
elseif hasAghanim then
hero:RemoveModifierByName("modifier_item_ultimate_scepter_consumed")
hero:AddNewModifier(hero, nil, "modifier_item_aghanims_shard", {})
heroShard[playerID] = true
heroAghanim[playerID] = false
end
end
Да, смысл мне думать над реализацией когда это может сделать AI , а мне лишь надо подумать строки кода если они не верныТы через Chat GPT ответ сделал )?
Харош )Да, смысл мне думать над реализацией когда это может сделать AI , а мне лишь надо подумать строки кода если они не верны
Идея = пример