Игра отказывается показывать панель

  • Официальное уведомление администрации CustomGames.RU
    В связи с масштабным техническим сбоем в инфраструктуре прежнего хостинг-провайдера (Beget), работа форума CustomGames.RU была оперативно перенесена на новую серверную площадку и развёрнута из резервной копии базы данных.

    • Безопасность данных: учётные записи и данные пользователей находятся в полной безопасности. Все пароли и защищаемые параметры хранятся исключительно в криптографически зашифрованном (хэшированном) виде — никаких критических инцидентов для аккаунтов пользователей не произошло.
    • Временные технические ограничения: на этапе синхронизации файлового хранилища часть статических материалов (пользовательские аватары и архивные вложения) временно недоступна. По мере получения доступа к файловым архивам все материалы будут восстановлены в полном объёме.

InternetDuce

Активный
6 Мар 2024
80
6
discord.com
Проект
Sons of Balance
Никак не могу понять почему не открывается панель при начале игры, всё остальное из функции Lua работает, а панель не вылазит
Lua:
function underdark_gamemode:StartRun()
    CustomGameEventManager:Send_ServerToAllClients("show_reward_panel", {})
end
JavaScript:
function CreateRewardPanel() {
    const rootPanel = $.CreatePanel("Panel", $.GetContextPanel(), "reward-menu")

    rootPanel.BLoadLayoutSnippet("rewardPanel")
}

GameEvents.Subscribe("show_reward_panel", CreateRewardPanel)
CSS:
.root {
    width: 100%;
    height: 100%;
}

#reward-menu {
    background-color: darkslategray;
    horizontal-align: center;
    vertical-align: center;
    min-width: 600px;
    height: 400px;
    padding: 20px;
}

#reward-get-label {
    horizontal-align: center;
    vertical-align: top;
    margin-top: 5px;
    color:white;
    font-size: 50px;
}

#reward-block {
    flow-children: right;
    horizontal-align: center;
    vertical-align: center;
}

.reward-one {
    width: 100px;
    height: 100px;
    margin-left: 40px;
}
XML:
<root>
      <styles>
              <include src="file://{resources}/styles/custom_game/give_reward.css" />
      </styles>
      <scripts>
               <include src="file://{resources}/scripts/custom_game/give_reward.js" />
      </scripts>
      <snippets>
              <snippet name="rewardPanel">
                   <Panel>
                       <Label id="reward-get-label" text="Выберите награду" />
                        <Panel id="reward-block">
                              <DOTAAbilityImage class="reward-one" abilityname="antimage_mana_break" showtooltip="true" />
                              <DOTAAbilityImage class="reward-one" abilityname="antimage_mana_break" showtooltip="true" />
                              <DOTAAbilityImage class="reward-one" abilityname="antimage_mana_break" showtooltip="true" />
                        </Panel>
                   </Panel>
               </snippet>         
      </snippets>
      <Panel class="root">
      </Panel>
</root>
 
Ладно, спустя 4 часа с этим я разобрался, теперь вопрос как сделать выдачу абилок
 
Ладно я всё поправил, и абилки теперь выдаются и всё работает, отчасти благодаря чатужпт так что смело им пользуйтесь, но там шансы 50% на 50% что какой-то из предложенных им способов сработает.
 
Реклама: