Jump to content
Korean Random

Leaderboard


Popular Content

Showing content with the highest reputation on 09/16/2019 in all areas

  1. 3 points
    Добрый день. Давно не заходил. Я вроде ничего не наблюдал, чтоб что-то сломалось. ивент, стальная охота, всмысле? у меня работало. Да. На прошлой неделе собрал новую версию, внёс некоторые изменения в код флеша, на днях обновлю.
  2. 3 points
  3. 2 points
    16.09.19 Обновлен конфиг: * Адаптация под последнюю версию мода ◉ Изменения в коде с версии: 8.0.4 >> 8.0.5
  4. 1 point
    Итак, вы уже создали библиотеки lobby.swc, battle.swc и common.swc, а потом программным образом создали окно, а в нём контролы. Всё хорошо, но хотелось бы в визуальный редактор, типа gui-builder. К тому же, чтобы сделать окно, нужно создавать классы, и добавлять в него контент программно. На самом деле это можно делать во Flash, только с некоторыми оговорками. Для начала, рассмотрим как работает GUI в танках. Что мы знаем: есть набор классов net.wg.gui есть файлы gui*.swf c графикой и анимацией во Flash есть возможность использовать символы из внешних swf во Flash есть возможность подключать swc Итак, поехали. Делаем окно с кастомными кнопками - MainView.as import net.wg.gui.components.controls.SoundButtonEx; import net.wg.gui.lobby.header.FightButton; import net.wg.infrastructure.base.AbstractWindowView; import scaleform.clik.events.ButtonEvent; public class MainView extends AbstractWindowView { public var redButton:FightButton; public var buttonNormal:SoundButtonEx; public function MainView() { super(); } override protected function configUI():void { super.configUI(); window.title = "Моё окно"; if (redButton) { // можно смело убрать эти if redButton.label = "Просто кнопка"; } if (buttonNormal) { // можно смело убрать эти if buttonNormal.label = "Закрыть окно"; buttonNormal.addEventListener(ButtonEvent.CLICK, this.onClickHandler); } } override protected function onDispose():void { if (redButton) { // можно смело убрать эти if redButton.dispose(); } if (buttonNormal) { // можно смело убрать эти if buttonNormal.removeEventListener(ButtonEvent.CLICK, this.onClickHandler); buttonNormal.dispose(); } super.onDispose(); } private function onClickHandler(param1:ButtonEvent):void { onWindowCloseS(); } } Создаём пустой Flash, идём в File -> ActionScript Settings... и добавляем в Source Path путь к MainView.as; На втором табе подключаем lobby.swc; снимаем галку "Automatically declare stage instances". В поле Document Class вписываем MainView. Нажимаем Ctrl+L, создаём новый символ - RedButton с классом RedButton ставим галку "Import for runtime sharing" и вписываем в поле "guiControlsLogin.swf". Аналогично, делаем ButtonNormal, только вместо guiControlsLogin.swf импортируем из guiControlsLoginBattle.swf Теперь надо создать инстансы символов. Перетащим на сцену RedButton и назовём его redButton, перетащим ButtonNormal и назовём его buttonNormal (они выглядят пустыми). Вы заметили, что в классе MainView есть два публичных поля с аналогичными именами? Попробуем сделать Publish и полученный файл - MainView.swf - поместим в \res_mods\[VERSION]\gui\flash Когда эта swf загрузится, она будет иметь класс документа MainView, в котором redButton и buttonNormal проинициализируются импортированными символами. Последнее - загрузчик в \res_mods\[VERSION]\scripts\client\gui\mods\mod_test.py: # # mod_test.py # from gui.Scaleform.framework import ViewTypes from gui.Scaleform.framework import g_entitiesFactories, ViewSettings, ScopeTemplates from gui.Scaleform.framework.entities.abstract.AbstractWindowView import AbstractWindowView from gui.app_loader import g_appLoader from gui.app_loader.settings import APP_NAME_SPACE from gui.shared import EVENT_BUS_SCOPE from gui.shared import events from gui.shared import g_eventBus MAIN_VIEW_ALIAS = 'test/mainview' class MainViewMeta(AbstractWindowView): pass class MainView(MainViewMeta): def __init__(self, ctx): super(MainView, self).__init__() def _populate(self): super(MainView, self)._populate() def _dispose(self): super(MainView, self)._dispose() def onWindowClose(self): self.destroy() def onLobbyAppInitialized(event): if event.ns != APP_NAME_SPACE.SF_LOBBY: return app = g_appLoader.getDefLobbyApp() app.loadView(MAIN_VIEW_ALIAS, ctx={}) g_entitiesFactories.addSettings(ViewSettings(MAIN_VIEW_ALIAS, MainView, 'MainView.swf', ViewTypes.WINDOW, None, ScopeTemplates.GLOBAL_SCOPE, False)) # покажем окно сразу после загрузки лобби g_eventBus.addListener(events.AppLifeCycleEvent.INITIALIZED, onLobbyAppInitialized, EVENT_BUS_SCOPE.GLOBAL) Вот такой результат получился у меня, кнопки нажимаются (две голубые кнопки вверху - другой эксперимент): Думаю, теперь понятно, как делать более сложные интерфейсы - надо импротировать другие контролы. Где они находятся, можно выяснить только посмотрев, что внутри файлов gui*.swf Подводные камни: во Flash не видно размеров контролов, вообще ничего не видно (не проверял, но думаю что) не все gui*.swf можно использовать, некоторые - не загружены
  5. 1 point
  6. 1 point
    @Sergei Nik так попробуй: "{{py:sight.allyTarget=al?союзник|{{py:sight.allyTarget=en?противник}}}}"
  7. 1 point
    Человек спросил,я ответил,часто это очень выручает,учитывая сколько обнов в последнее время,уже потом Рома флешки обновляет с версией
  8. 1 point
    ЭКСТРЕННЫЕ НОВОСТИ, это таки будет завтра, 17 сентября 2019 года. Дошик, это был нож в спину. ---------------------------------------------------------------------------------------------------------------------------- Более того, 23.09.2019 (в следующий понедельник) будет очередной микропатч (без контента, включение гонок) Новые каталоги модификаций: ./mods/1.6.0.8/ и ./res_mods/1.6.0.8/ ПОЗДРАВЛЯЮ НАС С НОВЫМ РЕКОРДОМ! И вот уже вот этот микропатч рискует быть последним в линейке 1.6.0.
  9. 1 point
    в com.modxvm.xfw.actionscript_бла-бла.wotmod версию поправить в xfw_package.json и пересобрать пакет само собой..
  10. 1 point
    зачем вообще нужен этот мод сейчас если по союзникам теперь можно стрелять без проблем?
  11. 1 point
    Жек, можешь его вообще отовсюду удалить, его уже давным-давно никто не юзает.
  12. 1 point
    12.09.19 Обновлен конфиг: * Адаптация под последнюю версию мода ◉ Изменения в коде с версии: 8.0.3 >> 8.0.4
  13. 1 point
    29.08.19 Обновлен конфиг: * Адаптация под последнюю версию мода ◉ Изменения в коде с версии: 8.0.2 >> 8.0.3
  14. 1 point
  15. 1 point
  16. 1 point
    встречайте Обновлённые и доработанные версии Dev1 & SeVeRRR Dev1 ссылка изменения: -обновлены показатели Рейтингов по шкале ХВМ -добавлен свободный опыт -доработаны и изменены некоторые средние показатели (теперь отображение именно средних показателей с соответствующими цветами) -обновлены иконки под актуальный патч (возможность замены на любые другие) -мелкие правки SeVeRRR ссылка изменения: -обновлены показатели Рейтингов по шкале ХВМ -добавлен свободный опыт -доработаны и изменены некоторые средние показатели (теперь отображение именно средних показателей с соответствующими цветами) -значки М-5 настроены по цвету Рейтинга (Олени удалены) -мелкие правки ............................................... другие конфигурации этого мода можно скачать здесь или на wotsite (Meddio, Torero, WN8, N0C0ntr0l, Mr_Keyn и NooBooL 2018)
×
×
  • Create New...