From 59363163e1952ae1e96129fdcc942ab466e9bd0b Mon Sep 17 00:00:00 2001 From: Greenlamp Date: Fri, 3 May 2024 22:24:52 +0200 Subject: [PATCH] tried to fix the plugin loading issue on prod --- src/battle-scene.ts | 5 +---- src/inputs-controller.ts | 8 ++++---- src/main.ts | 11 ++++++++++- src/ui-inputs.ts | 14 +++++++------- src/ui/abstact-option-select-ui-handler.ts | 2 +- src/ui/achvs-ui-handler.ts | 2 +- src/ui/awaitable-ui-handler.ts | 2 +- src/ui/ball-ui-handler.ts | 2 +- src/ui/battle-message-ui-handler.ts | 2 +- src/ui/command-ui-handler.ts | 2 +- src/ui/confirm-ui-handler.ts | 2 +- src/ui/egg-gacha-ui-handler.ts | 2 +- src/ui/egg-hatch-scene-handler.ts | 2 +- src/ui/egg-list-ui-handler.ts | 2 +- src/ui/evolution-scene-handler.ts | 2 +- src/ui/fight-ui-handler.ts | 2 +- src/ui/form-modal-ui-handler.ts | 2 +- src/ui/game-stats-ui-handler.ts | 2 +- src/ui/menu-ui-handler.ts | 2 +- src/ui/modal-ui-handler.ts | 2 +- src/ui/modifier-select-ui-handler.ts | 2 +- src/ui/party-ui-handler.ts | 2 +- src/ui/save-slot-select-ui-handler.ts | 2 +- src/ui/settings-ui-handler.ts | 2 +- src/ui/starter-select-ui-handler.ts | 2 +- src/ui/summary-ui-handler.ts | 2 +- src/ui/target-select-ui-handler.ts | 2 +- src/ui/ui-handler.ts | 2 +- src/ui/ui.ts | 2 +- src/ui/vouchers-ui-handler.ts | 2 +- 30 files changed, 48 insertions(+), 42 deletions(-) diff --git a/src/battle-scene.ts b/src/battle-scene.ts index a56cf421117..94d4018b120 100644 --- a/src/battle-scene.ts +++ b/src/battle-scene.ts @@ -84,8 +84,6 @@ export type AnySound = Phaser.Sound.WebAudioSound | Phaser.Sound.HTML5AudioSound export default class BattleScene extends SceneBase { public rexUI: UIPlugin; - public inputController: InputsController; - public uiInputs: UiInputs; public sessionPlayTime: integer = null; public masterVolume: number = 0.5; @@ -178,6 +176,7 @@ export default class BattleScene extends SceneBase { constructor() { super('battle'); + Phaser.Plugins.PluginCache.register('UiInputs', UiInputs, 'uiInputs'); initSpecies(); initMoves(); @@ -201,8 +200,6 @@ export default class BattleScene extends SceneBase { } async preload() { - this.load.scenePlugin('inputController', InputsController); - this.load.scenePlugin('uiInputs', UiInputs); if (DEBUG_RNG) { const scene = this; const originalRealInRange = Phaser.Math.RND.realInRange; diff --git a/src/inputs-controller.ts b/src/inputs-controller.ts index 441649a5199..8d2cc6e595d 100644 --- a/src/inputs-controller.ts +++ b/src/inputs-controller.ts @@ -1,10 +1,10 @@ import Phaser, {Time} from "phaser"; import * as Utils from "./utils"; import {initTouchControls} from './touch-controls'; -import pad_generic from "#app/configs/pad_generic"; -import pad_unlicensedSNES from "#app/configs/pad_unlicensedSNES"; -import pad_xbox360 from "#app/configs/pad_xbox360"; -import pad_dualshock from "#app/configs/pad_dualshock"; +import pad_generic from "./configs/pad_generic"; +import pad_unlicensedSNES from "./configs/pad_unlicensedSNES"; +import pad_xbox360 from "./configs/pad_xbox360"; +import pad_dualshock from "./configs/pad_dualshock"; export enum Button { diff --git a/src/main.ts b/src/main.ts index b3b4d5f3cc6..542c979a009 100644 --- a/src/main.ts +++ b/src/main.ts @@ -8,6 +8,8 @@ import InputTextPlugin from 'phaser3-rex-plugins/plugins/inputtext-plugin.js'; import BBCodeText from 'phaser3-rex-plugins/plugins/bbcodetext'; import TransitionImagePackPlugin from 'phaser3-rex-plugins/templates/transitionimagepack/transitionimagepack-plugin.js'; import { LoadingScene } from './loading-scene'; +import {InputsController} from "#app/inputs-controller"; +import {UiInputs} from "#app/ui-inputs"; // Catch global errors and display them in an alert so users can report the issue. @@ -52,6 +54,14 @@ const config: Phaser.Types.Core.GameConfig = { key: 'rexUI', plugin: UIPlugin, mapping: 'rexUI' + }, { + key: 'InputsController', + plugin: InputsController, + mapping: 'inputsController' + }, { + key: 'UiInputs', + plugin: UiInputs, + mapping: 'uiInputs' }] }, input: { @@ -90,7 +100,6 @@ Phaser.GameObjects.NineSlice.prototype.setPositionRelative = setPositionRelative Phaser.GameObjects.Text.prototype.setPositionRelative = setPositionRelative; BBCodeText.prototype.setPositionRelative = setPositionRelative; Phaser.GameObjects.Rectangle.prototype.setPositionRelative = setPositionRelative; - document.fonts.load('16px emerald').then(() => document.fonts.load('10px pkmnems')); let game; diff --git a/src/ui-inputs.ts b/src/ui-inputs.ts index bcdcc34b1fa..03f42db6614 100644 --- a/src/ui-inputs.ts +++ b/src/ui-inputs.ts @@ -1,10 +1,10 @@ import Phaser from "phaser"; -import UI, {Mode} from "./ui/ui"; -import {Button} from "#app/inputs-controller"; -import MessageUiHandler from "#app/ui/message-ui-handler"; -import StarterSelectUiHandler from "#app/ui/starter-select-ui-handler"; -import {Setting, settingOptions} from "#app/system/settings"; -import SettingsUiHandler from "#app/ui/settings-ui-handler"; +import {Mode} from "./ui/ui"; +import {Button} from "./inputs-controller"; +import MessageUiHandler from "./ui/message-ui-handler"; +import StarterSelectUiHandler from "./ui/starter-select-ui-handler"; +import {Setting, settingOptions} from "./system/settings"; +import SettingsUiHandler from "./ui/settings-ui-handler"; export class UiInputs extends Phaser.Plugins.ScenePlugin { @@ -16,10 +16,10 @@ export class UiInputs extends Phaser.Plugins.ScenePlugin { super(scene, pluginManager, pluginKey); this.game = pluginManager.game; this.scene = scene; - this.events = this.scene.inputController.events } boot() { + this.events = this.scene.inputsController.events; this.listenInputs(); } diff --git a/src/ui/abstact-option-select-ui-handler.ts b/src/ui/abstact-option-select-ui-handler.ts index ac2dca03ed3..9ee690a3dc9 100644 --- a/src/ui/abstact-option-select-ui-handler.ts +++ b/src/ui/abstact-option-select-ui-handler.ts @@ -5,7 +5,7 @@ import UiHandler from "./ui-handler"; import { addWindow } from "./ui-theme"; import * as Utils from "../utils"; import { argbFromRgba } from "@material/material-color-utilities"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export interface OptionSelectConfig { xOffset?: number; diff --git a/src/ui/achvs-ui-handler.ts b/src/ui/achvs-ui-handler.ts index 778a5d5f131..5162a5665ee 100644 --- a/src/ui/achvs-ui-handler.ts +++ b/src/ui/achvs-ui-handler.ts @@ -4,7 +4,7 @@ import MessageUiHandler from "./message-ui-handler"; import { TextStyle, addTextObject } from "./text"; import { Mode } from "./ui"; import { addWindow } from "./ui-theme"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class AchvsUiHandler extends MessageUiHandler { private achvsContainer: Phaser.GameObjects.Container; diff --git a/src/ui/awaitable-ui-handler.ts b/src/ui/awaitable-ui-handler.ts index 5d5f0b7a094..45ee7c19efe 100644 --- a/src/ui/awaitable-ui-handler.ts +++ b/src/ui/awaitable-ui-handler.ts @@ -1,7 +1,7 @@ import BattleScene from "../battle-scene"; import { Mode } from "./ui"; import UiHandler from "./ui-handler"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default abstract class AwaitableUiHandler extends UiHandler { protected awaitingActionInput: boolean; diff --git a/src/ui/ball-ui-handler.ts b/src/ui/ball-ui-handler.ts index a4ee6c99d46..a5ea0d74515 100644 --- a/src/ui/ball-ui-handler.ts +++ b/src/ui/ball-ui-handler.ts @@ -6,7 +6,7 @@ import { Command } from "./command-ui-handler"; import { Mode } from "./ui"; import UiHandler from "./ui-handler"; import { addWindow } from "./ui-theme"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class BallUiHandler extends UiHandler { private pokeballSelectContainer: Phaser.GameObjects.Container; diff --git a/src/ui/battle-message-ui-handler.ts b/src/ui/battle-message-ui-handler.ts index 7bba9657cd9..5a3f34de1b7 100644 --- a/src/ui/battle-message-ui-handler.ts +++ b/src/ui/battle-message-ui-handler.ts @@ -6,7 +6,7 @@ import MessageUiHandler from "./message-ui-handler"; import { getStatName, Stat } from "../data/pokemon-stat"; import { addWindow } from "./ui-theme"; import BBCodeText from "phaser3-rex-plugins/plugins/bbcodetext"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class BattleMessageUiHandler extends MessageUiHandler { private levelUpStatsContainer: Phaser.GameObjects.Container; diff --git a/src/ui/command-ui-handler.ts b/src/ui/command-ui-handler.ts index 4c49246ebb6..2e33d32dc47 100644 --- a/src/ui/command-ui-handler.ts +++ b/src/ui/command-ui-handler.ts @@ -5,7 +5,7 @@ import PartyUiHandler, { PartyUiMode } from "./party-ui-handler"; import { Mode } from "./ui"; import UiHandler from "./ui-handler"; import i18next from '../plugins/i18n'; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export enum Command { FIGHT = 0, diff --git a/src/ui/confirm-ui-handler.ts b/src/ui/confirm-ui-handler.ts index 600a84e614d..c79a36de1b5 100644 --- a/src/ui/confirm-ui-handler.ts +++ b/src/ui/confirm-ui-handler.ts @@ -1,7 +1,7 @@ import BattleScene from "../battle-scene"; import AbstractOptionSelectUiHandler, { OptionSelectConfig } from "./abstact-option-select-ui-handler"; import { Mode } from "./ui"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class ConfirmUiHandler extends AbstractOptionSelectUiHandler { private switchCheck: boolean; diff --git a/src/ui/egg-gacha-ui-handler.ts b/src/ui/egg-gacha-ui-handler.ts index 0f8b999ba59..10cce8a78b4 100644 --- a/src/ui/egg-gacha-ui-handler.ts +++ b/src/ui/egg-gacha-ui-handler.ts @@ -9,7 +9,7 @@ import { getPokemonSpecies } from "../data/pokemon-species"; import { addWindow } from "./ui-theme"; import { Tutorial, handleTutorial } from "../tutorial"; import { EggTier } from "../data/enums/egg-type"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; const defaultText = 'Select a machine.'; diff --git a/src/ui/egg-hatch-scene-handler.ts b/src/ui/egg-hatch-scene-handler.ts index fefd5197be2..b93d9a96b94 100644 --- a/src/ui/egg-hatch-scene-handler.ts +++ b/src/ui/egg-hatch-scene-handler.ts @@ -2,7 +2,7 @@ import BattleScene from "../battle-scene"; import { EggHatchPhase } from "../egg-hatch-phase"; import { Mode } from "./ui"; import UiHandler from "./ui-handler"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class EggHatchSceneHandler extends UiHandler { public eggHatchContainer: Phaser.GameObjects.Container; diff --git a/src/ui/egg-list-ui-handler.ts b/src/ui/egg-list-ui-handler.ts index 8271ee00788..5f21d45bc81 100644 --- a/src/ui/egg-list-ui-handler.ts +++ b/src/ui/egg-list-ui-handler.ts @@ -6,7 +6,7 @@ import MessageUiHandler from "./message-ui-handler"; import { EGG_SEED, Egg, GachaType, getEggGachaTypeDescriptor, getEggHatchWavesMessage, getEggDescriptor } from "../data/egg"; import * as Utils from "../utils"; import { addWindow } from "./ui-theme"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class EggListUiHandler extends MessageUiHandler { private eggListContainer: Phaser.GameObjects.Container; diff --git a/src/ui/evolution-scene-handler.ts b/src/ui/evolution-scene-handler.ts index 21b39b593cf..03505d76c19 100644 --- a/src/ui/evolution-scene-handler.ts +++ b/src/ui/evolution-scene-handler.ts @@ -2,7 +2,7 @@ import BattleScene from "../battle-scene"; import MessageUiHandler from "./message-ui-handler"; import { TextStyle, addTextObject } from "./text"; import { Mode } from "./ui"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class EvolutionSceneHandler extends MessageUiHandler { public evolutionContainer: Phaser.GameObjects.Container; diff --git a/src/ui/fight-ui-handler.ts b/src/ui/fight-ui-handler.ts index b35292ebd45..be387776edc 100644 --- a/src/ui/fight-ui-handler.ts +++ b/src/ui/fight-ui-handler.ts @@ -8,7 +8,7 @@ import * as Utils from "../utils"; import { CommandPhase } from "../phases"; import { MoveCategory } from "#app/data/move.js"; import i18next from '../plugins/i18n'; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class FightUiHandler extends UiHandler { private movesContainer: Phaser.GameObjects.Container; diff --git a/src/ui/form-modal-ui-handler.ts b/src/ui/form-modal-ui-handler.ts index 4830bd191f9..24e305d4ad7 100644 --- a/src/ui/form-modal-ui-handler.ts +++ b/src/ui/form-modal-ui-handler.ts @@ -6,7 +6,7 @@ import { WindowVariant, addWindow } from "./ui-theme"; import InputText from "phaser3-rex-plugins/plugins/inputtext"; import * as Utils from "../utils"; import i18next from '../plugins/i18n'; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export interface FormModalConfig extends ModalConfig { errorMessage?: string; diff --git a/src/ui/game-stats-ui-handler.ts b/src/ui/game-stats-ui-handler.ts index 5b271159f4a..d5218241fca 100644 --- a/src/ui/game-stats-ui-handler.ts +++ b/src/ui/game-stats-ui-handler.ts @@ -6,7 +6,7 @@ import { addWindow } from "./ui-theme"; import * as Utils from "../utils"; import { DexAttr, GameData } from "../system/game-data"; import { speciesStarters } from "../data/pokemon-species"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; interface DisplayStat { label?: string; diff --git a/src/ui/menu-ui-handler.ts b/src/ui/menu-ui-handler.ts index 7ce5302aa0e..570cd5d3de9 100644 --- a/src/ui/menu-ui-handler.ts +++ b/src/ui/menu-ui-handler.ts @@ -9,7 +9,7 @@ import { OptionSelectConfig, OptionSelectItem } from "./abstact-option-select-ui import { Tutorial, handleTutorial } from "../tutorial"; import { updateUserInfo } from "../account"; import i18next from '../plugins/i18n'; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export enum MenuOptions { GAME_SETTINGS, diff --git a/src/ui/modal-ui-handler.ts b/src/ui/modal-ui-handler.ts index 507e3292fb9..03bb2ed4acc 100644 --- a/src/ui/modal-ui-handler.ts +++ b/src/ui/modal-ui-handler.ts @@ -3,7 +3,7 @@ import { TextStyle, addTextObject } from "./text"; import { Mode } from "./ui"; import UiHandler from "./ui-handler"; import { WindowVariant, addWindow } from "./ui-theme"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export interface ModalConfig { buttonActions: Function[]; diff --git a/src/ui/modifier-select-ui-handler.ts b/src/ui/modifier-select-ui-handler.ts index 7597503d645..f38be502f6b 100644 --- a/src/ui/modifier-select-ui-handler.ts +++ b/src/ui/modifier-select-ui-handler.ts @@ -6,7 +6,7 @@ import AwaitableUiHandler from "./awaitable-ui-handler"; import { Mode } from "./ui"; import { LockModifierTiersModifier, PokemonHeldItemModifier } from "../modifier/modifier"; import { handleTutorial, Tutorial } from "../tutorial"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export const SHOP_OPTIONS_ROW_LIMIT = 6; diff --git a/src/ui/party-ui-handler.ts b/src/ui/party-ui-handler.ts index 29b0bb85011..e8c583670cf 100644 --- a/src/ui/party-ui-handler.ts +++ b/src/ui/party-ui-handler.ts @@ -16,7 +16,7 @@ import { pokemonEvolutions } from "../data/pokemon-evolutions"; import { addWindow } from "./ui-theme"; import { SpeciesFormChangeItemTrigger } from "../data/pokemon-forms"; import { getVariantTint } from "#app/data/variant"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; const defaultMessage = 'Choose a Pokémon.'; diff --git a/src/ui/save-slot-select-ui-handler.ts b/src/ui/save-slot-select-ui-handler.ts index 07a9283f7e8..511f806f843 100644 --- a/src/ui/save-slot-select-ui-handler.ts +++ b/src/ui/save-slot-select-ui-handler.ts @@ -8,7 +8,7 @@ import * as Utils from "../utils"; import PokemonData from "../system/pokemon-data"; import { PokemonHeldItemModifier } from "../modifier/modifier"; import MessageUiHandler from "./message-ui-handler"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; const sessionSlotCount = 5; diff --git a/src/ui/settings-ui-handler.ts b/src/ui/settings-ui-handler.ts index 6b1b7467d67..f13420d911e 100644 --- a/src/ui/settings-ui-handler.ts +++ b/src/ui/settings-ui-handler.ts @@ -5,7 +5,7 @@ import { TextStyle, addTextObject } from "./text"; import { Mode } from "./ui"; import UiHandler from "./ui-handler"; import { addWindow } from "./ui-theme"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default class SettingsUiHandler extends UiHandler { private settingsContainer: Phaser.GameObjects.Container; diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts index ad3e51d24a2..e09d537bcab 100644 --- a/src/ui/starter-select-ui-handler.ts +++ b/src/ui/starter-select-ui-handler.ts @@ -27,7 +27,7 @@ import { argbFromRgba } from "@material/material-color-utilities"; import { OptionSelectItem } from "./abstact-option-select-ui-handler"; import { pokemonPrevolutions } from "#app/data/pokemon-evolutions"; import { Variant, getVariantTint } from "#app/data/variant"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export type StarterSelectCallback = (starters: Starter[]) => void; diff --git a/src/ui/summary-ui-handler.ts b/src/ui/summary-ui-handler.ts index 4b014b83778..45967b7acf1 100644 --- a/src/ui/summary-ui-handler.ts +++ b/src/ui/summary-ui-handler.ts @@ -17,7 +17,7 @@ import { Nature, getNatureStatMultiplier } from "../data/nature"; import { loggedInUser } from "../account"; import { PlayerGender } from "../system/game-data"; import { Variant, getVariantTint } from "#app/data/variant"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; enum Page { PROFILE, diff --git a/src/ui/target-select-ui-handler.ts b/src/ui/target-select-ui-handler.ts index b5242e713d7..516bf513128 100644 --- a/src/ui/target-select-ui-handler.ts +++ b/src/ui/target-select-ui-handler.ts @@ -5,7 +5,7 @@ import { Mode } from "./ui"; import UiHandler from "./ui-handler"; import * as Utils from "../utils"; import { getMoveTargets } from "../data/move"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export type TargetSelectCallback = (cursor: integer) => void; diff --git a/src/ui/ui-handler.ts b/src/ui/ui-handler.ts index 20f34a33388..cc57594dbc8 100644 --- a/src/ui/ui-handler.ts +++ b/src/ui/ui-handler.ts @@ -1,7 +1,7 @@ import BattleScene from "../battle-scene"; import { TextStyle, getTextColor } from "./text"; import UI, { Mode } from "./ui"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export default abstract class UiHandler { protected scene: BattleScene; diff --git a/src/ui/ui.ts b/src/ui/ui.ts index 0555c54193d..5d634f0305b 100644 --- a/src/ui/ui.ts +++ b/src/ui/ui.ts @@ -35,7 +35,7 @@ import SavingIconHandler from './saving-icon-handler'; import UnavailableModalUiHandler from './unavailable-modal-ui-handler'; import OutdatedModalUiHandler from './outdated-modal-ui-handler'; import SessionReloadModalUiHandler from './session-reload-modal-ui-handler'; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; export enum Mode { MESSAGE, diff --git a/src/ui/vouchers-ui-handler.ts b/src/ui/vouchers-ui-handler.ts index 36926c6fa71..5857118805e 100644 --- a/src/ui/vouchers-ui-handler.ts +++ b/src/ui/vouchers-ui-handler.ts @@ -4,7 +4,7 @@ import MessageUiHandler from "./message-ui-handler"; import { TextStyle, addTextObject } from "./text"; import { Mode } from "./ui"; import { addWindow } from "./ui-theme"; -import {Button} from "#app/inputs-controller"; +import {Button} from "../inputs-controller"; const itemRows = 4; const itemCols = 17;