I'm developing a custom interface to modify hero cosmetics and showcase animations within a DOTAScenePanel. My current setup uses the following code:
<DOTAScenePanel class="scene" id="scene" map="maps/ui/dota_hud_loadout_2022" particleonly="false" unit="npc_dota_hero_axe"/>
While I'm aware of the ReplaceEconItemSlot method, it requires prior execution of SetScenePanelToLocalHero, which adds an undesired pedestal beneath the hero.
To circumvent this, I'm exploring the possibility of directly modifying cosmetics using FireEntityInput. I've successfully implemented a method to remove cosmetics:
scene.FireEntityInput(
"*",
"RunScriptCode",
if thisEntity:GetClassname() == 'dota_item_wearable' then thisEntity:SetContextThink('delete',function() UTIL_Remove(thisEntity) end,0) end)
However, I'm unsure how to modify or replace cosmetics using this approach.
Additionally, I'm seeking methods to trigger specific animations for the hero within the scene panel.
My questions are:
How can I modify or replace hero cosmetics in a DOTAScenePanel using FireEntityInput or a similar method?
What methods are available to change the hero's pose or animation in this context?