From 8a54e862fc0d165f1f6ca8967ca6f5940d624f01 Mon Sep 17 00:00:00 2001 From: Flashfyre Date: Tue, 30 Apr 2024 22:14:24 -0400 Subject: [PATCH] Revert "Add togglable stat change display" This reverts commit 718585062bf3d5bf5067003da9a6b70bfb407940. --- index.css | 4 - index.html | 3 - public/images/pbinfo_stat_numbers.json | 293 ------------------ .../ui/legacy/pbinfo_enemy_boss_stats.png | Bin 435 -> 0 bytes .../ui/legacy/pbinfo_enemy_mini_stats.png | Bin 666 -> 0 bytes .../ui/legacy/pbinfo_player_mini_stats.png | Bin 674 -> 0 bytes .../images/ui/legacy/pbinfo_player_stats.png | Bin 285 -> 0 bytes public/images/ui/legacy/pbinfo_stat.json | 188 ----------- public/images/ui/legacy/pbinfo_stat.png | Bin 263 -> 0 bytes .../images/ui/legacy/pbinfo_stat_numbers.json | 293 ------------------ .../images/ui/legacy/pbinfo_stat_numbers.png | Bin 392 -> 0 bytes public/images/ui/pbinfo_enemy_boss.png | Bin 526 -> 554 bytes public/images/ui/pbinfo_enemy_boss_stats.png | Bin 257 -> 0 bytes public/images/ui/pbinfo_enemy_mini.png | Bin 851 -> 888 bytes public/images/ui/pbinfo_enemy_mini_stats.png | Bin 642 -> 0 bytes public/images/ui/pbinfo_enemy_type.png | Bin 3599 -> 1502 bytes public/images/ui/pbinfo_enemy_type1.png | Bin 3305 -> 1360 bytes public/images/ui/pbinfo_enemy_type2.png | Bin 3197 -> 1340 bytes public/images/ui/pbinfo_player.png | Bin 619 -> 654 bytes public/images/ui/pbinfo_player_mini.png | Bin 860 -> 898 bytes public/images/ui/pbinfo_player_mini_stats.png | Bin 648 -> 0 bytes public/images/ui/pbinfo_player_stats.png | Bin 312 -> 0 bytes public/images/ui/pbinfo_player_type1.png | Bin 3197 -> 1340 bytes public/images/ui/pbinfo_player_type2.png | Bin 3305 -> 1360 bytes public/images/ui/pbinfo_stat.json | 188 ----------- public/images/ui/pbinfo_stat.png | Bin 278 -> 0 bytes public/images/ui/pbinfo_stat_numbers.json | 293 ------------------ public/images/ui/pbinfo_stat_numbers.png | Bin 430 -> 0 bytes src/battle-scene.ts | 72 ++--- src/data/splash-messages.ts | 3 +- src/field/pokemon.ts | 4 - src/loading-scene.ts | 6 - src/locales/de/tutorial.ts | 4 - src/locales/en/tutorial.ts | 4 - src/locales/es/tutorial.ts | 4 - src/locales/fr/tutorial.ts | 4 - src/locales/it/tutorial.ts | 4 - src/phases.ts | 10 +- src/tutorial.ts | 6 - src/ui/battle-info.ts | 100 +----- 40 files changed, 43 insertions(+), 1440 deletions(-) delete mode 100644 public/images/pbinfo_stat_numbers.json delete mode 100644 public/images/ui/legacy/pbinfo_enemy_boss_stats.png delete mode 100644 public/images/ui/legacy/pbinfo_enemy_mini_stats.png delete mode 100644 public/images/ui/legacy/pbinfo_player_mini_stats.png delete mode 100644 public/images/ui/legacy/pbinfo_player_stats.png delete mode 100644 public/images/ui/legacy/pbinfo_stat.json delete mode 100644 public/images/ui/legacy/pbinfo_stat.png delete mode 100644 public/images/ui/legacy/pbinfo_stat_numbers.json delete mode 100644 public/images/ui/legacy/pbinfo_stat_numbers.png delete mode 100644 public/images/ui/pbinfo_enemy_boss_stats.png delete mode 100644 public/images/ui/pbinfo_enemy_mini_stats.png delete mode 100644 public/images/ui/pbinfo_player_mini_stats.png delete mode 100644 public/images/ui/pbinfo_player_stats.png delete mode 100644 public/images/ui/pbinfo_stat.json delete mode 100644 public/images/ui/pbinfo_stat.png delete mode 100644 public/images/ui/pbinfo_stat_numbers.json delete mode 100644 public/images/ui/pbinfo_stat_numbers.png diff --git a/index.css b/index.css index dd47387ad..9a507ad67 100644 --- a/index.css +++ b/index.css @@ -150,10 +150,6 @@ body { display: none; } -#touchControls:not([data-ui-mode='COMMAND']):not([data-ui-mode='FIGHT']):not([data-ui-mode='BALL']):not([data-ui-mode='TARGET_SELECT']) #apad #apadStats { - display: none; -} - #apad .apadRectBtnContainer + .apadSqBtnContainer { top: calc(var(--controls-size) * -1.9); left: calc(var(--controls-size) * -0.9); diff --git a/index.html b/index.html index 506fa4f1e..bd316330a 100644 --- a/index.html +++ b/index.html @@ -74,9 +74,6 @@
V
-
- Shift -
Menu
diff --git a/public/images/pbinfo_stat_numbers.json b/public/images/pbinfo_stat_numbers.json deleted file mode 100644 index 32170690a..000000000 --- a/public/images/pbinfo_stat_numbers.json +++ /dev/null @@ -1,293 +0,0 @@ -{ - "textures": [ - { - "image": "pbinfo_stat_numbers.png", - "format": "RGBA8888", - "size": { - "w": 117, - "h": 8 - }, - "scale": 1, - "frames": [ - { - "filename": "+1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 9, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 18, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+4", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 27, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+5", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 36, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+6", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 45, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 54, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 63, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 72, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-4", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 81, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-5", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 90, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-6", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 99, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "0", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 108, - "y": 0, - "w": 9, - "h": 8 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:794aa4af3291db5abd8a2667626c1998:1a6706ad557b92f9bf099c23e02af4a6:6537c634087637bb27e8a1edb1ee2e35$" - } -} diff --git a/public/images/ui/legacy/pbinfo_enemy_boss_stats.png b/public/images/ui/legacy/pbinfo_enemy_boss_stats.png deleted file mode 100644 index 94c9f2a181736d88c6752f2c97ed0bbbee23ebcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 435 zcmeAS@N?(olHy`uVBq!ia0vp^n}ArJgAGVJb4-r_QjEnx?oJHr&dIz4vU5FM978JR zyuG8?cgR7a?csXf_7^8kc|Ex$m-yBz<$7q-n^RU*Eb9Vy3q^L$xwlCBgn&~-ln2-0 zC$%D(Zao#Zd6NElh+n&%^Pj+>91Q?jM7YZ*~R6rK6tBHXtJ>3o}%+B70Tit?}|9LLp3388Oyx(ny$dZ`X4n6UD>PshjO%e?;W3et7Lx@QEIV2LHO-ZhLc6eY9Ry zIQ|Mdb1{9R)SaoXcSRIE<`z6H%nuWjbE9V$ zXGWbr(B0xb=lC1f6GDcM4fWFUoyzXm2QNAn5;^S^|FUJBo0|`=UT>R$XHs^CNV z##av>ty$f?T7lzV!;W1Rn!7wYzpJ*28OBxY>HqxBa!BncE&SaXRbV6dDO(__3L?7E8i*EoZkKZ{HwqsHRc+nk205eyDOS2sxDu$ zd@tM{5g62QzVkTGE`^WE*Hfq8w-A>Rt4KTHq5izn`AE{j-lt}1uFk6Sl=!q)x&3rH zmfHGREPZQC>e=c~;%vpYyt-a*X%jpw^vJ`ZrANz4IZ?ukeBYJTaNN^-KBA z)J%%Y&U~o6pj>*#j=aoIas@k?dF)+-(V{Q3XI{exr|Grpv%NI5;(qK@ xp0+UKM9$<@NoVioZhp6Q^O64&v*v`HV4ZIk%FUH_dOOew44$rjF6*2UngE&&E5rZ* diff --git a/public/images/ui/legacy/pbinfo_player_mini_stats.png b/public/images/ui/legacy/pbinfo_player_mini_stats.png deleted file mode 100644 index dd2b7e65ba3522986e78d6844a6be8823c3382ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 674 zcmV;T0$u%yP)EX>4Tx04R}tkv&MmKpe$iQ%gl!9Lyl%kfA!+MMWJ;6^me@v=v%)FuC*#nzSS- zE{=k0!NHHks)LKOt`4q(Aou~|>f)s6A|?JWDYS_3;J6>}?mh0_0Ya# zo%24i$jY)xd`>)J&;^MfxvseU#<}FMz%xZ7o1P~YiKS8xD?QB0hDJP198oo$@`aqs zD(5ZETD8GC_v9}O74(%1*J+L-fh8o7qK*_aP(c+IqO|Iym`Kxp+`~WO_*3Lk$W;L& z#{z25AUl5WKlt6PS)7`5lR|MI@M7B^V?b~hXg6*9``EVICxHJMxYE1+S__!_B)!?y zB1gdBHgIv>)s#Kpat9cGs>_D#NPe0^u?W1M(KqFRp<7^J&F!tTkJASrOIK2l+uOfqI{p0s^F(smE#4Fv0000mP)t-s0001cl!Q`iV>wbnAvplXy>s5y zwg3O#*3P|BYg+%cd;kCcN$J_5c5S*Us$?%8vTKwfg`6|6Wc}-=`Gc19G2( z)VthFjRI1_B|(0{3_xi#U}t|v7bsoq>Eaj?(fam=p-_VZhjU<>!iIbQ4@G5d*>KA2 zr+S66yVASV%+m`tUAT0h%_Vu-2F6#OE9N=hF1aYEASTnz@k_ZzU>c{|jD#j+;!l_T zYhIRn;@{452VTh2;XbSE{bIVBSPWaCe#7lsobz5x%h_{T;XlZgp00i_>zopr0I}G2 ADF6Tf diff --git a/public/images/ui/legacy/pbinfo_stat.json b/public/images/ui/legacy/pbinfo_stat.json deleted file mode 100644 index b7da47fc1..000000000 --- a/public/images/ui/legacy/pbinfo_stat.json +++ /dev/null @@ -1,188 +0,0 @@ -{ - "textures": [ - { - "image": "pbinfo_stat.png", - "format": "RGBA8888", - "size": { - "w": 112, - "h": 6 - }, - "scale": 1, - "frames": [ - { - "filename": "SPATK", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 19, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 18, - "h": 6 - }, - "frame": { - "x": 0, - "y": 0, - "w": 18, - "h": 6 - } - }, - { - "filename": "SPDEF", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 19, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 18, - "h": 6 - }, - "frame": { - "x": 18, - "y": 0, - "w": 18, - "h": 6 - } - }, - { - "filename": "CRIT", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 17, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 16, - "h": 6 - }, - "frame": { - "x": 36, - "y": 0, - "w": 16, - "h": 6 - } - }, - { - "filename": "ACC", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 13, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 12, - "h": 6 - }, - "frame": { - "x": 52, - "y": 0, - "w": 12, - "h": 6 - } - }, - { - "filename": "ATK", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 13, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 12, - "h": 6 - }, - "frame": { - "x": 64, - "y": 0, - "w": 12, - "h": 6 - } - }, - { - "filename": "DEF", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 13, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 12, - "h": 6 - }, - "frame": { - "x": 76, - "y": 0, - "w": 12, - "h": 6 - } - }, - { - "filename": "EVA", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 13, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 12, - "h": 6 - }, - "frame": { - "x": 88, - "y": 0, - "w": 12, - "h": 6 - } - }, - { - "filename": "SPD", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 13, - "h": 8 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 12, - "h": 6 - }, - "frame": { - "x": 100, - "y": 0, - "w": 12, - "h": 6 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:40d30205ce8efd40dfa86cd11b0491d6:7076db6ed74199dcfb38fc8cd4d4a0e8:05882267d3999884e0491134e98b1b53$" - } -} diff --git a/public/images/ui/legacy/pbinfo_stat.png b/public/images/ui/legacy/pbinfo_stat.png deleted file mode 100644 index 62ec3758772daea6013a4de5532575a66caf8116..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 263 zcmeAS@N?(olHy`uVBq!ia0vp^1whQk!3-pITwg5(Qk(%kA+A8$!NK9)wXI7Q-Kzj{ z7)yfuf*Bm1-ADteDDa3ZW?Ec4QuN(io6fN32b;e=)XJ@8wjxa57 z6;5`pyz#?~2;;a-r4XYn{3?!Y<6HKbItN$2xk}gw>0y zUzy)p<5e-!w)Vy<(87aih3;8-LtI=7KLTHk<}Jk-^i|&t;uc GLK6T7%VuW) diff --git a/public/images/ui/legacy/pbinfo_stat_numbers.json b/public/images/ui/legacy/pbinfo_stat_numbers.json deleted file mode 100644 index 9c74ee86d..000000000 --- a/public/images/ui/legacy/pbinfo_stat_numbers.json +++ /dev/null @@ -1,293 +0,0 @@ -{ - "textures": [ - { - "image": "pbinfo_stat_numbers.png", - "format": "RGBA8888", - "size": { - "w": 117, - "h": 8 - }, - "scale": 1, - "frames": [ - { - "filename": "+1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 9, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 18, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+4", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 27, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+5", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 36, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "+6", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 45, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 54, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 63, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 72, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-4", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 81, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-5", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 90, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-6", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 99, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "0", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 108, - "y": 0, - "w": 9, - "h": 8 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:1f22b7cb085faf9e9764273fa5e70c28:afc5587ebacca78d178ac7e0c434591b:6537c634087637bb27e8a1edb1ee2e35$" - } -} diff --git a/public/images/ui/legacy/pbinfo_stat_numbers.png b/public/images/ui/legacy/pbinfo_stat_numbers.png deleted file mode 100644 index ee1453b21070f8de40a299a2d0c82c49093799cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 392 zcmV;30eAk1P)NeVolC?^B79yfh4NP^lrY9U!*DY-V@3rV{hYdQ>YK;=1YJaz3T;`<^$DGJL<5 z0VRW87@CHmA>NuYKzH1TLC5xSzn%dVgI*Y#hCzM2e@<+(--30)Oref_gmu$R&9E*Q zKCPUg&65~>rQzm$c=)wGxON}pkE{!ZPit-h_?q;dhMV)@;n(^|U!-Qgl_%A@VDM** z28vT)T`)O@Pln{f8%r6yr(x9i(DP6xH!0n5bN5`F;gccxJgbFgqhZwe(DRg7RCba7 mA?H5)Du%PaS?j+(7uOe-FYwO$9P0Z30000aGx7IS8(W?BZR#K+fR> zdKYIGa4pEV(m;21BcvdOLb@oX#w6N||Hk-!EB%ba5WYMoi2;a+$P89q(Q(?bWqnK1js?_P5*2T3V0acimCcp71_vhnu(jb5jIunqv- zU|m?J^YT3J;D0uwQBe98btaL0--i&Q%orEbYPFKro2Hw%bs$(LP1z0Bn7Fmy_dE4% zMRfpBN}Xl?_f7}_DJACfdG6;*DGY~0t+A6v4#Sx>8X@+5UvHKdwn^skG{U|W(s&x7 z*QuwrAFS-cx>Cy61NqkdXW#0iF_3fBLidQcv~I9QcYG^xiwstFvMunJ#6@+wo@071 z6=j=LzJ;IG-9*kySisI*Q}3$_A-J?SlT8{I?O!P+!f>JWs8i-krl0glDKjDTt88$>!uSb_l5uf002ovPDHLk FV1lYA{=)zO delta 487 zcmVIk&UmVKT0GxPa8d!07jZZ!ddIBQBbh_PFZe&65JuT|9nKq=MA`2Ra01f-NW z91f+QE2Xg6Y_!guHF6k+mXtE_eP3^s9ZQpWyFcUJ3~9SRW4V~*j$cQ1WnC#{?2Y{H zp1HO|plBRLh_0>&dpk(u@=|B3Ul!cn-d9Bu|Irn<2(MATii<NL1q8595j002ovPDHLkV1ifd@6!MP diff --git a/public/images/ui/pbinfo_enemy_boss_stats.png b/public/images/ui/pbinfo_enemy_boss_stats.png deleted file mode 100644 index 7148a7af4759141abb5e2b39c02a17b45af905e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^n}ArJgAGVJb4-r_QjEnx?oJHr&dIz4a&~*VIEGZr zd3$>`-ysJ9)(e`BNfSH%{_kJqko58BL=U^z3cqSH|eR)57 zW1&p?=O4X~e>-L8TFuvct=1%`yX>BUe4QwNkl)q|N~u!nI~O4Yq?Ab0 z)cUDa4A$g)|GB+zjjyH$DNlu{Sp;D;RZA6(J^uv|5`cGRUYNim(gR9s1U zPC0iQQ-etbpCZ(@E->2xpqYObLeyev0QOIDQc7gm-04MCwVfaNvS^f20{C4#?Hk+n z_uXHMMb~Ko*z*>1x7*b&2cv4u=Wc00L_|bHM0D5>)LE${MNRhx00000NkvXXu0mjf DZ|lLNkl8GRYx|2)P*70tlomTy+AL)kaKVi zE&#J{fxIOH3ldw!o(@eA9|jTwfke-5G6qF2@~g-B0uhl?&o>!GQQmYRa=R?cyz5!T z`|(5+MftElx~(F4j)*+88Q$()i?q{0_b3h8Z?jzmZ4pWY0rr0qL21w(A*rB55THl| zr9t=9O$8-_0MJt!bXT2JP$CGRMv#IUK>#&^6m9ha8#1%t_N<261?l{K=~*1pAjk_btXV2r7AjK;-r zyc-`ce5q`T&+mUP){_|k&bdbFdlX{~)>_gu^?vW1V>+D%9edXZS(f#zwRw^xVO733 z=iJLT_%&7jLr5Bc=c*yJqh3v!6wCSI$(1zcmbE+B8p>2?Q-u1?3(9$bLGjrb(}}GC z&Tny{X#k#=SKD&ZXsreQPoB<=eZOzJOKWr2MgYCV+*TmByu~acA|fIpa@iluDW|ek SO(V4c0000EX>4Tx04R}tkv&MmP!xqvQ>7vm5sQd8WT;LSL`4J_sbUc+7C6sqP{?%e(K->QQng1AHR!9McVpc!PL) z)6zNb6Ngw)Qi#uq#|*k4@gvt|m)|%S92R(H$VeyWi9^IW<^6Ko+1t_sz&)j z#$|=`7H73wWzBo?7Y1|MN{Z{Wh7rRO;z&S*j4Dbf!$O31jT93}I*)qzha7)`Tr#;z zVB}ap1u7)R5B>+gXKUssC)}i96zF`h?T-;4unRP5w*7r<+l>>z{|sDdEq|pB%zTnw zYiZ#lpm!U%xNd3k9&ot>3_j_SAvuztmXOZ_?`QN)S)l(G=w5T@);!1Q1CXX!E#CkK zhrnoove!M{-PJy~e|wtq`vH(aagbUB zzo-t5uI_cI;7<`vL}@r@>=fw7Q_>^>xEhuomQto)FNAjEI4-`=cWfUYlv1Ys?$EX( z{-b279fr-f*TOp8O^+I^-|2j;`a~!KNp6au2K}h1f+CP)E`l2L=hG@E0!flV4f^#- z6%>Ia27#GDAc;X>X8YJF+efPS#oQskn5pI%x-*WUY4S8Vs<2+QHAobJnOn>qX}QG= c008jX1y1rsg=?D3Y5)KL07*qoM6N<$f~t=qVE_OC diff --git a/public/images/ui/pbinfo_enemy_type.png b/public/images/ui/pbinfo_enemy_type.png index 9bac63e5e72ba305c0c7769d72bc39d72aa8202e..021a120070c1872b54405196e4bcb2cec9920d06 100644 GIT binary patch literal 1502 zcmXw3e>l^59RD&u=ccklkrpRr5<fnh6k_S2{W7L7M z-u$_fs5z|3JThfIZhj>vf2A;Ol~}!6vHB@x@25&&4P&{!zP?c%v(a_#GdV;0!csb% zA(cw)w?mv{dgKx@KK_97)X;g^K{d`JFaZG6pgT(rpiuV%fC9_Y1sM=E+Hi-6({=yG zxoCXs&Z*1^4UcG#nDE;8NB&feT+%pQDt-9g(#mvpj&!dCxj4~1iTcj#WUk(Yh+O{m zxmHG){;FeW(-VZ1x9ZY?^zZ;D@MFk&A_&BKeql53NRSK2!S_KE=XJ9PmmDj*ZIYx~ zTg9pyr*I9=_cN%IW))RtSLGltUlzv+_dpo1cVx9E_YL;E)(~hH+7v8>_uNQ7A?d3n z*^lR<-JJn9yxt;uln$25#AKM%>8vasJgBHuQ+Vg-@<^UVWu7?2V6u&>38Tba{J}$S zV(f(tS-AhEz1Ga$$KYO!W|{d#Nf^fyNsDe77C;Id)&1~GVO*Hi@$iS&N!kgxts2$B zoJg@T<&}T%q;UIkzxjl4ihwuOxg8^Qdc*I%T7TpsOW(<1mzVUoj29K0r1|{pdgna4 z&8kKv9m6CE%W?Vx;(Wv35O8L*OA^$tu8BJYzo)r85@ExX)EQwyx&s$$jDFNM?6E_dii|3k`+mD)0Rjpr!9)ox>gN7O_05b$7 zh-Cmw;T1baQQ6?w$OJ8Uauw2!Me)&j+nD%Fv4R-V8kMt5p#B zRX0wvKmR%XS;e0{gV-bjt2gvFYW~diB zxSs22nK2yIv0XE_6Y1Uh@j;mitpMW~gtb^0y+bJzYJoU}Jg2zmLC;7ujHm0vjKSPE zg<^<;G5AV}M~dZzHrN@Cby}FF@n8VN@W!-aYc_h{(yu;zS6zWXk)NFb+gdy6jJ+Mo z-RyzY@62$Nspw+%(#I`y5qTW8TLpF~I=ekdrM>;Ixen@t3;az~zkui1`J#0Hqb`?D zqMfOe)lOehL2>?PC)Fab1F?7AR^2eNqTNouQZ82b*?Ul1^-N=cO^x6f)MUrqYFX&n zViWJ!OIQOzgMFmuD7_PG3~z9tE{XiFK3mpPg~H9eH^R83^8Kv3ui9VkXvf%E_uRtr zVO;!3?U5RE+iSNHR2%4!Bmqi)drkKzt5!(KDPMU8!`o}EcntfsWNDGD3<`*Q6At0BKS`47C$X9aYeb!_U0x*TY~<5hSE8n8iUmue1aT_L@j9XO;i@vXJOa= zM!DY1da9gR_TgAx-U6pN%Y0^L29=$c?$kOmqRmkk&xRY|vZGU#hT1`nxk{fTg@1Z+ znzkPF5qP7j)Q?j2LVj7U0RES|Vh$hWlH9jho!K42`>;mfZ)as?!3|Ci&Ckvg-UnVo resupsym6>#pP=$lydvQr&2;62s?XefC_i8JmjRxxJ}&H2p_%^y$!^{i literal 3599 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 diff --git a/public/images/ui/pbinfo_player.png b/public/images/ui/pbinfo_player.png index fee08f71044ee488bd172bf9b02db706a9cf4082..9d3e03bd66d86cdf8ab3cfd59be4ef9d6410ccd5 100644 GIT binary patch delta 616 zcmV-u0+;>k1daueF@H!&L_t(|obBAdPTNo%hT%6=r7mDtOmVaZ|#D^=AwA$T>{|y z{`MMK0n4%gn9t{_=Z;1rTz8s03~k$XIW5~GzVAQ(BKK9E&tTg&t~=GuVw47V*Ecn{ zq+W@M;5bfWQX%fXAUY0k`1iGCS&iu$vV0E5aexf}HGd3;XC*YPKAz_Re{P;O?Z=(J z@3P-4P6>ipC$SJTFR}T;@LhT#Kr@~tNIX4Rlr7F3ih1JlvSD0}h;CUMrfz+?^FUrW92r7(fq+sU8C^NhOn2+~R33uoA15d^47ggKu*i{Slh@`p?1>g%h%6Cw5J!=T0U*R1MnDJ6|U#*Z*JkoesN4y6h&V9 zS^IL#rHNpS$$z3KVzb$F)3Ol+L9lnip}Z&_gDU{iG###yJqW`PfbDi$yYFhX!dhEB z4IRgEH!YixG)-SW$f;^_3~?M|t<_*LPlNlL+mTx`uF6D6l4LfiP&6*cw*!3q`#KE6 z*>nv)$B`rn;PGFB@1WyQS!;op!Bg3K(f(8CKUlOl=YJNph0sZ>!pgJLse-2Lyi&dt}*K+!0R$E0vTWLUzE`_5mXrc zsQaRf);@*cL$jCTsXOrp#Tb)a{=Cd~yPcLDF5CP8>N7zOZ`s!|s^Ay5~jkO`|t=mu+hfnI_k z=inM#0M>Zx5s;aZNL^66l`fsq0gNCG1sw9X?>Cu1(1-l#*$DxNh%_t9$+kU+E$jPQ zwNL@#_zq#X{59{lreA2=gSdO&%~lna!$zEJhMTf#p=vQ&8km0u^%t$9gC&BAKmZI9 zfoaej`>DW0AOII80@I**bSf|r2*3r2z%*#CXdQ8nKpSiX0>DO~Ej9uH;N|1Lr!OCk z|9z~BkFR$CK&RD99q;S3dWF_jB}TWHN28}aYPmWoB_8}&0Km$brjE76Y>xK$v+x@8 zG8_(1e#Z0OcDH|+jT6CjT?ipePcMYyIJb;z7>41Gsv{dh>cWt0R&T-FUZ9s?$T_$M z7l7HfK;Dvp1&OUH5K*IY>CJ^)^|N88NNC4pVs+=4}QGTmJ(3~vGe$D%9 z=$A!Nln?u(Y8Bx=BIU(qc)3?Ccq~Cn18LBHo9*gki69XmDIk9lNQ3S;P6ZMHlCDey z(x7{MDv$_}bVVYN2HmyUuGk}Bhem)T8UcGW0wi(y`1JhcWAML^ZL!&|BuT^msC0bn znVUT57V~&KuA`Qlv)1Y@{gNcD<5}t0Th136Ouiehu`ZX)k+t@4i#a$Ek|dEaCiL`1 z#BqEW7bo8HP4R#J`Jwe>CP{M6HBw()j4`s-DoxYU_nmW^PNyfwu5N@Z%X-$@JV}zU zDj%G4?%^B!KbQQ5<1~;eTs0Iss;zudEa!_mSJIraxeHnvd@8glLd*6A{^x002ovPDHLkV1g-F&x8N~ diff --git a/public/images/ui/pbinfo_player_mini_stats.png b/public/images/ui/pbinfo_player_mini_stats.png deleted file mode 100644 index 7ce3bd1af1e541826337cedf9f284a5d14d9661d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 648 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 diff --git a/public/images/ui/pbinfo_player_type2.png b/public/images/ui/pbinfo_player_type2.png index 6d94871e8da1dfd56a0271a6a8ef1ae8e9d6c3c4..89b84d7f6305169db2e227aa33a9e2202cdeebfa 100644 GIT binary patch delta 1352 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 Wt8RFN+!3I289ZJ6T-G@yGywokWokPB diff --git a/public/images/ui/pbinfo_stat_numbers.json b/public/images/ui/pbinfo_stat_numbers.json deleted file mode 100644 index ec4f7117b..000000000 --- a/public/images/ui/pbinfo_stat_numbers.json +++ /dev/null @@ -1,293 +0,0 @@ -{ - "textures": [ - { - "image": "pbinfo_stat_numbers.png", - "format": "RGBA8888", - "size": { - "w": 117, - "h": 8 - }, - "scale": 1, - "frames": [ - { - "filename": "1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 9, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 18, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "4", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 27, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "5", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 36, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "6", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 45, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 54, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 63, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 72, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-4", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 81, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-5", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 90, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "-6", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 99, - "y": 0, - "w": 9, - "h": 8 - } - }, - { - "filename": "0", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 9, - "h": 8 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 9, - "h": 8 - }, - "frame": { - "x": 108, - "y": 0, - "w": 9, - "h": 8 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:b0719fae0d9b670a727148cdc7202249:afc5587ebacca78d178ac7e0c434591b:4825a9f02f72f1fe28a724c6c5dffb37$" - } -} diff --git a/public/images/ui/pbinfo_stat_numbers.png b/public/images/ui/pbinfo_stat_numbers.png deleted file mode 100644 index c778ba992734421a718b2c49db1db0ae77a28e09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 430 zcmV;f0a5;mP)X}UpFSFJe%YMSjb zvz=}Te=dw_+OM;>zwNiTz<(WGW!%j?&)@0VTARh5OWbc`j(J{Tok%Zt#$YoH;sBj7 z0D#IlJRc6p%*|?r>-8D{#_^;+F^22I1yqy`_PebZNKrNbfWEEq_WF{{oLyYu^!yS4 z#PO(4jM4P@WGYS8UqlLVGYqiSvW&F&OBuS>FtHC$Vz?0ZyX|CN5<3@SjG<>5X2}?8 zQ)v+?7z&xQg%~oUa!zD?QzeEgj_Hh<7_VVM6DZ`EEo4UD)*|DZy2Lt;DavMIyoRBA zxP2Ty%KN9gENZI8IE_78Q^T$GD~(@jhsGYQsdI~*V!X;!+J?fg{Gd2S+NQZaWGcsm zi<{b~a&9zLI&@IbQb7LyuD?x7eaKXf@hzMCJ+VH0TaTtDpMHPh p)) - p.toggleStats(pressed); - if (pressed) - this.setLastProcessedMovementTime(Button.STATS); - } else - return; - } + } else + return; if (inputSuccess && this.enableVibration && typeof navigator.vibrate !== 'undefined') navigator.vibrate(vibrationLength || 10); } @@ -1454,7 +1443,7 @@ export default class BattleScene extends SceneBase { * or not. It will only return true once, until the key is released and pressed down * again. */ - gamepadButtonJustDown(button: Phaser.Input.Gamepad.Button): boolean { + gamepadButtonJustDown(button: Phaser.Input.Gamepad.Button) : boolean { if (!button || !this.gamepadSupport) return false; @@ -1474,23 +1463,6 @@ export default class BattleScene extends SceneBase { return this.buttonKeys[button].some(k => Phaser.Input.Keyboard.JustDown(k)) || this.gamepadButtonJustDown(gamepad?.buttons[this.gamepadKeyConfig[button]]); } - /** - * gamepadButtonJustUp returns true if @param button has just been released - * or not. It will only return true once, until the key is released and pressed down - * again. - */ - gamepadButtonJustUp(button: Phaser.Input.Gamepad.Button): boolean { - if (!button || !this.gamepadSupport) - return false; - - return !this.gamepadButtonStates[button.index]; - } - - buttonJustReleased(button: Button): boolean { - const gamepad = this.input.gamepad?.gamepads[0]; - return this.buttonKeys[button].some(k => Phaser.Input.Keyboard.JustUp(k)) || this.gamepadButtonJustUp(gamepad?.buttons[this.gamepadKeyConfig[button]]); - } - /** * repeatInputDurationJustPassed returns true if @param button has been held down long * enough to fire a repeated input. A button must claim the movementButtonLock before diff --git a/src/data/splash-messages.ts b/src/data/splash-messages.ts index 198ff07ce..11629cf05 100644 --- a/src/data/splash-messages.ts +++ b/src/data/splash-messages.ts @@ -33,5 +33,6 @@ splashMessages.push(...[ 'Also Try Emerald Rogue!', 'Also Try Radical Red!', 'Eevee Expo!', - 'YNOproject!' + 'YNOproject!', + 'Shh, don\'t tell Sam!' ]); \ No newline at end of file diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 7072875d3..9a7bfb486 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -1179,10 +1179,6 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { return this.battleInfo.updateInfo(this, instant); } - toggleStats(visible: boolean): void { - this.battleInfo.toggleStats(visible); - } - addExp(exp: integer) { const maxExpLevel = this.scene.getMaxExpLevel(); const initialExp = this.exp; diff --git a/src/loading-scene.ts b/src/loading-scene.ts index 875d618ec..2f37b900a 100644 --- a/src/loading-scene.ts +++ b/src/loading-scene.ts @@ -39,21 +39,15 @@ export class LoadingScene extends SceneBase { } this.loadAtlas('namebox', 'ui'); this.loadImage('pbinfo_player', 'ui'); - this.loadImage('pbinfo_player_stats', 'ui'); this.loadImage('pbinfo_player_mini', 'ui'); - this.loadImage('pbinfo_player_mini_stats', 'ui'); this.loadAtlas('pbinfo_player_type', 'ui'); this.loadAtlas('pbinfo_player_type1', 'ui'); this.loadAtlas('pbinfo_player_type2', 'ui'); this.loadImage('pbinfo_enemy_mini', 'ui'); - this.loadImage('pbinfo_enemy_mini_stats', 'ui'); this.loadImage('pbinfo_enemy_boss', 'ui'); - this.loadImage('pbinfo_enemy_boss_stats', 'ui'); this.loadAtlas('pbinfo_enemy_type', 'ui'); this.loadAtlas('pbinfo_enemy_type1', 'ui'); this.loadAtlas('pbinfo_enemy_type2', 'ui'); - this.loadAtlas('pbinfo_stat', 'ui'); - this.loadAtlas('pbinfo_stat_numbers', 'ui'); this.loadImage('overlay_lv', 'ui'); this.loadAtlas('numbers', 'ui'); this.loadAtlas('numbers_red', 'ui'); diff --git a/src/locales/de/tutorial.ts b/src/locales/de/tutorial.ts index f37afcae9..2722c02ad 100644 --- a/src/locales/de/tutorial.ts +++ b/src/locales/de/tutorial.ts @@ -20,10 +20,6 @@ export const tutorial: SimpleTranslationEntries = { "pokerus": `A daily random 3 selectable starters have a purple border. $If you see a starter you own with one of these,\ntry adding it to your party. Be sure to check its summary!`, - "statChange": `Stat changes persist across battles as long as your Pokémon aren't recalled. - $Your Pokémon are recalled before a trainer battle and before entering a new biome. - $You can also view the stat changes for the Pokémon on the field by holding shift.`, - "selectItem": `After every battle, you are given a choice of 3 random items.\nYou may only pick one. $These range from consumables, to Pokémon held items, to passive permanent items. $Most non-consumable item effects will stack in various ways. diff --git a/src/locales/en/tutorial.ts b/src/locales/en/tutorial.ts index f37afcae9..2722c02ad 100644 --- a/src/locales/en/tutorial.ts +++ b/src/locales/en/tutorial.ts @@ -20,10 +20,6 @@ export const tutorial: SimpleTranslationEntries = { "pokerus": `A daily random 3 selectable starters have a purple border. $If you see a starter you own with one of these,\ntry adding it to your party. Be sure to check its summary!`, - "statChange": `Stat changes persist across battles as long as your Pokémon aren't recalled. - $Your Pokémon are recalled before a trainer battle and before entering a new biome. - $You can also view the stat changes for the Pokémon on the field by holding shift.`, - "selectItem": `After every battle, you are given a choice of 3 random items.\nYou may only pick one. $These range from consumables, to Pokémon held items, to passive permanent items. $Most non-consumable item effects will stack in various ways. diff --git a/src/locales/es/tutorial.ts b/src/locales/es/tutorial.ts index f37afcae9..2722c02ad 100644 --- a/src/locales/es/tutorial.ts +++ b/src/locales/es/tutorial.ts @@ -20,10 +20,6 @@ export const tutorial: SimpleTranslationEntries = { "pokerus": `A daily random 3 selectable starters have a purple border. $If you see a starter you own with one of these,\ntry adding it to your party. Be sure to check its summary!`, - "statChange": `Stat changes persist across battles as long as your Pokémon aren't recalled. - $Your Pokémon are recalled before a trainer battle and before entering a new biome. - $You can also view the stat changes for the Pokémon on the field by holding shift.`, - "selectItem": `After every battle, you are given a choice of 3 random items.\nYou may only pick one. $These range from consumables, to Pokémon held items, to passive permanent items. $Most non-consumable item effects will stack in various ways. diff --git a/src/locales/fr/tutorial.ts b/src/locales/fr/tutorial.ts index 55262b195..c9f8a392e 100644 --- a/src/locales/fr/tutorial.ts +++ b/src/locales/fr/tutorial.ts @@ -25,10 +25,6 @@ export const tutorial: SimpleTranslationEntries = { $violet. Si un starter que vous possédez l’a, essayez de $ l’ajouter à votre équipe. Vérifiez bien son résumé !`, - "statChange": `Stat changes persist across battles as long as your Pokémon aren't recalled. - $Your Pokémon are recalled before a trainer battle and before entering a new biome. - $You can also view the stat changes for the Pokémon on the field by holding shift.`, - "selectItem": `Après chaque combat, vous avez le choix entre 3 objets\ntirés au sort. Vous ne pouvez en prendre qu’un. $Cela peut être des objets consommables, des objets à\nfaire tenir, ou des objets passifs aux effets permanents. $La plupart des effets des objets non-consommables se cumuleront de diverses manières. diff --git a/src/locales/it/tutorial.ts b/src/locales/it/tutorial.ts index f37afcae9..2722c02ad 100644 --- a/src/locales/it/tutorial.ts +++ b/src/locales/it/tutorial.ts @@ -20,10 +20,6 @@ export const tutorial: SimpleTranslationEntries = { "pokerus": `A daily random 3 selectable starters have a purple border. $If you see a starter you own with one of these,\ntry adding it to your party. Be sure to check its summary!`, - "statChange": `Stat changes persist across battles as long as your Pokémon aren't recalled. - $Your Pokémon are recalled before a trainer battle and before entering a new biome. - $You can also view the stat changes for the Pokémon on the field by holding shift.`, - "selectItem": `After every battle, you are given a choice of 3 random items.\nYou may only pick one. $These range from consumables, to Pokémon held items, to passive permanent items. $Most non-consumable item effects will stack in various ways. diff --git a/src/phases.ts b/src/phases.ts index ceba555f2..8eda33de2 100644 --- a/src/phases.ts +++ b/src/phases.ts @@ -2671,6 +2671,7 @@ export class StatChangePhase extends PokemonPhase { let random = false; + const allStats = Utils.getEnumValues(BattleStat); if (this.stats.length === 1 && this.stats[0] === BattleStat.RAND) { this.stats[0] = this.getRandomStat(); random = true; @@ -2711,11 +2712,8 @@ export class StatChangePhase extends PokemonPhase { for (let stat of filteredStats) pokemon.summonData.battleStats[stat] = Math.max(Math.min(pokemon.summonData.battleStats[stat] + levels.value, 6), -6); - applyPostStatChangeAbAttrs(PostStatChangeAbAttr, pokemon, filteredStats, this.levels, this.selfTarget); - - pokemon.updateInfo(); - - handleTutorial(this.scene, Tutorial.Stat_Change).then(() => super.end()); + applyPostStatChangeAbAttrs(PostStatChangeAbAttr, pokemon, filteredStats, this.levels, this.selfTarget) + this.end(); }; if (relLevels.filter(l => l).length && this.scene.moveAnimations) { @@ -3339,7 +3337,7 @@ export class TrainerVictoryPhase extends BattlePhase { const trainerType = this.scene.currentBattle.trainer.config.trainerType; if (vouchers.hasOwnProperty(TrainerType[trainerType])) { if (!this.scene.validateVoucher(vouchers[TrainerType[trainerType]]) && this.scene.currentBattle.trainer.config.isBoss) - this.scene.unshiftPhase(new ModifierRewardPhase(this.scene, [ modifierTypes.VOUCHER, modifierTypes.VOUCHER, modifierTypes.VOUCHER_PLUS, modifierTypes.VOUCHER_PREMIUM ][vouchers[TrainerType[trainerType]].voucherType])); + this.scene.pushPhase(new ModifierRewardPhase(this.scene, modifierTypes.VOUCHER)); } this.scene.ui.showText(i18next.t('menu:trainerDefeated', { trainerName: this.scene.currentBattle.trainer.getName(TrainerSlot.NONE, true) }), null, () => { diff --git a/src/tutorial.ts b/src/tutorial.ts index 88e88fa80..918c68b9b 100644 --- a/src/tutorial.ts +++ b/src/tutorial.ts @@ -9,7 +9,6 @@ export enum Tutorial { Menu = "MENU", Starter_Select = "STARTER_SELECT", Pokerus = "POKERUS", - Stat_Change = "STAT_CHANGE", Select_Item = "SELECT_ITEM", Egg_Gacha = "EGG_GACHA" } @@ -43,11 +42,6 @@ const tutorialHandlers = { scene.ui.showText(i18next.t("tutorial:pokerus"), null, () => scene.ui.showText('', null, () => resolve()), null, true); }); }, - [Tutorial.Stat_Change]: (scene: BattleScene) => { - return new Promise(resolve => { - scene.showFieldOverlay(1000).then(() => scene.ui.showText(i18next.t("tutorial:statChange"), null, () => scene.ui.showText('', null, () => scene.hideFieldOverlay(1000).then(() => resolve())), null, true)); - }); - }, [Tutorial.Select_Item]: (scene: BattleScene) => { return new Promise(resolve => { scene.ui.setModeWithoutClear(Mode.MESSAGE).then(() => { diff --git a/src/ui/battle-info.ts b/src/ui/battle-info.ts index 3c2b541c6..ae794a256 100644 --- a/src/ui/battle-info.ts +++ b/src/ui/battle-info.ts @@ -7,9 +7,6 @@ import { StatusEffect } from '../data/status-effect'; import BattleScene from '../battle-scene'; import { Type, getTypeRgb } from '../data/type'; import { getVariantTint } from '#app/data/variant'; -import { BattleStat } from '#app/data/battle-stat'; - -const battleStatOrder = [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.ACC, BattleStat.EVA, BattleStat.SPD ]; export default class BattleInfo extends Phaser.GameObjects.Container { private player: boolean; @@ -27,7 +24,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container { private lastLevelExp: integer; private lastLevel: integer; private lastLevelCapped: boolean; - private lastBattleStats: string; private box: Phaser.GameObjects.Sprite; private nameText: Phaser.GameObjects.Text; @@ -50,11 +46,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container { public expMaskRect: Phaser.GameObjects.Graphics; - private statsContainer: Phaser.GameObjects.Container; - private statsBox: Phaser.GameObjects.Sprite; - private statValuesContainer: Phaser.GameObjects.Container; - private statNumbers: Phaser.GameObjects.Sprite[]; - constructor(scene: Phaser.Scene, x: number, y: number, player: boolean) { super(scene, x, y); this.player = player; @@ -147,6 +138,18 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.levelNumbersContainer = this.scene.add.container(9.5, (this.scene as BattleScene).uiTheme ? 0 : -0.5); this.levelContainer.add(this.levelNumbersContainer); + this.type1Icon = this.scene.add.sprite(player ? -139 : -15, player ? -17 : -15.5, `pbinfo_${player ? 'player' : 'enemy'}_type1`); + this.type1Icon.setOrigin(0, 0); + this.add(this.type1Icon); + + this.type2Icon = this.scene.add.sprite(player ? -139 : -15, player ? -1 : -2.5, `pbinfo_${player ? 'player' : 'enemy'}_type2`); + this.type2Icon.setOrigin(0, 0); + this.add(this.type2Icon); + + this.type3Icon = this.scene.add.sprite(player ? -154 : 0, player ? -17 : -15.5, `pbinfo_${player ? 'player' : 'enemy'}_type`); + this.type3Icon.setOrigin(0, 0); + this.add(this.type3Icon); + if (this.player) { this.hpNumbersContainer = this.scene.add.container(-15, 10); this.add(this.hpNumbersContainer); @@ -168,46 +171,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.expBar = expBar; this.expMaskRect = expMaskRect; } - - this.statsContainer = this.scene.add.container(0, 0); - this.statsContainer.setAlpha(0); - this.add(this.statsContainer); - - this.statsBox = this.scene.add.sprite(0, 0, `${this.getTextureName()}_stats`); - this.statsBox.setOrigin(1, 0.5); - this.statsContainer.add(this.statsBox); - - const statLabels: Phaser.GameObjects.Sprite[] = []; - this.statNumbers = []; - - this.statValuesContainer = this.scene.add.container(0, 0); - this.statsContainer.add(this.statValuesContainer); - - battleStatOrder.map((s, i) => { - const statX = i > 1 ? this.statNumbers[i - 2].x + this.statNumbers[i - 2].width + 4 : -this.statsBox.width + 8; - const statY = -this.statsBox.height / 2 + 4 + (i < battleStatOrder.length - 1 ? (i % 2 ? 10 : 0) : 5); - const statLabel = this.scene.add.sprite(statX, statY, 'pbinfo_stat', BattleStat[s]); - statLabel.setOrigin(0, 0); - statLabels.push(statLabel); - this.statValuesContainer.add(statLabel); - - const statNumber = this.scene.add.sprite(statX + statLabel.width, statY, 'pbinfo_stat_numbers', '3'); - statNumber.setOrigin(0, 0); - this.statNumbers.push(statNumber); - this.statValuesContainer.add(statNumber); - }); - - this.type1Icon = this.scene.add.sprite(player ? -139 : -15, player ? -17 : -15.5, `pbinfo_${player ? 'player' : 'enemy'}_type1`); - this.type1Icon.setOrigin(0, 0); - this.add(this.type1Icon); - - this.type2Icon = this.scene.add.sprite(player ? -139 : -15, player ? -1 : -2.5, `pbinfo_${player ? 'player' : 'enemy'}_type2`); - this.type2Icon.setOrigin(0, 0); - this.add(this.type2Icon); - - this.type3Icon = this.scene.add.sprite(player ? -154 : 0, player ? -17 : -15.5, `pbinfo_${player ? 'player' : 'enemy'}_type`); - this.type3Icon.setOrigin(0, 0); - this.add(this.type3Icon); } initInfo(pokemon: Pokemon) { @@ -295,14 +258,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.expMaskRect.x = (pokemon.levelExp / getLevelTotalExp(pokemon.level, pokemon.species.growthRate)) * 510; this.lastExp = pokemon.exp; this.lastLevelExp = pokemon.levelExp; - - this.statValuesContainer.setPosition(8, 7) } - - const battleStats = battleStatOrder.map(() => 0); - - this.lastBattleStats = battleStats.join(''); - this.updateBattleStats(battleStats); } getTextureName(): string { @@ -316,7 +272,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.mini = mini; this.box.setTexture(this.getTextureName()); - this.statsBox.setTexture(`${this.getTextureName()}_stats`); if (this.player) this.y -= 12 * (mini ? 1 : -1); @@ -329,34 +284,21 @@ export default class BattleInfo extends Phaser.GameObjects.Container { el.y += -8 * (mini ? 1 : -1); }); - this.statValuesContainer.x += 2 * (mini ? 1 : -1); - this.statValuesContainer.y += -7 * (mini ? 1 : -1); - const toggledElements = [ this.hpNumbersContainer, this.expBar ]; toggledElements.forEach(el => el.setVisible(!mini)); } - toggleStats(visible: boolean): void { - this.scene.tweens.add({ - targets: this.statsContainer, - duration: Utils.fixedInt(125), - ease: 'Sine.easeInOut', - alpha: visible ? 1 : 0 - }); - } - updateBossSegments(pokemon: EnemyPokemon): void { const boss = !!pokemon.bossSegments; if (boss !== this.boss) { this.boss = boss; - [ this.nameText, this.genderText, this.teraIcon, this.splicedIcon, this.shinyIcon, this.ownedIcon, this.statusIndicator, this.levelContainer, this.statValuesContainer ].map(e => e.x += 48 * (boss ? -1 : 1)); + [ this.nameText, this.genderText, this.teraIcon, this.splicedIcon, this.shinyIcon, this.ownedIcon, this.statusIndicator, this.levelContainer ].map(e => e.x += 48 * (boss ? -1 : 1)); this.hpBar.x += 38 * (boss ? -1 : 1); this.hpBar.y += 2 * (this.boss ? -1 : 1); this.hpBar.setTexture(`overlay_hp${boss ? '_boss' : ''}`); this.box.setTexture(this.getTextureName()); - this.statsBox.setTexture(`${this.getTextureName()}_stats`); } this.bossSegments = boss ? pokemon.bossSegments : 0; @@ -375,7 +317,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container { const divider = this.scene.add.rectangle(0, 0, 1, this.hpBar.height - (uiTheme ? 0 : 1), pokemon.bossSegmentIndex >= s ? 0xFFFFFF : 0x404040) divider.setOrigin(0.5, 0); this.add(divider); - this.moveBelow(divider as Phaser.GameObjects.GameObject, this.statsContainer); divider.setPositionRelative(this.hpBar, dividerX, uiTheme ? 0 : 1); this.hpBarSegmentDividers.push(divider); @@ -498,11 +439,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.lastLevel = pokemon.level; } - const battleStats = pokemon.summonData.battleStats.join(''); - - if (this.lastBattleStats !== battleStats) - this.updateBattleStats(pokemon.summonData.battleStats); - this.shinyIcon.setVisible(pokemon.isShiny()); resolve(); @@ -577,7 +513,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container { }); } - setLevel(level: integer): void { + setLevel(level: integer) { const isCapped = level >= (this.scene as BattleScene).getMaxExpLevel(); this.levelNumbersContainer.removeAll(true); const levelStr = level.toString(); @@ -586,7 +522,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.levelContainer.setX((this.player ? -41 : -50) - 8 * Math.max(levelStr.length - 3, 0)); } - setHpNumbers(hp: integer, maxHp: integer): void { + setHpNumbers(hp: integer, maxHp: integer) { if (!this.player || !this.scene) return; this.hpNumbersContainer.removeAll(true); @@ -599,12 +535,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container { for (let i = hpStr.length - 1; i >= 0; i--) this.hpNumbersContainer.add(this.scene.add.image(offset++ * -8, 0, 'numbers', hpStr[i])); } - - updateBattleStats(battleStats: integer[]): void { - battleStatOrder.map((s, i) => { - this.statNumbers[i].setFrame(battleStats[s].toString()); - }); - } } export class PlayerBattleInfo extends BattleInfo {