tried to fix the plugin loading issue on prod

This commit is contained in:
Greenlamp 2024-05-03 22:24:52 +02:00
parent 7715dbd993
commit 59363163e1
30 changed files with 48 additions and 42 deletions

View File

@ -84,8 +84,6 @@ export type AnySound = Phaser.Sound.WebAudioSound | Phaser.Sound.HTML5AudioSound
export default class BattleScene extends SceneBase { export default class BattleScene extends SceneBase {
public rexUI: UIPlugin; public rexUI: UIPlugin;
public inputController: InputsController;
public uiInputs: UiInputs;
public sessionPlayTime: integer = null; public sessionPlayTime: integer = null;
public masterVolume: number = 0.5; public masterVolume: number = 0.5;
@ -178,6 +176,7 @@ export default class BattleScene extends SceneBase {
constructor() { constructor() {
super('battle'); super('battle');
Phaser.Plugins.PluginCache.register('UiInputs', UiInputs, 'uiInputs');
initSpecies(); initSpecies();
initMoves(); initMoves();
@ -201,8 +200,6 @@ export default class BattleScene extends SceneBase {
} }
async preload() { async preload() {
this.load.scenePlugin('inputController', InputsController);
this.load.scenePlugin('uiInputs', UiInputs);
if (DEBUG_RNG) { if (DEBUG_RNG) {
const scene = this; const scene = this;
const originalRealInRange = Phaser.Math.RND.realInRange; const originalRealInRange = Phaser.Math.RND.realInRange;

View File

@ -1,10 +1,10 @@
import Phaser, {Time} from "phaser"; import Phaser, {Time} from "phaser";
import * as Utils from "./utils"; import * as Utils from "./utils";
import {initTouchControls} from './touch-controls'; import {initTouchControls} from './touch-controls';
import pad_generic from "#app/configs/pad_generic"; import pad_generic from "./configs/pad_generic";
import pad_unlicensedSNES from "#app/configs/pad_unlicensedSNES"; import pad_unlicensedSNES from "./configs/pad_unlicensedSNES";
import pad_xbox360 from "#app/configs/pad_xbox360"; import pad_xbox360 from "./configs/pad_xbox360";
import pad_dualshock from "#app/configs/pad_dualshock"; import pad_dualshock from "./configs/pad_dualshock";
export enum Button { export enum Button {

View File

@ -8,6 +8,8 @@ import InputTextPlugin from 'phaser3-rex-plugins/plugins/inputtext-plugin.js';
import BBCodeText from 'phaser3-rex-plugins/plugins/bbcodetext'; import BBCodeText from 'phaser3-rex-plugins/plugins/bbcodetext';
import TransitionImagePackPlugin from 'phaser3-rex-plugins/templates/transitionimagepack/transitionimagepack-plugin.js'; import TransitionImagePackPlugin from 'phaser3-rex-plugins/templates/transitionimagepack/transitionimagepack-plugin.js';
import { LoadingScene } from './loading-scene'; 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. // 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', key: 'rexUI',
plugin: UIPlugin, plugin: UIPlugin,
mapping: 'rexUI' mapping: 'rexUI'
}, {
key: 'InputsController',
plugin: InputsController,
mapping: 'inputsController'
}, {
key: 'UiInputs',
plugin: UiInputs,
mapping: 'uiInputs'
}] }]
}, },
input: { input: {
@ -90,7 +100,6 @@ Phaser.GameObjects.NineSlice.prototype.setPositionRelative = setPositionRelative
Phaser.GameObjects.Text.prototype.setPositionRelative = setPositionRelative; Phaser.GameObjects.Text.prototype.setPositionRelative = setPositionRelative;
BBCodeText.prototype.setPositionRelative = setPositionRelative; BBCodeText.prototype.setPositionRelative = setPositionRelative;
Phaser.GameObjects.Rectangle.prototype.setPositionRelative = setPositionRelative; Phaser.GameObjects.Rectangle.prototype.setPositionRelative = setPositionRelative;
document.fonts.load('16px emerald').then(() => document.fonts.load('10px pkmnems')); document.fonts.load('16px emerald').then(() => document.fonts.load('10px pkmnems'));
let game; let game;

View File

@ -1,10 +1,10 @@
import Phaser from "phaser"; import Phaser from "phaser";
import UI, {Mode} from "./ui/ui"; import {Mode} from "./ui/ui";
import {Button} from "#app/inputs-controller"; import {Button} from "./inputs-controller";
import MessageUiHandler from "#app/ui/message-ui-handler"; import MessageUiHandler from "./ui/message-ui-handler";
import StarterSelectUiHandler from "#app/ui/starter-select-ui-handler"; import StarterSelectUiHandler from "./ui/starter-select-ui-handler";
import {Setting, settingOptions} from "#app/system/settings"; import {Setting, settingOptions} from "./system/settings";
import SettingsUiHandler from "#app/ui/settings-ui-handler"; import SettingsUiHandler from "./ui/settings-ui-handler";
export class UiInputs extends Phaser.Plugins.ScenePlugin { export class UiInputs extends Phaser.Plugins.ScenePlugin {
@ -16,10 +16,10 @@ export class UiInputs extends Phaser.Plugins.ScenePlugin {
super(scene, pluginManager, pluginKey); super(scene, pluginManager, pluginKey);
this.game = pluginManager.game; this.game = pluginManager.game;
this.scene = scene; this.scene = scene;
this.events = this.scene.inputController.events
} }
boot() { boot() {
this.events = this.scene.inputsController.events;
this.listenInputs(); this.listenInputs();
} }

View File

@ -5,7 +5,7 @@ import UiHandler from "./ui-handler";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import * as Utils from "../utils"; import * as Utils from "../utils";
import { argbFromRgba } from "@material/material-color-utilities"; import { argbFromRgba } from "@material/material-color-utilities";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export interface OptionSelectConfig { export interface OptionSelectConfig {
xOffset?: number; xOffset?: number;

View File

@ -4,7 +4,7 @@ import MessageUiHandler from "./message-ui-handler";
import { TextStyle, addTextObject } from "./text"; import { TextStyle, addTextObject } from "./text";
import { Mode } from "./ui"; import { Mode } from "./ui";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class AchvsUiHandler extends MessageUiHandler { export default class AchvsUiHandler extends MessageUiHandler {
private achvsContainer: Phaser.GameObjects.Container; private achvsContainer: Phaser.GameObjects.Container;

View File

@ -1,7 +1,7 @@
import BattleScene from "../battle-scene"; import BattleScene from "../battle-scene";
import { Mode } from "./ui"; import { Mode } from "./ui";
import UiHandler from "./ui-handler"; import UiHandler from "./ui-handler";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default abstract class AwaitableUiHandler extends UiHandler { export default abstract class AwaitableUiHandler extends UiHandler {
protected awaitingActionInput: boolean; protected awaitingActionInput: boolean;

View File

@ -6,7 +6,7 @@ import { Command } from "./command-ui-handler";
import { Mode } from "./ui"; import { Mode } from "./ui";
import UiHandler from "./ui-handler"; import UiHandler from "./ui-handler";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class BallUiHandler extends UiHandler { export default class BallUiHandler extends UiHandler {
private pokeballSelectContainer: Phaser.GameObjects.Container; private pokeballSelectContainer: Phaser.GameObjects.Container;

View File

@ -6,7 +6,7 @@ import MessageUiHandler from "./message-ui-handler";
import { getStatName, Stat } from "../data/pokemon-stat"; import { getStatName, Stat } from "../data/pokemon-stat";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import BBCodeText from "phaser3-rex-plugins/plugins/bbcodetext"; 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 { export default class BattleMessageUiHandler extends MessageUiHandler {
private levelUpStatsContainer: Phaser.GameObjects.Container; private levelUpStatsContainer: Phaser.GameObjects.Container;

View File

@ -5,7 +5,7 @@ import PartyUiHandler, { PartyUiMode } from "./party-ui-handler";
import { Mode } from "./ui"; import { Mode } from "./ui";
import UiHandler from "./ui-handler"; import UiHandler from "./ui-handler";
import i18next from '../plugins/i18n'; import i18next from '../plugins/i18n';
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export enum Command { export enum Command {
FIGHT = 0, FIGHT = 0,

View File

@ -1,7 +1,7 @@
import BattleScene from "../battle-scene"; import BattleScene from "../battle-scene";
import AbstractOptionSelectUiHandler, { OptionSelectConfig } from "./abstact-option-select-ui-handler"; import AbstractOptionSelectUiHandler, { OptionSelectConfig } from "./abstact-option-select-ui-handler";
import { Mode } from "./ui"; import { Mode } from "./ui";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class ConfirmUiHandler extends AbstractOptionSelectUiHandler { export default class ConfirmUiHandler extends AbstractOptionSelectUiHandler {
private switchCheck: boolean; private switchCheck: boolean;

View File

@ -9,7 +9,7 @@ import { getPokemonSpecies } from "../data/pokemon-species";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import { Tutorial, handleTutorial } from "../tutorial"; import { Tutorial, handleTutorial } from "../tutorial";
import { EggTier } from "../data/enums/egg-type"; import { EggTier } from "../data/enums/egg-type";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
const defaultText = 'Select a machine.'; const defaultText = 'Select a machine.';

View File

@ -2,7 +2,7 @@ import BattleScene from "../battle-scene";
import { EggHatchPhase } from "../egg-hatch-phase"; import { EggHatchPhase } from "../egg-hatch-phase";
import { Mode } from "./ui"; import { Mode } from "./ui";
import UiHandler from "./ui-handler"; import UiHandler from "./ui-handler";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class EggHatchSceneHandler extends UiHandler { export default class EggHatchSceneHandler extends UiHandler {
public eggHatchContainer: Phaser.GameObjects.Container; public eggHatchContainer: Phaser.GameObjects.Container;

View File

@ -6,7 +6,7 @@ import MessageUiHandler from "./message-ui-handler";
import { EGG_SEED, Egg, GachaType, getEggGachaTypeDescriptor, getEggHatchWavesMessage, getEggDescriptor } from "../data/egg"; import { EGG_SEED, Egg, GachaType, getEggGachaTypeDescriptor, getEggHatchWavesMessage, getEggDescriptor } from "../data/egg";
import * as Utils from "../utils"; import * as Utils from "../utils";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class EggListUiHandler extends MessageUiHandler { export default class EggListUiHandler extends MessageUiHandler {
private eggListContainer: Phaser.GameObjects.Container; private eggListContainer: Phaser.GameObjects.Container;

View File

@ -2,7 +2,7 @@ import BattleScene from "../battle-scene";
import MessageUiHandler from "./message-ui-handler"; import MessageUiHandler from "./message-ui-handler";
import { TextStyle, addTextObject } from "./text"; import { TextStyle, addTextObject } from "./text";
import { Mode } from "./ui"; import { Mode } from "./ui";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class EvolutionSceneHandler extends MessageUiHandler { export default class EvolutionSceneHandler extends MessageUiHandler {
public evolutionContainer: Phaser.GameObjects.Container; public evolutionContainer: Phaser.GameObjects.Container;

View File

@ -8,7 +8,7 @@ import * as Utils from "../utils";
import { CommandPhase } from "../phases"; import { CommandPhase } from "../phases";
import { MoveCategory } from "#app/data/move.js"; import { MoveCategory } from "#app/data/move.js";
import i18next from '../plugins/i18n'; import i18next from '../plugins/i18n';
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class FightUiHandler extends UiHandler { export default class FightUiHandler extends UiHandler {
private movesContainer: Phaser.GameObjects.Container; private movesContainer: Phaser.GameObjects.Container;

View File

@ -6,7 +6,7 @@ import { WindowVariant, addWindow } from "./ui-theme";
import InputText from "phaser3-rex-plugins/plugins/inputtext"; import InputText from "phaser3-rex-plugins/plugins/inputtext";
import * as Utils from "../utils"; import * as Utils from "../utils";
import i18next from '../plugins/i18n'; import i18next from '../plugins/i18n';
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export interface FormModalConfig extends ModalConfig { export interface FormModalConfig extends ModalConfig {
errorMessage?: string; errorMessage?: string;

View File

@ -6,7 +6,7 @@ import { addWindow } from "./ui-theme";
import * as Utils from "../utils"; import * as Utils from "../utils";
import { DexAttr, GameData } from "../system/game-data"; import { DexAttr, GameData } from "../system/game-data";
import { speciesStarters } from "../data/pokemon-species"; import { speciesStarters } from "../data/pokemon-species";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
interface DisplayStat { interface DisplayStat {
label?: string; label?: string;

View File

@ -9,7 +9,7 @@ import { OptionSelectConfig, OptionSelectItem } from "./abstact-option-select-ui
import { Tutorial, handleTutorial } from "../tutorial"; import { Tutorial, handleTutorial } from "../tutorial";
import { updateUserInfo } from "../account"; import { updateUserInfo } from "../account";
import i18next from '../plugins/i18n'; import i18next from '../plugins/i18n';
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export enum MenuOptions { export enum MenuOptions {
GAME_SETTINGS, GAME_SETTINGS,

View File

@ -3,7 +3,7 @@ import { TextStyle, addTextObject } from "./text";
import { Mode } from "./ui"; import { Mode } from "./ui";
import UiHandler from "./ui-handler"; import UiHandler from "./ui-handler";
import { WindowVariant, addWindow } from "./ui-theme"; import { WindowVariant, addWindow } from "./ui-theme";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export interface ModalConfig { export interface ModalConfig {
buttonActions: Function[]; buttonActions: Function[];

View File

@ -6,7 +6,7 @@ import AwaitableUiHandler from "./awaitable-ui-handler";
import { Mode } from "./ui"; import { Mode } from "./ui";
import { LockModifierTiersModifier, PokemonHeldItemModifier } from "../modifier/modifier"; import { LockModifierTiersModifier, PokemonHeldItemModifier } from "../modifier/modifier";
import { handleTutorial, Tutorial } from "../tutorial"; import { handleTutorial, Tutorial } from "../tutorial";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export const SHOP_OPTIONS_ROW_LIMIT = 6; export const SHOP_OPTIONS_ROW_LIMIT = 6;

View File

@ -16,7 +16,7 @@ import { pokemonEvolutions } from "../data/pokemon-evolutions";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import { SpeciesFormChangeItemTrigger } from "../data/pokemon-forms"; import { SpeciesFormChangeItemTrigger } from "../data/pokemon-forms";
import { getVariantTint } from "#app/data/variant"; import { getVariantTint } from "#app/data/variant";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
const defaultMessage = 'Choose a Pokémon.'; const defaultMessage = 'Choose a Pokémon.';

View File

@ -8,7 +8,7 @@ import * as Utils from "../utils";
import PokemonData from "../system/pokemon-data"; import PokemonData from "../system/pokemon-data";
import { PokemonHeldItemModifier } from "../modifier/modifier"; import { PokemonHeldItemModifier } from "../modifier/modifier";
import MessageUiHandler from "./message-ui-handler"; import MessageUiHandler from "./message-ui-handler";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
const sessionSlotCount = 5; const sessionSlotCount = 5;

View File

@ -5,7 +5,7 @@ import { TextStyle, addTextObject } from "./text";
import { Mode } from "./ui"; import { Mode } from "./ui";
import UiHandler from "./ui-handler"; import UiHandler from "./ui-handler";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default class SettingsUiHandler extends UiHandler { export default class SettingsUiHandler extends UiHandler {
private settingsContainer: Phaser.GameObjects.Container; private settingsContainer: Phaser.GameObjects.Container;

View File

@ -27,7 +27,7 @@ import { argbFromRgba } from "@material/material-color-utilities";
import { OptionSelectItem } from "./abstact-option-select-ui-handler"; import { OptionSelectItem } from "./abstact-option-select-ui-handler";
import { pokemonPrevolutions } from "#app/data/pokemon-evolutions"; import { pokemonPrevolutions } from "#app/data/pokemon-evolutions";
import { Variant, getVariantTint } from "#app/data/variant"; import { Variant, getVariantTint } from "#app/data/variant";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export type StarterSelectCallback = (starters: Starter[]) => void; export type StarterSelectCallback = (starters: Starter[]) => void;

View File

@ -17,7 +17,7 @@ import { Nature, getNatureStatMultiplier } from "../data/nature";
import { loggedInUser } from "../account"; import { loggedInUser } from "../account";
import { PlayerGender } from "../system/game-data"; import { PlayerGender } from "../system/game-data";
import { Variant, getVariantTint } from "#app/data/variant"; import { Variant, getVariantTint } from "#app/data/variant";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
enum Page { enum Page {
PROFILE, PROFILE,

View File

@ -5,7 +5,7 @@ import { Mode } from "./ui";
import UiHandler from "./ui-handler"; import UiHandler from "./ui-handler";
import * as Utils from "../utils"; import * as Utils from "../utils";
import { getMoveTargets } from "../data/move"; import { getMoveTargets } from "../data/move";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export type TargetSelectCallback = (cursor: integer) => void; export type TargetSelectCallback = (cursor: integer) => void;

View File

@ -1,7 +1,7 @@
import BattleScene from "../battle-scene"; import BattleScene from "../battle-scene";
import { TextStyle, getTextColor } from "./text"; import { TextStyle, getTextColor } from "./text";
import UI, { Mode } from "./ui"; import UI, { Mode } from "./ui";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
export default abstract class UiHandler { export default abstract class UiHandler {
protected scene: BattleScene; protected scene: BattleScene;

View File

@ -35,7 +35,7 @@ import SavingIconHandler from './saving-icon-handler';
import UnavailableModalUiHandler from './unavailable-modal-ui-handler'; import UnavailableModalUiHandler from './unavailable-modal-ui-handler';
import OutdatedModalUiHandler from './outdated-modal-ui-handler'; import OutdatedModalUiHandler from './outdated-modal-ui-handler';
import SessionReloadModalUiHandler from './session-reload-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 { export enum Mode {
MESSAGE, MESSAGE,

View File

@ -4,7 +4,7 @@ import MessageUiHandler from "./message-ui-handler";
import { TextStyle, addTextObject } from "./text"; import { TextStyle, addTextObject } from "./text";
import { Mode } from "./ui"; import { Mode } from "./ui";
import { addWindow } from "./ui-theme"; import { addWindow } from "./ui-theme";
import {Button} from "#app/inputs-controller"; import {Button} from "../inputs-controller";
const itemRows = 4; const itemRows = 4;
const itemCols = 17; const itemCols = 17;