Commit Graph

393 Commits

Author SHA1 Message Date
Yentis
3f9eaf4a5d
Add setting for showing type effectiveness hints (#1061)
* type hints

* fix overwritten change

* don't set color to white, just leave it unchanged

* remove unrelated code

* don't show hints if no opponents, use type effectiveness instead of move effectiveness

* fix color not going back to white when new opponent is sent

* move effectiveness to move info container

* add effectiveness overlay, partial hints only show move effectiveness, improve colors

* lint

* docs

* remove full hints, move container to right of enemy info box

* hide effectiveness while flyout is visible

* move setting to display, use default style color instead of white
2024-06-08 15:33:13 -04:00
Xavion3
696ff6eae3
Add Challenges (#1459)
* Initial challenge framework

* Add type localisation

* Change how challenges are tracked

Also fixes the difficulty total text

* MVP

Renames challenge types, temporarily hides difficulty, and implements challenge saving.

* Attempt to fix one legal pokemon in a double battle

* Make monotype ignore type changing effects

* Make isOfType correctly detect normal types

* Try to fix double battles again

* Make challenge function more like classic

* Add helper function for fainted or not allowed

* Add framework for fresh start challenge and improve comments

* Try to fix evolution issues

* Make form changing items only usable from rewards screen

* Update localisation

* Additional localisation change

* Add achievements for completing challenges

* Fix initialisation bug with challenge achievements

* Add support for gamemode specific fixed battles

Also make monogen challenges face the e4 of their generation

* Add better support for mobile in challenges

* Localise illegal evolution/form change message

* Update achievement names

* Make alternate forms count for monogen

* Update monotype achievement icons

* Add more comments

* Improve comments

* Fix mid battle form changes

* Reorder mode list

* Remove currently unused localisation entry

* Add type overrides for monotype challenges

Meloetta always counts for psychic and castform always counts for normal

* Change how form changes are handled

Now attempts a switch at the start of each turn instead of immediately

* Add start button to challenge select screen

* Make starter select back out to challenge screen if using challenges

* Fix daily runs

* Update tests to new game mode logic
2024-06-08 01:07:23 -04:00
Matthew
9c97e37c27
initVouchers correctly (#1940) 2024-06-07 23:50:07 -04:00
Madmadness65
bf5b6e3f6b
[Enhancement] Add more legendary battle music; add music preference setting (#1753)
* Add more legendary battle music; add music preference setting

* Replace BDSP tracks

"Souless", they say. Naysayers, I say.

* Update for settings menu refactor

* Remove unnecessary Reshiram/Zekrom music calls

The default legendary battle music is the Reshiram & Zekrom battle theme anyways, so removing these lines make it functionally identical.

* Update for settings menu refactor AGAIN
2024-06-07 21:52:14 -05:00
Greenlamp2
1a149bfa04
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908)
* refactor executed code while importing and initializing all of these in loading-scene

* reset to main

* fix server url

* added rule no-trailing-spaces

* made progress

* test somme data from a session save is working

* trying to launch a battle

* added fetch wrapper to load data locally

* trying to mockAllSettled

* pushPhase & shiftPhase

* check integrity of exported session

* set toke + loggedInUser in tests

* progress on starting new battle

* tring to test phase but it's async

* mocking fetch

* working mock fetch

* need to handle pile of data

* attempt to use real phaser classes

* reorder overrides

* refactored to use some real classes from phaser

* removed useless things

* started to work on some container mock

* finished the mockContainer time to add some logic

* some more mock containers

* removed addMethods since there is the mock classes now

* commented issues

* attempt to create mockTextureManager

* fix tests

* mockSprite & mockText

* yes but not really

* yes but not really

* fix tutorial callback

* reached mode title

* added achievement tests

* fix test achievements with current state of mock

* correct sequence loading for BattleScene with mockLoader !

* deep dive into next step

* working wait until starter selection screen

* added newGame method into wrapper

* expect to save_slot

* trying to manage pokemon sprite for getAll without success yet

* added test for egg output

* fixed egg test for June

* fix tests + locate next issue to fix

* we are in battle baby

* added new game in one-line

* export is working but export only what's in the fetch

* fix start game as guest

* refactored how we start a battle + cleanup

* overrided mewtwo but issue with currentBattle

* refactor: rename InitAchievements to initAchievements

* added missing mock method

* override level and pokemon forms working as intended

* bringToTop Obj

* remove launch battle in achivement test

* fix getIndex when same pokemon

* can run all tests

* first attack, faint, and shop modifiers, MockClock

* on method for container

* added doAttack one-liner

* one-line export data

* removed throw error

* feat: Make `scenes` property of `GameWrapper` class public

The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game.

* correction

* removed CanvasRenderer

* added a param to remove console.log and added a param to preven scene create call

* fix encounter wave 30 when it's a trainer

* test double-battle

* test fight without KO

* test double fight no ko

* fix crashing texture + added Text wrapper to log fight

* fix tests on boss - trainer - rival

* chore: Refactor BattleScene initialization and add new phases

Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience.

* rework of Game tests

* skipFn is working

* added onNextPrompt and restore Og Start

* better newGame

* added skipFN in remove

* not yet working test but updated interceptors

* do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple

* error located, it's just a double fight, i was not there yet

* single OHKO & double no OHKO

* added expirationFn into next prompt

* all tests are passing

* working test on non damaging move from opponent

* cleaned a bit

* removed phaser initialisation on every tests

* renamed test file

* added load system data

* added some ability support

* added onKill & onSummon abilities test

* removed useless test + cleanup

* removed useless test + cleanup

* fixed tests after merge main

* added itemHeld endTurn trigger test (toxic orb)

* added runFrom..To

* added mustRun to assert currentPhase

* added no-miss move to test things

* cleaner restore mock

* fix test

* fix moxie test + game speed

* improve test speed

* added onOurself and onOpponent mvoe test

* added onDamage test for tackle

* removed timeout in intervals to run tests faster

* cleanup

* added never crit override + separate file per test + remove randomness in randBattleSeedInt

* move folders

* better org

* renamed itemHeld folder to items

* fix deploy.yml

* cleanup

* simplified the gameManager start battle and allow single pokemon in party

* remove the need of mode development

* added input handler to test inputs + remove time from phaser into inputController

* added keyboard support

* added fakeMobile support

* added details

* removed a console.log + added logUp

* move test to folder

* fixed canvas issue

* added starter select tests

* added some more test on starter-select

* added battle-order tests

* added battle-order tests

* fixing Phaser RNG

* ordering stats for better reading

* fix tests for main

* adapt battle-order test to be more readable

* fix merge

* fix some errors and silent all errors from gameWrapper since it's not possible to avoid them

* fix mocks to manage childs & stuffs

* added some docs

* fix achievement test

* removed an unused file

* separate misc tests to clean battle.test file

* added a basic french lokalization test

* added i18n where it needs to be used only

* revers extracted method

* removed unused method

* removed handler fetch since we do not test anything server related

* fix test with handlers removed

* added intrepid sword test

* fix enum exp party

---------

Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 18:33:45 -04:00
雪霁
19712e0d43
fix language auto detect (#1784) 2024-06-07 11:27:42 -05:00
Jannik Tappert
1312d4f825
[Qol] The title will now be displayed in the voucher overview (and flyout) (#1886)
* The title will now be displayed in the voucher overview

* Update src/system/voucher.ts

* Intend
2024-06-06 15:01:21 -04:00
SeafoamQueen
3fea384dc1
[Feature] Added Battle Style setting (#1872)
* Added Battle Style setting with Shift and Set options

* Changed 'Shift' option to 'Switch' to match the Gen 8 setting.
2024-06-06 11:26:04 -04:00
SeafoamQueen
5ac1b7245f
[Feature] Refactored Game Settings UI navigation menu and sorting (#1860)
* Refactored settings UI menu options and added the battle style setting

* Removed the new Battle Style setting. It will be added in a seperate PR.

* Fixed typo and spacing
2024-06-06 10:38:54 -04:00
Benjamin Odom
5e52be676f
[QoL] Add Time of Day Widget to Arena Flyout (#1846)
* Time of Day Sample

* Add Proper Time of Day Tracking

* Add Settings
2024-06-05 22:57:55 -05:00
prime
1c98106642
[QoL] Move Info Overlay (#1585)
* move info implemented for starter selection

a move info box is displayed when editing the starter moveset.

also menus have now onHover triggers.

todo:
- show ui when selecting TMs
- show ui when selecting moves to remember (memory mushroom)

* More Move Info Overlays

Added overlays during Memory Mushroom use and when viewing TMs.
Furthermore a settings option can enable/disable those overlays.

* Added missing ko language entry

... though translation still remains necessary

* updated ui

also added overrides for item rewards

* minor ui update

moved values to the right in the tm move info box

* fixed typedoc issues

* removed settings in to prepare for merge

* updated settings option

added settings option to new settings implementation

* minor changes

removed unused graphic
moved settings option to accessibility
2024-06-05 20:28:12 -05:00
flx-sta
283714bd0f
[Refactor] Move enums from game-data into their respective files in src/data/enums (#1837)
* move PlayerGender enum into src/data/enums/player-gender.ts

this is necessary to avoid circular dependencies which did crash tests in the past (in PRs)

* Update settings.ts

* Update game-data.ts

* Update summary-ui-handler.ts

* Update ui.ts

* move Passive & GameDataType enums into own files
2024-06-05 19:11:07 -05:00
AJ Fontaine
eecad0fdc4
Balance endless tokens (#1733)
* Balanced tokens

* Remove existing tokens, all 10 stack limit

* Linter complained

* Sorry Mr. Lint I’ll do better next time

* Removed redundant min

* Used a version system to update tokens

* The linter has peculiar tastes

* See if this works

* I'm at my limit omg wtf Sam

* Call me Swoobat the way I keep it Simple

* Clean up some log statements

* Adjust token weights to make up for removal of sleep and freeze

* Be so fr GitHub that’s not a real merge conflict
2024-06-04 16:39:22 -05:00
Benjamin Odom
98cff12fd1
[QoL] Add Arena Info Flyout for Weather, Terrain, etc. (#1734)
* Initial Commit

* Add Time of Day Icons and Remove Fight UI Dependancy

* Rename to Match

* Update battle-scene.ts

* Add Settings

* Add Comments
2024-06-03 21:18:09 -05:00
Matthew
69da96d543
Settings Refactor (#1771) 2024-06-03 19:57:47 -04:00
Xavion3
ff0e4fbdf0
Implement Pity System (#1752)
* Implement Pity System

* Add comments and optimised worst case slightly
2024-06-03 15:43:52 -04:00
Frede
12bd22f2ca
Added "Skip Seen Dialogues" option (#1431)
* Added "Skip Dialogues" option (if at least 1 classic win)

* Removed error sound and hide option instead when classic wins = 0

* Add skip dialogues option to Unlockables and show unlocked message on first classic win

* Only skips seen dialogues, removed dialogue option from unlockables, seen dialogues get saved to local storage

* oops

* dont show charSprite when skipping a dialogue, small fixes

---------

Co-authored-by: Frederik Hobein <frederik.hobein@nterra.com>
2024-06-03 11:49:13 +01:00
José Ricardo Fleury Oliveira
655e3ba24c
fix first voucher description (#1710) 2024-06-02 03:30:22 +01:00
José Ricardo Fleury Oliveira
c7de17a46e
Achievements localization, organized some locales files and ptBR translations (#1150)
* organizing, translations and achv localization

* localized for all languages

* minor fix

* minor fix 2

* minor fix 3

* Fixed Achivment Localization, Added german localization and fixes some issues with german localization at other parts

* fix pickup description

* Update French achv.ts

* French typo correction achv.ts

* eslint fixes

* added zhTW

* minor fix

* Achivment Bar is localized and gets bigger when using german

* Changed some things to make it not as Big

* The Achivment Bar now grows with the context

* Updated Achivment Names in german

* Update French achv.ts

* Vouchers now will show the correct descrption again

* minor fix

* minor fixes

* "sub" to "semi"

* minor fix

* fixes warning and organizes some files

* forgot about english

* korean translations

* test fix

---------

Co-authored-by: Jannik Tappert <tappertjannik@googlemail.com>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
2024-06-02 00:53:13 +01:00
Greenlamp2
060b1b2ccc
Menu - Controls Rebind - Gamepad & Keyboard (Cleaner git log) (#1666)
* squased merge rebind_menu

* azerty to qwerty

* add a check to preven a crash in firefox

* reset navigation menu on quit

* removed dual lock mekanism

* navigation display update icons on new bind

* added submit binding

* removed attribute no longer used

* change protected to abstract

* remove last bind protection since action and cancel are protected + renamed default controller to controller

* removed default alt qwerty keys in config

* fix some errors for doc

* fix tests

* fix some more errors for docs

* fix some more errors for docs final ?

* added alt bind for menu navigation + update icons on delete/home
2024-06-01 13:56:32 +01:00
Benjamin Odom
19885e0558
Add Arena Events (#1627)
* Add Arena Events

* Update arena-events.ts
2024-05-31 17:52:16 -05:00
Benjamin Odom
9b5c1cdadb
Adds a Small Flyout Panel to the Battle Info Object (#1377)
* Initial Commit

* Update pbinfo_enemy_boss_stats.png

* Move to Separate Key

* Add Separate Mobile Control for Flyout

* Add Setting to Enable/Disable

* Add to the Tutorial

* Change to BUTTON.V
2024-05-29 20:29:59 -04:00
MrWaterT
8e157edce9
Add Korean Locale (#737)
* Add korean locale without translation

* Translate ability,move,pokemon to Korean

* Translate miscellaneous to Korean

* Add Accuracy in the fight ui to Korean

* Apply nature,growth rate lang files to Korean

* Add missed file import to Korean config.ts

* Add font and its license for Korean then Apply it

pokemon-dppt from FontStruction and its license

* Translate any other lang file to Korean

* Cleanup Korean locale files

Indentation for pokemon and starter-select-ui-handler
Make config shoft

* Update Korean translation for the latest commits

ToggleSize dependency e4d3f73d,
 + Align togglesize locale text
Frisk description 6d73500a
Starter select UI 34a4f869, 74ee3329
Add ability triggers locale file 1c56efc8
Zippy Zap description 4e279224

* Implement locale font loading

Revert multiple font usage from style fe7fe845
Dynamic font loading on language changed

* Translate new localization parts to Korean

Return to title become save and quit
  menu-ui-handler.ts ac2e7812
Generation text added
  starter-select-ui-handler.ts afcffab9
Missing translations for learning move
  battles.ts:countdownPoof, learnMoveAnd 44c0d29c
Weather & evolution texts translated
  config.ts, weather.ts, menu.ts b8dff030
Added modifier type file for item translate
  config.ts, modifier-type.ts b5ae8330, b82b8c31
Egg gatcha machine is now Korean
  config.ts, egg.ts 975d1ed5
Add splash message literals to locales
  config.ts, splash-messages.ts 8dce9fa2
Trainers are also localized
  config.ts, trainers.ts b06190c4, 7f003d46, 364b19df
Double battle trainers appeared
  battle.ts:trainerAppearedDouble f1e97f3b

* Small patches to Korean translations

Include generation consistency (learnMovePrompt, eggHatching),
        wrong space (learnMoveReplaceQuestion),
        missing word (learnMoveNotLearned),
        match to modifier-type.ts (ivScannerUseQuestion),
        and match to english and else (bossAppeared)

* Apply edits to Korean translation

Re-order config.ts 3f571a36
Fix splash message attribute to fixed config 429e6635

* Corrections and new text for Korean translations

Trainer misstypo correction 0cd305d7
  trainer.ts
BerryType localization 25014208
  config.ts, berry.ts
IV scanner updated 96af567c
  config.ts, battle-message-ui-handler.ts
Melt stat and type into info 3cc9c93
  config.ts, modifier-type.ts pokemon-stat.ts -> pokemon-info.ts

* Update Korean locale up to date

Larry and Lance are now unique 93dee06e
Trainer names errors about 'poké' 49adedbc, 13f2cafe
Wrong text edit for maylene
  trainers.ts
Egg voucher translation 7216990d
  config.ts, voucher.ts
Cleanup starter select ui handler ca1ae4b5, b95a59c0
  starter-select-ui-handler.ts
Correct text overflow
  tutorial.ts

* Modify loadFont to fit in nonExplicitSupportedLngs

'ko-KR' or 'ko' is loaded browser by browser, in any case font will be loaded.

* Update Korean translations


* Apply updated text

Berry pouch 8b4aa872
  modifier-type.ts
Acrobatics 0d614526
  move.ts
failedToLoadSaveData 32fadf8c
  menu.ts
HoneyGather caeb22c2
  ability.ts


* Apply added Text

Plates and Memories f914b8fe
  modifier-type.ts
trainerSendOut, moneyWon, partyFull 79af1152
  battle.ts
gym_leader_double, champion_double, Double Names aaa95ebe
elite_four_female, champion_female ac2f7755
  trainers.ts


* Apply new locale category implement

Biomes de1c2b2b
  config.ts, biome.ts
Trainer dialogue ac2f7755, d23d8356
  config.ts, dialogue.ts
Statistics 6d2b8ef2
  config.ts, game-stats-ui-handler
Info Container fb26b6d5
  config.ts, pokemon-info-container.ts

* Recover coding style

include 2-space-indentation

* Add Korean Font

No more license text file

* Add missing config to Korean

* Fix ESLint failure on Korean

* Fix ESLint failure on Korean 2

* Update to Main Localization Changes

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-29 18:05:14 -05:00
Benjamin Odom
4d15269eec
Fix Error with Typecasting (#1519) 2024-05-28 23:45:18 +01:00
José Ricardo Fleury Oliveira
7e003d68a9
Indicator when a candy upgrade is available (#1083)
* initial implementation

* updated logic

* reverse retTint

* added candy overlays and colors

* added settings and minor fixes

* german changes

* logic fix

* german changes pt2

* german changes pt3

* setting name changed

* Update battle-scene.ts

* initial animation implementation

* minor fixes

* main compatibility

* minor fix

* logic for animations

* eslint fixes

* final generation logic

* Pause Animation when Selected or Purchased

* Disable Indicator if not Root Species

* Add to Reload and Add Anchor

* Fix Animation on Change

* Fix Icon on Change

* Code Cleanup

* fix

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-28 13:49:15 -04:00
Franck TROUILLEZ
99835c27c8
Add setting to change money format (#1261)
* Add setting to change money format

This setting can currently be set either on "normal" or "abbreviated". "normal" will show all the numbers, while "abbreviated" will abbreviate to the most significant numbers and use a suffix to show the power-10.

A new enum has been added for MoneyFormat as well.

* Update src/battle-scene.ts

Co-authored-by: Franck TROUILLEZ <57403591+francktrouillez@users.noreply.github.com>

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-27 22:58:33 -04:00
Jannik Tappert
8a6f87cfea
When the language is changed the game will complety reload (same as F5). (#1438)
Also now only the current language type image is loaded. If it doesnt exist for a language it will load the english one as a fallback

Tested with all lanugages
2024-05-27 10:12:29 -05:00
Greenlamp2
622885767d
Enforce Consistent Spacing with ESLint's space-before-blocks and keyword-spacing Rules (#1308)
* added rule no-trailing-spaces

* added rule space-before-block

* added rule keyword spacing
2024-05-23 19:19:20 -05:00
Greenlamp2
e2be6ba002
added rule no-trailing-spaces (#1307) 2024-05-23 18:45:04 -05:00
Matthew
f7a7b23dd1
Update README and package, re-add money formatter (#1286) 2024-05-23 12:29:18 -04:00
Greenlamp2
bac6c22973
ESLint - The Essential Linter and Formatter for JavaScript and TypeScript (#1224)
* eslint config + packages

* updated eslint config

* fix the issue eslint adding ;;;; at interfaces

* first round with eslint --fix .

* removed config for unused export

* Revert "first round with eslint --fix ."

This reverts commit 77a88e0895.

* removed config for camelCase

* for real this time, first round of eslint --fix .

* halfway to manual eslint fix

* eslint done

* added "how to setup" the hook to eslint --fix each new file before commit (if wanted)

* removed eslintrc config file duplicat

* fix human error + ignore build folder + merge overrides

* added curly brace style + eslint

* applied double quote linter rule

* added lefthook

* test precommit

* test precommit

* test precommit

* test precommit

* test precommit

* test precommit

* test precommit

* github action to run eslint

* added node_modules to ignore eslint

* different action for typescript

* no need for different glob (default src)

* node 20

* node 20

* removed no longer needed install file

* remove hooks part from README

* eslint fixes

---------

Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-05-23 11:03:10 -04:00
iv
2240e09406
zh_tw localization (#1279)
* zh_tw translation

* update translation to newer version

* follow file naming convention
2024-05-23 07:01:22 -05:00
Benjamin Odom
f93f2bfca6
Reduce EXP Balance (#1128)
* Set max to 4
2024-05-20 19:06:20 +10:00
Lugiad
7216990d87
Locales for Voucher names + Voucher rewards (#1137)
* Update voucher.ts

* Update vouchers-ui-handler.ts

* Update i18n.ts

* Update config.ts

* Update config.ts

* Update config.ts

* Update config.ts

* Update config.ts

* Update config.ts

* Update config.ts

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload
2024-05-19 17:25:52 -05:00
Adrian Torrano
a561e41634
return boolean from changing locale (#848) 2024-05-19 13:25:24 -05:00
Flashfyre
78f7965304 Revert "add logic to conditionally align window (#851)"
This reverts commit 7769c06393.
2024-05-15 12:22:32 -04:00
Adrian Torrano
7769c06393
add logic to conditionally align window (#851) 2024-05-15 11:01:20 -05:00
Flashfyre
ac2e78129e Add Save and Quit option to replace Return to Title 2024-05-15 11:42:18 -04:00
Flashfyre
adf5690383 Migrate data for offline users 2024-05-15 10:55:17 -04:00
Flashfyre
3c8d919ef8 Revert "Implemented Power Split and Guard Split (#699)"
This reverts commit 0b75a5210a.
2024-05-15 10:13:29 -04:00
Frederico Santos
0b75a5210a
Implemented Power Split and Guard Split (#699)
* Implemented Power Split and Guard Split

* Update changeStat method to use summonData for Pokemon stats

This commit modifies the `changeStat` method in the `Pokemon` class to use the `summonData` object for updating Pokemon stats instead of directly modifying the `stats` object. This change ensures that the updated stats are correctly reflected in the `summonData` object, which is used for battle calculations and other related operations.

Refactor the `getStat` method to check if `summonData` exists and return the corresponding stat value from `summonData.stats` if it does. Otherwise, return the stat value from the `stats` object.

This change improves the accuracy of stat calculations during battles and ensures consistency between the `stats` and `summonData` objects.

* Added documentation for Power Split and Guard Split + linting

* removed incorrect files

* Removed incorrect folder

* removed unnecessary import

* Added documentation for getStat and changeSummonStat methods

* New description for getStat()

* Adjusting function descriptions

* adjusted descriptions according to guideline

---------

Co-authored-by: Frederico Santos <frederico.santos@fivedegrees.nl>
2024-05-15 07:41:40 -05:00
Flashfyre
4a7da3e5f6 Fix export not working 2024-05-15 02:01:30 -04:00
Flashfyre
70ecc51f50 Don't clear local data in offline mode 2024-05-15 01:54:15 -04:00
Samuel H
67c18a15e2
Implement client session and re-implement hybrid saving (#888)
* Implement client session and re-implement hybrid saving (WiP)

* Fixes for hybrid saving

* Add local data clears where applicable

* Include client session ID in system update

* Change save threshold from 5 waves to 10 waves or 5 minutes
2024-05-15 00:52:06 -04:00
Nexllon
df499e2f71
offline mode - adds daily run and fixes clear freezes (#834)
* offline mode - adds daily run and fixes clear freezes

* removed unused import
2024-05-14 15:42:30 -04:00
Flashfyre
7943633481 Revert "Implement hybrid saving for optimization"
This reverts commit b45cd2f7e7.
2024-05-13 20:56:28 -04:00
Flashfyre
ab92bc61ba Revert "Only show save icon on server sync"
This reverts commit 5d0dbfff98.
2024-05-13 20:56:19 -04:00
Flashfyre
5d0dbfff98 Only show save icon on server sync 2024-05-13 18:37:48 -04:00
Flashfyre
b45cd2f7e7 Implement hybrid saving for optimization 2024-05-13 18:17:57 -04:00
Flashfyre
9a49691a9e Add max options to language select
Add max options to language select (fixes #819)
2024-05-13 13:10:01 -04:00
José Ricardo Fleury Oliveira
2a32189ea1
Added Portuguese (Brazil) translations (#766)
* Add support for Portuguese (Brazil) locale, except for moves and abilities.

* All ptBR translations, names of moves and abilities maintained in english.

* Small fixes

* Updated Frisk and fixed Plus and Minus descriptions

* Changed the settings label to "Português (BR)"
2024-05-13 11:18:24 -05:00
Matthew
21a0a0276d
add pokeball override (#793) 2024-05-13 03:40:53 -05:00
Samuel H
2b9b63e3f3
Add combined save between waves (#777) 2024-05-12 23:01:05 -04:00
Flashfyre
f540b7d17f Fix always clearing first slot in offline mode 2024-05-11 20:33:03 -04:00
Flashfyre
9cfc09f673 Restructure game over logic to save before clear 2024-05-10 18:12:33 -04:00
Greenlamp2
b32b802ab4
QOL - Settings to choose party Exp display at the end of fight (#488)
* added settings to manage how to display party experience at the end of fight

* added back stats changes support when setting is on but ignored when on skip

* removed a useless parameter

* added new level in the text

* only Lv. UP if level is greated than 200

* cleanup

* added some comment

* TSDoc comment block

* EXP_Party -> EXP_Party_Display, Only Up -> Level Up Notification

* better duration for the level up notification

* typo

Co-authored-by: Samuel H <flashfireex@gmail.com>

---------

Co-authored-by: Samuel H <flashfireex@gmail.com>
2024-05-10 09:54:14 -04:00
Greenlamp2
22a73642df
Fix - Gamepad support setting "lost focus" behaviour (#658)
* fix "lost focus behaviour" when disabling gamepad and thus repeating RIGHT key

* added some comment

* added full TSDoc, helped by chatGPT, refined every entry manually of course
2024-05-10 09:26:45 -04:00
maru
7f0362e124
Fix it for real this time 2024-05-09 07:30:19 -04:00
maru
c1cff02a18
Fix bug with accounts being unable to create new saves 2024-05-09 06:22:33 -04:00
Xavion3
e6ba60364e
Save battler tags (#516)
* Save battler tags

Also saves the rest of the summonData except for transform specific things.

* Add missing values for type boost tag.

* Add intellisense comments
2024-05-09 00:37:51 -05:00
Madmadness65
e39b157767 Make Simplified Chinese locale use zh_CN 2024-05-08 23:13:38 -05:00
Jane620
5992d9eb81
add simplifed chinese locale (#485)
* add chinese locale, but translation is not yet complete.

* Add chs and cht locale

* translate ability,move,pokeball,pokemon

* Add files via upload

* Add files via upload

* Update i18n.ts

* Delete src/locales/zh_cn directory

* Add files via upload

* Update settings.ts

* Delete src/locales/chs directory

* Add files via upload

* add tutorial

* fix conflict issue

* remove cht, due to chs is almost done by justhil

* remove duplicated setting

* spell correction

---------

Co-authored-by: ZXZhuang <2993968012@qq.com>
Co-authored-by: justhil <138752349+justhil@users.noreply.github.com>
Co-authored-by: Jianfeng 2. Wang (NSB) <jianfeng.2.wang@nokia-sbell.com>
2024-05-08 22:59:49 -05:00
Flashfyre
e993bf9945 Fix session slot always saving to first slot in offline mode 2024-05-08 16:36:44 -04:00
Lugiad
e93777e52a
Names of the languages in their respectives languages (#635)
* Names of the languages in their respectives languages in settings

* Names of the languages in their respectives languages
2024-05-08 12:08:34 -05:00
Flashfyre
72b4552b01 Don't update user info on save for optimization 2024-05-07 13:36:52 -04:00
Tempoanon
4fcea107ab
Fix wrong stat displayed for mythicals hatched (#601) 2024-05-07 12:10:48 -05:00
alpaca
36cde21ce3
Adds ribbon in starter screen if mon has beat classic mode (#370)
* adds the ribbon asset, hooking it up

* works if override. need to add field on server side I imagine

* moves count to starterData, increments on win

* formatting

* increment works properly

* recursively check for prevolution

* cleaned up to use getRootSpeciesId()

* changes ribbon to gold medal version

* adds Akuma's ribbon achievements

* ribbons increment correctly

* missed ui handler update

* reorder achievements

* ribbon correct, vouchers not. currently investigating

* increments properly, but voucher reward phase not appearing

* some cleanup

* works great, need to better reflect who is getting ribbon in message and cry

* plays level fanfare, tabling cry for now

* reran items.bat

* Minor fixes

---------

Co-authored-by: Flashfyre <flashfireex@gmail.com>
2024-05-07 00:44:41 -04:00
Flashfyre
6a3ca62490 Add separate sub-legendary stats 2024-05-05 17:11:29 -04:00
Flashfyre
437cb87df9 Add separate achievements for sub-legendaries and rename pseudoLegendary field 2024-05-05 11:05:22 -04:00
Greenlamp2
d98f7733d4
Rework - Inputs management to include all gamepad mapping V2 (#429)
* rework of the input handling, including different gamepad and keyboard

* rework of the input handling, including different gamepad and keyboard

* first version of a too complex inputHandler based on phaser3-merged-input

* removed useless control management and kept it simple for our use case, investigating to put out button_XX()

* renamed inputHandler to inputController

* aggregate directions and some action into a same method + fix menu return value

* added back repeated input feature on keeping down a key

* cleanup + return type

* fix submit/action doing two things simultaneously, still same behaviour as before

* extracted UI inputs out of battle-scene

* tab -> spaces

* tab -> spaces what about now github ?

* tab -> spaces final (maybe)

* tried to fix the plugin loading issue on prod

* remove Plugins things as it's too uncertain how it works on prod

* seems old code source is indented with tab

* cleanup

* cleanup

* cleanup

* putting in an enum file the enum buttons

* fix repeating stats button + change message in event when the key is repeating

* added return type for ui-inputs

* added return type for inputs-controller

* adapted the code to integrate changes of bennybroseph
2024-05-05 10:30:00 -04:00
Benjamin Odom
3ed7649ce5
Remove Debug Code (#480)
Remove code intended only for debugging.
2024-05-05 18:45:54 +10:00
Benjamin Odom
dd76cbc7a2
Add Setting to Swap A and B on Gamepad (#474)
* Add Setting to Swap A and B on Gamepad

Added a new setting to swap the A and B button on controller. Defaults to off which retains the current behavior on live.

* Add comments
2024-05-05 01:25:57 -04:00
Alessandro Bruzzese
41f9420c90
Added Italian translations for ability.ts and other element (#471) 2024-05-04 21:00:28 -05:00
Xavion3
bc319a8eda Fix eggs during dailies 2024-05-03 10:28:40 -04:00
Flashfyre
991f097e9e Rebalance friendship and add starter friendship with candy reward 2024-05-02 17:48:08 -04:00
Flashfyre
86b0596a60 Add rogue achievement and voucher tier 2024-05-01 19:28:07 -04:00
Flashfyre
6b9542511f Add fusion luck as a separate field 2024-04-26 18:27:00 -04:00
Flashfyre
bf2a83993c Make luck independent from shininess and variant 2024-04-26 17:32:28 -04:00
Flashfyre
ef552c7ffd Fix crash with certain animated variant sprites 2024-04-26 02:00:58 -04:00
BronzeMaster5000
e3ef65523a Added german as selectable in options
Also added a comment in i18n that refers to how to add a language to the game settings menu to actually select it.
2024-04-25 21:21:44 -04:00
Flashfyre
4a703c938d Add load message handler for too many connections 2024-04-25 14:47:32 -04:00
Flashfyre
daba4e9482 Fix not updating legendary and mythical Pokemon seen stats 2024-04-25 13:20:32 -04:00
Flashfyre
1d25935aa0 Enforce trainer IDs on write requests for data integrity 2024-04-25 09:17:48 -04:00
Flashfyre
97218be59c Add back missing authorization headers 2024-04-24 19:26:04 -04:00
Flashfyre
cf3a7dca35 Comment out variant data fix to prevent ability data corruption 2024-04-24 09:26:46 -04:00
Flashfyre
e2effee43d Fix typo 2024-04-23 22:32:04 -04:00
Flashfyre
1376ea4e87 Fix initial starters not having first ability unlocked 2024-04-23 22:16:49 -04:00
PabloG02
a71392f2d6 Add Spanish localization for menu, moves and pokeballs 2024-04-23 11:58:47 -04:00
Flashfyre
26b1bb5f03 Don't increment seen shiny count for trainers 2024-04-22 11:28:13 -04:00
Flashfyre
3d9f5fb157 Protect against cross-session overwrites 2024-04-21 16:19:11 -04:00
Flashfyre
c8a9069e8b Add outdated session support and fix older migrations 2024-04-21 10:59:50 -04:00
Flashfyre
17eddd7b02 Consolidate broken variant data for players who missed 1.0.1 2024-04-20 22:30:28 -04:00
Flashfyre
fc06c4d9e1 Fix title querying with placeholder save slot 2024-04-20 18:46:36 -04:00
Flashfyre
706a85ed5b Add missing pipeline data for shiny recolors in certain screens 2024-04-19 23:37:23 -04:00
Flashfyre
0ecc46ab97 Exclude authorization header where unnecessary 2024-04-19 17:35:49 -04:00
Miguel S
95d2ad2fb4
Added language setting (#185)
* Added language setting

* Allow properly changing language

---------

Co-authored-by: Flashfyre <flashfireex@gmail.com>
2024-04-19 14:55:01 -04:00
Flashfyre
e17aee5d48 Fix default starter hidden ability for new accounts 2024-04-19 12:24:52 -04:00
Flashfyre
5c367db8a3 Fix ability edge case when saving starter ability data 2024-04-19 11:01:22 -04:00
Flashfyre
b546203118 Fix shiny eggs corrupting candy count 2024-04-19 01:01:57 -04:00
Flashfyre
c76f8c5e7e Add tiered shiny variants 2024-04-18 22:52:26 -04:00
Flashfyre
eab38a5ad4 Add more exp gains options 2024-04-18 00:50:04 -04:00
Hans Sorongon
0948295a98 Add option to hide exp gains after a battle 2024-04-18 00:50:04 -04:00
Flashfyre
e85179f7cd Fix gamepad support not saving 2024-04-15 22:40:27 -04:00
Flashfyre
1ff206287a Add setting for gamepad support 2024-04-15 20:13:58 -04:00
Flashfyre
0692a343a0 Fix duplicate candy count key for local 2024-04-15 19:47:12 -04:00
Flashfyre
6e59b4dd77 Prevent saving on an outdated client 2024-04-15 10:09:51 -04:00
Flashfyre
824a73ef71 Add candy system for passives and value reductions 2024-04-13 18:59:58 -04:00
Flashfyre
75075c6fab Update missing save data handling 2024-04-11 00:18:16 -04:00
Flashfyre
eb5bdb07a8 Add outage handling 2024-04-10 01:32:49 -04:00
Flashfyre
2a6042ff7e Add HP Bar Speed setting and fix Grip Claw HP skip bug 2024-04-09 15:34:57 -04:00
Flashfyre
b892a8b40e Add option to disable move animations 2024-04-09 15:06:47 -04:00
Flashfyre
5ebc351e4f Add a long-term goal 2024-04-05 22:58:40 -04:00
Flashfyre
3e99ed6bb6 Level up sound no longer pauses BGM 2024-04-04 17:43:37 -04:00
Flashfyre
326918a5f1 Add retry option (easy mode) 2024-04-04 15:22:05 -04:00
Flashfyre
075db8ae0c Show icon when saving data 2024-04-04 10:16:29 -04:00
Flashfyre
84f6456972 Use nature override property instead of overwriting base nature 2024-04-02 23:00:56 -04:00
Flashfyre
a3e09ee5cc Fix game not loading if save data is not found 2024-04-01 15:18:15 -04:00
Flashfyre
366e3e5120 Fix battle RNG varying when loading a game 2024-04-01 12:48:35 -04:00
Flashfyre
70d61700d0 Re-implement UI reskin with working legacy toggle
Re-implement UI reskin with working legacy toggle; add return to title option to menu
2024-03-31 21:14:35 -04:00
Flashfyre
30c7156c1a Revert "Add UI reskin by LJ Birdman (WiP)"
This reverts commit 0200a2688a.
2024-03-31 16:51:53 -04:00
Flashfyre
0200a2688a Add UI reskin by LJ Birdman (WiP) 2024-03-31 16:49:53 -04:00
Flashfyre
ca0ae35422 Change default game speed from 1x to 2x 2024-03-31 00:03:39 -04:00
Flashfyre
7ca5cdc21b Revert "Revert "Fix strong trainer party members often not evolving due to dividing by 0""
This reverts commit baaa00656e.
2024-03-29 20:11:52 -04:00
Flashfyre
baaa00656e Revert "Fix strong trainer party members often not evolving due to dividing by 0"
This reverts commit c59c5ca413.
2024-03-29 13:52:21 -04:00
Flashfyre
c59c5ca413 Fix strong trainer party members often not evolving due to dividing by 0 2024-03-29 13:42:54 -04:00
Flashfyre
26bef151f4 Update starter value reduction thresholds to be per-cost 2024-03-28 17:29:31 -04:00
Flashfyre
c0b1724b1e Fix not passing trainer name when loading data 2024-03-26 21:21:27 -04:00
Flashfyre
1ea0511abb Convert included JS files to modules 2024-03-25 16:10:43 -04:00
Flashfyre
4633ac2426 Add failsafe if moves fail to load 2024-03-25 14:47:41 -04:00
Flashfyre
892d99a4f9 Add 50% chance to offset gym leader wave by 10 in classic 2024-03-25 11:00:42 -04:00
Flashfyre
efa8d4f3fc Fix summon data not being loaded in on session load 2024-03-25 10:16:29 -04:00
Flashfyre
cf959c6e1b Add proper title screen and logo 2024-03-21 13:12:05 -04:00
Flashfyre
7189258095 Actually fix single battle summoning issue 2024-03-21 12:34:19 -04:00
Flashfyre
b201cf0abc Fix trainer-related crash when loading data 2024-03-21 01:05:46 -04:00
Flashfyre
a76f795cd5 Trainer updates including names and double battle pairs
Add dynamic trainer pairs; add trainer names with Bulbapedia scraping logic; add Hex Maniac trainer; make namebox stretch to fit name
2024-03-21 00:57:28 -04:00
Flashfyre
88e050581e Add score to daily run mode 2024-03-19 00:03:41 -04:00
Flashfyre
0701598be6 Add session scores 2024-03-17 11:36:19 -04:00
Flashfyre
56f4a71ca6 Add daily runs (WiP) 2024-03-16 22:06:56 -04:00
Flashfyre
81f9e2da36 Add WiP logic for daily run and fix some performance issues 2024-03-15 21:59:34 -04:00
Flashfyre
7946938828 Fix errors when loading empty slots in local mode 2024-03-15 15:56:07 -04:00
Flashfyre
00255cb09a Fully implement save slots and ""title"" screen changes
Fully implement save slots and ""title"" screen changes; fix issues with slots including clear data not working on game over and export/import not working; fix session play time not being recorded correctly
2024-03-15 15:13:32 -04:00
Flashfyre
879971ae2b Add ""title"" screen and save data slots 2024-03-14 21:49:49 -04:00
Flashfyre
623d600e13 Add wrapper for game mode 2024-03-14 16:26:57 -04:00
Flashfyre
50b9bf10a7 Add toggle for fusion palette swaps 2024-03-05 21:54:26 -05:00
Flashfyre
5efec5906a Make transfer option free 2024-03-04 23:59:15 -05:00
Flashfyre
702ac190da Don't fail to load save if somehow a move is null 2024-03-02 09:46:08 -05:00
Flashfyre
1fed59837b Fix RNG issues with egg moves 2024-03-01 22:18:39 -05:00
Flashfyre
ce60d46fd1 Fix egg move data not initializing properly 2024-03-01 19:37:32 -05:00
Flashfyre
0e0fe95d4c Fix being unable to clear boss segment without bypass 2024-03-01 12:41:47 -05:00
Flashfyre
716d8853a3 Add damage numbers feature 2024-03-01 00:27:46 -05:00
Flashfyre
f48464d48d Minor refactoring 2024-02-29 20:08:58 -05:00
Flashfyre
ffd785d534 Rebalance item weights and add Rogue tier 2024-02-28 23:13:05 -05:00
Flashfyre
8bee927e08 Remove some legacy features and fix a crash
Remove legacy autoplay and quick start features; fix crash related to leech seed on missing source
2024-02-27 15:16:06 -05:00
Flashfyre
649717a3cd Add egg moves logic 2024-02-25 12:45:41 -05:00
Flashfyre
d72dd93212 Add experimental animated sprites 2024-02-24 21:16:19 -05:00
Flashfyre
4e93f1e52c Display enemy trainer briefly when switching 2024-02-22 00:00:51 -05:00
Flashfyre
0917049fea Fix issues with out of bounds form indexes 2024-02-21 12:38:07 -05:00
Flashfyre
b054992ffa Allow selecting and ordering starter moves 2024-02-21 01:03:34 -05:00
Flashfyre
09e7fab141 Implement solution to data loss issue 2024-02-19 20:36:10 -05:00
Flashfyre
2f8df43db8 Fix some bugs and add seen Pokemon to starter screen 2024-02-18 22:21:57 -05:00
Flashfyre
b47f7b7ad2 Try rebalancing final boss by removing items 2024-02-17 11:18:53 -05:00
Flashfyre
27c09989b6 Fix crash when generated trainer battle levels mismatch with loaded data 2024-02-17 09:22:51 -05:00
Flashfyre
dadc08d16e Add Terestallization mechanics
Add Terestallization mechanics; implement Stellar type; fix bug with held item weights
2024-02-17 00:40:03 -05:00
Flashfyre
bf18b1ceb1 Add tutorial framework (WiP) 2024-02-13 18:42:11 -05:00
Flashfyre
e72ede26d8 Implement catch count based starter value decreases 2024-02-12 16:38:46 -05:00
Flashfyre
05f114c8a4 Minor UI changes 2024-02-06 23:11:00 -05:00
Flashfyre
e62bb6e225 Add female trainer and male rival 2024-02-06 16:15:35 -05:00
Flashfyre
550c65d6f5 Fix save data not loading on login 2024-02-04 00:49:57 -05:00
Flashfyre
052564f902 Update final boss fight and restructure some files 2024-01-13 12:24:24 -05:00
Flashfyre
ea6c547af1 Minor changes to forms 2024-01-12 20:16:29 -05:00
Flashfyre
4c07c6d5cb Changes for how play time is handled 2024-01-11 20:27:50 -05:00
Flashfyre
fcf1c4f574 Rework option select and add game stats 2024-01-11 12:26:32 -05:00
Flashfyre
ff936ee395 Fix hanging when bypass login is on 2024-01-10 14:02:43 -05:00
Flashfyre
eedad7d678 Add boss health bars 2024-01-07 23:17:24 -05:00
Flashfyre
8cc1982859 Add natures 2024-01-05 22:31:13 -05:00
Flashfyre
6dc868272f Add summary memo text 2024-01-05 11:29:34 -05:00
Flashfyre
2d1fabdc03 Ignore erroring modifiers when loading session 2024-01-01 12:32:03 -05:00
Flashfyre
6941e6bdce Fix issue with some modifiers not loading after loading session 2024-01-01 00:00:44 -05:00
Flashfyre
83e9f6d784 Fix freezing after a battle ends due to not clearing session 2023-12-31 22:49:50 -05:00
Flashfyre
183b53286e Fix error when importing data while eggs list is empty 2023-12-31 18:53:16 -05:00
Flashfyre
1ad25bdf61 Link save data to account 2023-12-31 18:30:37 -05:00
Flashfyre
34d91edab1 Reduce size of system data by shortening keys 2023-12-31 13:39:04 -05:00
Flashfyre
7a47c62535 Fix various data related issues and add hatchedCount to DexEntry 2023-12-31 13:20:28 -05:00
Flashfyre
8063472bac Add accounts, login, and registration 2023-12-30 20:19:33 -05:00
Flashfyre
5ef6f2da88 Add day/night cycle 2023-12-29 21:04:40 -05:00
Flashfyre
e107349a98 Add data save and load 2023-12-26 14:49:23 -05:00
Flashfyre
1e4e0d013e Add experimental vibration touch feedback on mobile 2023-12-25 15:50:33 -05:00
Flashfyre
77e70a6540 Update default window type 2023-12-25 15:08:51 -05:00
Flashfyre
41d1a84c76 Add touch controls for mobile support 2023-12-25 15:03:50 -05:00
Flashfyre
957b5d0fa7 Add friendship system in place of win count
Add friendship system in place of win count; add soothe bell item
2023-12-21 23:00:45 -05:00
Flashfyre
b9c05a253e Remove temporary compensation voucher logic 2023-12-21 11:46:50 -05:00
Flashfyre
e07e267ddc Refactor windows and add alternate window skins 2023-12-20 22:22:15 -05:00
Flashfyre
524cd99eda Rebalanace vouchers and add golden voucher 2023-12-20 17:22:50 -05:00
Flashfyre
5883c2fafd Calculate IVs twice for hatched Pokemon to improve overall IVs 2023-12-20 13:05:11 -05:00
Flashfyre
aa94e044ab Add egg gacha system and various minor changes
Add egg gacha system; remove certain mythical Pokemon from the wild pool as egg exclusive; add egg vouchers with UI; rework Shiny Charm odds; fix trainer Pokemon shiny odds not properly ignoring Shiny Charm modifier
2023-12-19 23:51:48 -05:00
Flashfyre
71fdafe8fb Add egg logic and hatching screen (WiP) and end biome arena BG 2023-12-15 23:07:32 -05:00
Flashfyre
dad6401f67 Add evolution pausing and fix visual bug with evolution scene 2023-12-14 12:55:11 -05:00
Flashfyre
47181ea868 Add generation 8 Pokemon and new biomes 2023-12-14 00:41:35 -05:00
Flashfyre
e2a6a93209 Rebalance base stat boosters and make max stack count rely on IVs 2023-12-09 00:33:29 -05:00
Flashfyre
e7ec5b4f88 Implement generation 6 Pokemon and some moves 2023-12-08 16:29:03 -05:00