Revert "Disable egg gacha in rewards (#3304)"
This reverts commit 3a87c8657f
.
This commit is contained in:
parent
8d469fe3af
commit
ffbca5516d
|
@ -41,8 +41,8 @@ export default class MenuUiHandler extends MessageUiHandler {
|
||||||
|
|
||||||
private cursorObj: Phaser.GameObjects.Image;
|
private cursorObj: Phaser.GameObjects.Image;
|
||||||
|
|
||||||
private excludedMenus: () => ConditionalMenu[];
|
protected ignoredMenuOptions: MenuOptions[];
|
||||||
private menuOptions: MenuOptions[];
|
protected menuOptions: MenuOptions[];
|
||||||
|
|
||||||
protected manageDataConfig: OptionSelectConfig;
|
protected manageDataConfig: OptionSelectConfig;
|
||||||
protected communityConfig: OptionSelectConfig;
|
protected communityConfig: OptionSelectConfig;
|
||||||
|
@ -53,19 +53,13 @@ export default class MenuUiHandler extends MessageUiHandler {
|
||||||
constructor(scene: BattleScene, mode?: Mode) {
|
constructor(scene: BattleScene, mode?: Mode) {
|
||||||
super(scene, mode);
|
super(scene, mode);
|
||||||
|
|
||||||
this.excludedMenus = () => [
|
this.ignoredMenuOptions = !bypassLogin
|
||||||
{ condition: [Mode.COMMAND, Mode.TITLE].includes(mode ?? Mode.TITLE), options: [ MenuOptions.EGG_GACHA, MenuOptions.EGG_LIST] },
|
? [ ]
|
||||||
{ condition: bypassLogin, options: [ MenuOptions.LOG_OUT ] }
|
: [ MenuOptions.LOG_OUT ];
|
||||||
];
|
this.menuOptions = Utils.getEnumKeys(MenuOptions).map(m => parseInt(MenuOptions[m]) as MenuOptions).filter(m => !this.ignoredMenuOptions.includes(m));
|
||||||
|
|
||||||
this.menuOptions = Utils.getEnumKeys(MenuOptions)
|
|
||||||
.map(m => parseInt(MenuOptions[m]) as MenuOptions)
|
|
||||||
.filter(m => {
|
|
||||||
return !this.excludedMenus().some(exclusion => exclusion.condition && exclusion.options.includes(m));
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
setup(): void {
|
setup() {
|
||||||
const ui = this.getUi();
|
const ui = this.getUi();
|
||||||
// wiki url directs based on languges available on wiki
|
// wiki url directs based on languges available on wiki
|
||||||
const lang = i18next.resolvedLanguage.substring(0,2);
|
const lang = i18next.resolvedLanguage.substring(0,2);
|
||||||
|
@ -87,25 +81,10 @@ export default class MenuUiHandler extends MessageUiHandler {
|
||||||
this.menuOverlay.setOrigin(0,0);
|
this.menuOverlay.setOrigin(0,0);
|
||||||
this.menuContainer.add(this.menuOverlay);
|
this.menuContainer.add(this.menuOverlay);
|
||||||
|
|
||||||
this.menuContainer.add(this.bgmBar);
|
const menuMessageText = addTextObject(this.scene, 8, 8, "", TextStyle.WINDOW, { maxLines: 2 });
|
||||||
|
menuMessageText.setName("menu-message");
|
||||||
this.menuContainer.setVisible(false);
|
menuMessageText.setWordWrapWidth(1224);
|
||||||
|
menuMessageText.setOrigin(0, 0);
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
render() {
|
|
||||||
const ui = this.getUi();
|
|
||||||
this.excludedMenus = () => [
|
|
||||||
{ condition: ![Mode.COMMAND, Mode.TITLE].includes(ui.getModeChain()[0]), options: [ MenuOptions.EGG_GACHA, MenuOptions.EGG_LIST] },
|
|
||||||
{ condition: bypassLogin, options: [ MenuOptions.LOG_OUT ] }
|
|
||||||
];
|
|
||||||
|
|
||||||
this.menuOptions = Utils.getEnumKeys(MenuOptions)
|
|
||||||
.map(m => parseInt(MenuOptions[m]) as MenuOptions)
|
|
||||||
.filter(m => {
|
|
||||||
return !this.excludedMenus().some(exclusion => exclusion.condition && exclusion.options.includes(m));
|
|
||||||
});
|
|
||||||
|
|
||||||
this.optionSelectText = addTextObject(this.scene, 0, 0, this.menuOptions.map(o => `${i18next.t(`menuUiHandler:${MenuOptions[o]}`)}`).join("\n"), TextStyle.WINDOW, { maxLines: this.menuOptions.length });
|
this.optionSelectText = addTextObject(this.scene, 0, 0, this.menuOptions.map(o => `${i18next.t(`menuUiHandler:${MenuOptions[o]}`)}`).join("\n"), TextStyle.WINDOW, { maxLines: this.menuOptions.length });
|
||||||
this.optionSelectText.setLineSpacing(12);
|
this.optionSelectText.setLineSpacing(12);
|
||||||
|
@ -130,12 +109,10 @@ export default class MenuUiHandler extends MessageUiHandler {
|
||||||
menuMessageBox.setOrigin(0, 0);
|
menuMessageBox.setOrigin(0, 0);
|
||||||
this.menuMessageBoxContainer.add(menuMessageBox);
|
this.menuMessageBoxContainer.add(menuMessageBox);
|
||||||
|
|
||||||
const menuMessageText = addTextObject(this.scene, 8, 8, "", TextStyle.WINDOW, { maxLines: 2 });
|
|
||||||
menuMessageText.setName("menu-message");
|
|
||||||
menuMessageText.setWordWrapWidth(1224);
|
|
||||||
menuMessageText.setOrigin(0, 0);
|
|
||||||
this.menuMessageBoxContainer.add(menuMessageText);
|
this.menuMessageBoxContainer.add(menuMessageText);
|
||||||
|
|
||||||
|
this.menuContainer.add(this.bgmBar);
|
||||||
|
|
||||||
this.message = menuMessageText;
|
this.message = menuMessageText;
|
||||||
|
|
||||||
this.menuContainer.add(this.menuMessageBoxContainer);
|
this.menuContainer.add(this.menuMessageBoxContainer);
|
||||||
|
@ -294,18 +271,15 @@ export default class MenuUiHandler extends MessageUiHandler {
|
||||||
xOffset: 98,
|
xOffset: 98,
|
||||||
options: communityOptions
|
options: communityOptions
|
||||||
};
|
};
|
||||||
|
|
||||||
this.setCursor(0);
|
this.setCursor(0);
|
||||||
|
|
||||||
|
this.menuContainer.setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
show(args: any[]): boolean {
|
show(args: any[]): boolean {
|
||||||
this.render();
|
|
||||||
super.show(args);
|
|
||||||
|
|
||||||
this.menuOptions = Utils.getEnumKeys(MenuOptions)
|
super.show(args);
|
||||||
.map(m => parseInt(MenuOptions[m]) as MenuOptions)
|
|
||||||
.filter(m => {
|
|
||||||
return !this.excludedMenus().some(exclusion => exclusion.condition && exclusion.options.includes(m));
|
|
||||||
});
|
|
||||||
|
|
||||||
this.menuContainer.setVisible(true);
|
this.menuContainer.setVisible(true);
|
||||||
this.setCursor(0);
|
this.setCursor(0);
|
||||||
|
@ -332,7 +306,7 @@ export default class MenuUiHandler extends MessageUiHandler {
|
||||||
|
|
||||||
if (button === Button.ACTION) {
|
if (button === Button.ACTION) {
|
||||||
let adjustedCursor = this.cursor;
|
let adjustedCursor = this.cursor;
|
||||||
for (const imo of this.excludedMenus().find(e => e.condition).options.sort()) {
|
for (const imo of this.ignoredMenuOptions) {
|
||||||
if (adjustedCursor >= imo) {
|
if (adjustedCursor >= imo) {
|
||||||
adjustedCursor++;
|
adjustedCursor++;
|
||||||
} else {
|
} else {
|
||||||
|
@ -537,8 +511,3 @@ export default class MenuUiHandler extends MessageUiHandler {
|
||||||
this.cursorObj = null;
|
this.cursorObj = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
interface ConditionalMenu {
|
|
||||||
condition: boolean;
|
|
||||||
options: MenuOptions[];
|
|
||||||
}
|
|
||||||
|
|
|
@ -543,8 +543,4 @@ export default class UI extends Phaser.GameObjects.Container {
|
||||||
this.revertMode().then(success => Utils.executeIf(success, this.revertModes).then(() => resolve()));
|
this.revertMode().then(success => Utils.executeIf(success, this.revertModes).then(() => resolve()));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public getModeChain(): Mode[] {
|
|
||||||
return this.modeChain;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue