mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-05 07:52:17 +02:00
Merge branch 'pagefaultgames:main' into main
This commit is contained in:
commit
c27daa8132
2
.github/workflows/deploy.yml
vendored
2
.github/workflows/deploy.yml
vendored
@ -29,5 +29,5 @@ jobs:
|
|||||||
- name: Deploy build on server
|
- name: Deploy build on server
|
||||||
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
|
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
|
||||||
run: |
|
run: |
|
||||||
rsync --del -vrm dist/* ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.DESTINATION_DIR }}
|
rsync --del --no-times --checksum -vrm dist/* ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.DESTINATION_DIR }}
|
||||||
ssh -t ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "~/prmanifest --inpath ${{ secrets.DESTINATION_DIR }} --outpath ${{ secrets.DESTINATION_DIR }}/manifest.json"
|
ssh -t ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "~/prmanifest --inpath ${{ secrets.DESTINATION_DIR }} --outpath ${{ secrets.DESTINATION_DIR }}/manifest.json"
|
||||||
|
@ -21,6 +21,7 @@ import { ModifierPoolType, getDefaultModifierTypeForTier, getEnemyModifierTypesF
|
|||||||
import AbilityBar from './ui/ability-bar';
|
import AbilityBar from './ui/ability-bar';
|
||||||
import { BlockItemTheftAbAttr, DoubleBattleChanceAbAttr, IncrementMovePriorityAbAttr, applyAbAttrs, initAbilities } from './data/ability';
|
import { BlockItemTheftAbAttr, DoubleBattleChanceAbAttr, IncrementMovePriorityAbAttr, applyAbAttrs, initAbilities } from './data/ability';
|
||||||
import { Abilities } from "./data/enums/abilities";
|
import { Abilities } from "./data/enums/abilities";
|
||||||
|
import { allAbilities } from "./data/ability";
|
||||||
import Battle, { BattleType, FixedBattleConfig, fixedBattles } from './battle';
|
import Battle, { BattleType, FixedBattleConfig, fixedBattles } from './battle';
|
||||||
import { GameMode, GameModes, gameModes } from './game-mode';
|
import { GameMode, GameModes, gameModes } from './game-mode';
|
||||||
import FieldSpritePipeline from './pipelines/field-sprite';
|
import FieldSpritePipeline from './pipelines/field-sprite';
|
||||||
@ -808,6 +809,7 @@ export default class BattleScene extends SceneBase {
|
|||||||
const localizable: Localizable[] = [
|
const localizable: Localizable[] = [
|
||||||
...allSpecies,
|
...allSpecies,
|
||||||
...allMoves,
|
...allMoves,
|
||||||
|
...allAbilities,
|
||||||
...Utils.getEnumValues(ModifierPoolType).map(mpt => getModifierPoolForType(mpt)).map(mp => Object.values(mp).flat().map(mt => mt.modifierType).filter(mt => 'localize' in mt).map(lpb => lpb as unknown as Localizable)).flat()
|
...Utils.getEnumValues(ModifierPoolType).map(mpt => getModifierPoolForType(mpt)).map(mp => Object.values(mp).flat().map(mt => mt.modifierType).filter(mt => 'localize' in mt).map(lpb => lpb as unknown as Localizable)).flat()
|
||||||
];
|
];
|
||||||
for (let item of localizable)
|
for (let item of localizable)
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -5662,7 +5662,8 @@ export function initMoves() {
|
|||||||
new AttackMove(Moves.PIKA_PAPOW, Type.ELECTRIC, MoveCategory.SPECIAL, -1, -1, 20, -1, 0, 7)
|
new AttackMove(Moves.PIKA_PAPOW, Type.ELECTRIC, MoveCategory.SPECIAL, -1, -1, 20, -1, 0, 7)
|
||||||
.attr(FriendshipPowerAttr),
|
.attr(FriendshipPowerAttr),
|
||||||
new AttackMove(Moves.BOUNCY_BUBBLE, Type.WATER, MoveCategory.SPECIAL, 60, 100, 20, -1, 0, 7)
|
new AttackMove(Moves.BOUNCY_BUBBLE, Type.WATER, MoveCategory.SPECIAL, 60, 100, 20, -1, 0, 7)
|
||||||
.attr(HitHealAttr),
|
.attr(HitHealAttr)
|
||||||
|
.triageMove(),
|
||||||
new AttackMove(Moves.BUZZY_BUZZ, Type.ELECTRIC, MoveCategory.SPECIAL, 60, 100, 20, 100, 0, 7)
|
new AttackMove(Moves.BUZZY_BUZZ, Type.ELECTRIC, MoveCategory.SPECIAL, 60, 100, 20, 100, 0, 7)
|
||||||
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
|
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
|
||||||
new AttackMove(Moves.SIZZLY_SLIDE, Type.FIRE, MoveCategory.PHYSICAL, 60, 100, 20, 100, 0, 7)
|
new AttackMove(Moves.SIZZLY_SLIDE, Type.FIRE, MoveCategory.PHYSICAL, 60, 100, 20, 100, 0, 7)
|
||||||
|
1244
src/locales/en/ability.ts
Normal file
1244
src/locales/en/ability.ts
Normal file
File diff suppressed because it is too large
Load Diff
1244
src/locales/es/ability.ts
Normal file
1244
src/locales/es/ability.ts
Normal file
File diff suppressed because it is too large
Load Diff
1244
src/locales/fr/ability.ts
Normal file
1244
src/locales/fr/ability.ts
Normal file
File diff suppressed because it is too large
Load Diff
@ -213,7 +213,7 @@ export class PokemonReviveModifierType extends PokemonHpRestoreModifierType {
|
|||||||
return null;
|
return null;
|
||||||
}), iconImage, 'revive');
|
}), iconImage, 'revive');
|
||||||
|
|
||||||
this.description = `Revive one Pokémon and restore ${restorePercent}% HP.`;
|
this.description = `Revives one Pokémon and restores ${restorePercent}% HP`;
|
||||||
this.selectFilter = (pokemon: PlayerPokemon) => {
|
this.selectFilter = (pokemon: PlayerPokemon) => {
|
||||||
if (pokemon.hp)
|
if (pokemon.hp)
|
||||||
return PartyUiHandler.NoEffectMessage;
|
return PartyUiHandler.NoEffectMessage;
|
||||||
@ -224,7 +224,7 @@ export class PokemonReviveModifierType extends PokemonHpRestoreModifierType {
|
|||||||
|
|
||||||
export class PokemonStatusHealModifierType extends PokemonModifierType {
|
export class PokemonStatusHealModifierType extends PokemonModifierType {
|
||||||
constructor(name: string) {
|
constructor(name: string) {
|
||||||
super(name, `Heal any status ailment for one Pokémon.`,
|
super(name, `Heals any status ailment for one Pokémon`,
|
||||||
((_type, args) => new Modifiers.PokemonStatusHealModifier(this, (args[0] as PlayerPokemon).id)),
|
((_type, args) => new Modifiers.PokemonStatusHealModifier(this, (args[0] as PlayerPokemon).id)),
|
||||||
((pokemon: PlayerPokemon) => {
|
((pokemon: PlayerPokemon) => {
|
||||||
if (!pokemon.hp || !pokemon.status)
|
if (!pokemon.hp || !pokemon.status)
|
||||||
|
@ -8,6 +8,10 @@ import { move as enMove } from '../locales/en/move';
|
|||||||
import { move as esMove } from '../locales/es/move';
|
import { move as esMove } from '../locales/es/move';
|
||||||
import { move as frMove } from '../locales/fr/move';
|
import { move as frMove } from '../locales/fr/move';
|
||||||
|
|
||||||
|
import { ability as enAbility } from '../locales/en/ability';
|
||||||
|
import { ability as esAbility } from '../locales/es/ability';
|
||||||
|
import { ability as frAbility } from '../locales/fr/ability';
|
||||||
|
|
||||||
import { pokeball as enPokeball } from '../locales/en/pokeball';
|
import { pokeball as enPokeball } from '../locales/en/pokeball';
|
||||||
import { pokeball as esPokeball } from '../locales/es/pokeball';
|
import { pokeball as esPokeball } from '../locales/es/pokeball';
|
||||||
import { pokeball as frPokeball } from '../locales/fr/pokeball';
|
import { pokeball as frPokeball } from '../locales/fr/pokeball';
|
||||||
@ -39,6 +43,15 @@ export interface MoveTranslationEntries {
|
|||||||
[key: string]: MoveTranslationEntry
|
[key: string]: MoveTranslationEntry
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export interface AbilityTranslationEntry {
|
||||||
|
name: string,
|
||||||
|
description: string
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface AbilityTranslationEntries {
|
||||||
|
[key: string]: AbilityTranslationEntry
|
||||||
|
}
|
||||||
|
|
||||||
export interface Localizable {
|
export interface Localizable {
|
||||||
localize(): void;
|
localize(): void;
|
||||||
}
|
}
|
||||||
@ -74,6 +87,7 @@ export function initI18n(): void {
|
|||||||
en: {
|
en: {
|
||||||
menu: enMenu,
|
menu: enMenu,
|
||||||
move: enMove,
|
move: enMove,
|
||||||
|
ability: enAbility,
|
||||||
pokeball: enPokeball,
|
pokeball: enPokeball,
|
||||||
pokemon: enPokemon,
|
pokemon: enPokemon,
|
||||||
pokemonStat: enPokemonStat,
|
pokemonStat: enPokemonStat,
|
||||||
@ -82,6 +96,7 @@ export function initI18n(): void {
|
|||||||
es: {
|
es: {
|
||||||
menu: esMenu,
|
menu: esMenu,
|
||||||
move: esMove,
|
move: esMove,
|
||||||
|
ability: esAbility,
|
||||||
pokeball: esPokeball,
|
pokeball: esPokeball,
|
||||||
pokemon: esPokemon,
|
pokemon: esPokemon,
|
||||||
pokemonStat: esPokemonStat,
|
pokemonStat: esPokemonStat,
|
||||||
@ -90,6 +105,7 @@ export function initI18n(): void {
|
|||||||
fr: {
|
fr: {
|
||||||
menu: frMenu,
|
menu: frMenu,
|
||||||
move: frMove,
|
move: frMove,
|
||||||
|
ability: frAbility,
|
||||||
pokeball: frPokeball,
|
pokeball: frPokeball,
|
||||||
pokemon: frPokemon,
|
pokemon: frPokemon,
|
||||||
pokemonStat: frPokemonStat,
|
pokemonStat: frPokemonStat,
|
||||||
@ -109,6 +125,7 @@ declare module 'i18next' {
|
|||||||
resources: {
|
resources: {
|
||||||
menu: typeof enMenu;
|
menu: typeof enMenu;
|
||||||
move: typeof enMove;
|
move: typeof enMove;
|
||||||
|
ability: typeof enAbility;
|
||||||
pokeball: typeof enPokeball;
|
pokeball: typeof enPokeball;
|
||||||
pokemon: typeof enPokemon;
|
pokemon: typeof enPokemon;
|
||||||
pokemonStat: typeof enPokemonStat;
|
pokemonStat: typeof enPokemonStat;
|
||||||
|
@ -59,7 +59,7 @@ export default class LoginFormUiHandler extends FormModalUiHandler {
|
|||||||
};
|
};
|
||||||
if (!this.inputs[0].text)
|
if (!this.inputs[0].text)
|
||||||
return onFail(i18next.t('menu:emptyUsername'));
|
return onFail(i18next.t('menu:emptyUsername'));
|
||||||
Utils.apiPost(`account/login`, `username=${this.inputs[0].text}&password=${this.inputs[1].text}`, 'application/x-www-form-urlencoded')
|
Utils.apiPost(`account/login`, `username=${encodeURIComponent(this.inputs[0].text)}&password=${encodeURIComponent(this.inputs[1].text)}`, 'application/x-www-form-urlencoded')
|
||||||
.then(response => {
|
.then(response => {
|
||||||
if (!response.ok)
|
if (!response.ok)
|
||||||
return response.text();
|
return response.text();
|
||||||
|
@ -285,13 +285,13 @@ export default class ModifierSelectUiHandler extends AwaitableUiHandler {
|
|||||||
ui.showText(options[this.cursor].modifierTypeOption.type.getDescription(this.scene));
|
ui.showText(options[this.cursor].modifierTypeOption.type.getDescription(this.scene));
|
||||||
} else if (!cursor) {
|
} else if (!cursor) {
|
||||||
this.cursorObj.setPosition(6, this.lockRarityButtonContainer.visible ? -72 : -60);
|
this.cursorObj.setPosition(6, this.lockRarityButtonContainer.visible ? -72 : -60);
|
||||||
ui.showText('Spend money to reroll your item options');
|
ui.showText('Spend money to reroll your item options.');
|
||||||
} else if (cursor === 1) {
|
} else if (cursor === 1) {
|
||||||
this.cursorObj.setPosition((this.scene.game.canvas.width / 6) - 50, -60);
|
this.cursorObj.setPosition((this.scene.game.canvas.width / 6) - 50, -60);
|
||||||
ui.showText('Transfer a held item from one Pokémon to another');
|
ui.showText('Transfer a held item from one Pokémon to another.');
|
||||||
} else {
|
} else {
|
||||||
this.cursorObj.setPosition(6, -60);
|
this.cursorObj.setPosition(6, -60);
|
||||||
ui.showText('Lock item rarities on reroll (affects reroll cost)');
|
ui.showText('Lock item rarities on reroll (affects reroll cost).');
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
Loading…
Reference in New Issue
Block a user