From 7048fbe06f370f09830807bfb5b06a4e6d1d9b48 Mon Sep 17 00:00:00 2001 From: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Date: Sat, 3 Aug 2024 16:34:05 -0400 Subject: [PATCH] [Feature] Implement generic evil team admins (#3234) * [Hotfix] Fix interactions of some moves not changing types (#3183) * [Hotfix] Fix wild spawns not having their HA (#3190) * Add evil admin placeholder images * Add admin names to locale files * Add evil team admin dialogue * Added new sprites * Make simple admin trainer pools * Add Korean localization * Increase evil boss money multiplier from 2.25 to 2.5 --------- Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> --- public/images/trainer/aqua_admin.json | 41 + public/images/trainer/aqua_admin.png | Bin 0 -> 1032 bytes public/images/trainer/aqua_admin_f.json | 41 + public/images/trainer/aqua_admin_f.png | Bin 0 -> 865 bytes public/images/trainer/flare_admin_f.png | Bin 0 -> 671 bytes public/images/trainer/flare_admin_m copy.json | 41 + public/images/trainer/flare_admin_m.json | 41 + public/images/trainer/flare_admin_m.png | Bin 0 -> 789 bytes public/images/trainer/galactic_admin_f.json | 41 + public/images/trainer/galactic_admin_f.png | Bin 0 -> 621 bytes public/images/trainer/galactic_admin_m.json | 41 + public/images/trainer/galactic_admin_m.png | Bin 0 -> 689 bytes public/images/trainer/magma_admin_f.json | 41 + public/images/trainer/magma_admin_f.png | Bin 0 -> 847 bytes public/images/trainer/magma_admin_m.json | 41 + public/images/trainer/magma_admin_m.png | Bin 0 -> 845 bytes public/images/trainer/plasma_sage.json | 2120 +++++++++++++++++ public/images/trainer/plasma_sage.png | Bin 0 -> 5075 bytes public/images/trainer/rocket_admin_f.json | 41 + public/images/trainer/rocket_admin_f.png | Bin 0 -> 736 bytes public/images/trainer/rocket_admin_m.json | 41 + public/images/trainer/rocket_admin_m.png | Bin 0 -> 645 bytes src/battle.ts | 7 +- src/data/dialogue.ts | 84 + src/data/trainer-config.ts | 38 +- src/enums/trainer-type.ts | 6 + src/field/trainer.ts | 4 +- src/locales/de/dialogue.ts | 72 + src/locales/de/trainers.ts | 11 + src/locales/en/dialogue.ts | 72 + src/locales/en/trainers.ts | 11 + src/locales/es/trainers.ts | 10 + src/locales/fr/dialogue.ts | 72 + src/locales/fr/trainers.ts | 11 + src/locales/it/dialogue.ts | 72 + src/locales/it/trainers.ts | 12 +- src/locales/ko/dialogue.ts | 72 + src/locales/ko/trainers.ts | 11 + src/locales/pt_BR/trainers.ts | 11 + src/locales/zh_CN/dialogue.ts | 72 + src/locales/zh_CN/trainers.ts | 11 + src/locales/zh_TW/dialogue.ts | 72 + src/locales/zh_TW/trainers.ts | 11 + 43 files changed, 3265 insertions(+), 7 deletions(-) create mode 100644 public/images/trainer/aqua_admin.json create mode 100644 public/images/trainer/aqua_admin.png create mode 100644 public/images/trainer/aqua_admin_f.json create mode 100644 public/images/trainer/aqua_admin_f.png create mode 100644 public/images/trainer/flare_admin_f.png create mode 100644 public/images/trainer/flare_admin_m copy.json create mode 100644 public/images/trainer/flare_admin_m.json create mode 100644 public/images/trainer/flare_admin_m.png create mode 100644 public/images/trainer/galactic_admin_f.json create mode 100644 public/images/trainer/galactic_admin_f.png create mode 100644 public/images/trainer/galactic_admin_m.json create mode 100644 public/images/trainer/galactic_admin_m.png create mode 100644 public/images/trainer/magma_admin_f.json create mode 100644 public/images/trainer/magma_admin_f.png create mode 100644 public/images/trainer/magma_admin_m.json create mode 100644 public/images/trainer/magma_admin_m.png create mode 100644 public/images/trainer/plasma_sage.json create mode 100644 public/images/trainer/plasma_sage.png create mode 100644 public/images/trainer/rocket_admin_f.json create mode 100644 public/images/trainer/rocket_admin_f.png create mode 100644 public/images/trainer/rocket_admin_m.json create mode 100644 public/images/trainer/rocket_admin_m.png diff --git a/public/images/trainer/aqua_admin.json b/public/images/trainer/aqua_admin.json new file mode 100644 index 00000000000..507fe556ef1 --- /dev/null +++ b/public/images/trainer/aqua_admin.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "aqua_admin.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} \ No newline at end of file diff --git a/public/images/trainer/aqua_admin.png b/public/images/trainer/aqua_admin.png new file mode 100644 index 0000000000000000000000000000000000000000..a4f7893e5652254377239e8c398650273aa64773 GIT binary patch literal 1032 zcmV+j1o!)iP)K~#9! ztkY2n13?G`(Xq9%YUcju%`PGTf$<%nXav_E?6Jm}{2`m_`HxNZB$sR?7`jEkRFHTu z7=#D_Nw0P6l1Kpg%tVzdX>bvG4=mheO}p=k5Oy9U9l)xX2^v81aJ8*tmO#=?_{c+B zWp`&aL%(PBl@Yeqbvr#`*5134a5KwHE?Y+g0l0rks}rR+VHgO&+189b%qUqmH%aEDW!F2G9%DDh22~Tv*%7AR$$1Qr`=+%dHw$K-f}Mdr zHM$--OI0L4dHuwShD^!8=wJjOh#*B!@k9VlPDv~E}|55 z2K&V$t>89@EF|Gza&XC?``obaXOE~CgivyZ&^)A1;QjvRelKM5k?COl2uUBqH;|y> zhv(6P5iWXA^8_+g6a{fXO8w$>{y&!Qmy&~f7t~fvct!ULnBoLJ?D)z;3V_9{hgMM( zwAXbp#TXx&uG4qsX`tER70ceZJW)zIv$Ump271h^gMh$u`4GP>CB;iyAjG$aUNTPM zlj=S8vuMd+@Olv5-`;MY>}$CTnH#pzaU z>h*RdPKxFzsc(gz#NiyMF{Ml4$ZaKoc#yL<)W0VFUbIGJAiq>#jgbNd=tq|HWXGoMp=DKqz^Y%w8RQ zk25!pBQ}4{vS-V9y~pwO*1QZnA7GpUGI@ zs3RvV`1ts+fLLu;nacnG00DGTPE!Ct=GbNc00PZPL_t(|UhUP{j^jEE1W*@AEnc$U z`~SZ>B}R4C|Sp717&KtU-^*04^56x$EI{Y6tNE3BhRx30;rJR*_T{p94d|4M&R2 zpkD|gFQB13)6@*YF9-=C0N6wkGZ7t`>-BVM1WAfgbQAMD!^zR~e}Xu%<*CVIL=o;u zG$x9qJqvA^I0^ndt%kX^iB#$zTch#oMi5_GQy*?8qHkAX72{dZITDY$v-lCAr(TYLqh zGCuq(h7#eyn}Ep rdG%J&gZ;UrGv!Msx38|{Oep3|C=+%=6<#*shF{MB0004W zQchCb(7St+3f7g{ZE;)1mpmtGLi@X1NGyF z=1@>~^wCGlk&i3$o{5CGy=^YAEV#{obF7GYz8yb-8w?B1bD5^;p+s81B5rRghBITn zps7Dh95Ii;EWH9#EW>Ujj^3H)k|9CW!@?ZcN1E$9;uOF}s%Q+931QzsKum_d} z0#1U^1pB_H#|uq-XVzpzocA)I*^&b_#Vg{~II)hDnTU ztyZ=mJs=tsE0t`+nfr$VR@7R7&I2k;045{YPs$FW^MP=I65kI*X9Rl}sBnmW5SiqsGK0o;IX39^MiN~FuWkG zAVBYi!APeF3S`0v%5&ax5KNLr5y8x)`SW1DXeI9-^amIu8{UH+4K@G(002ovPDHLk FV1hG~8Cn1U literal 0 HcmV?d00001 diff --git a/public/images/trainer/flare_admin_m copy.json b/public/images/trainer/flare_admin_m copy.json new file mode 100644 index 00000000000..1e39a3fcb03 --- /dev/null +++ b/public/images/trainer/flare_admin_m copy.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "flare_admin_f.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} \ No newline at end of file diff --git a/public/images/trainer/flare_admin_m.json b/public/images/trainer/flare_admin_m.json new file mode 100644 index 00000000000..4228fac6af0 --- /dev/null +++ b/public/images/trainer/flare_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "flare_admin_m.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:c30bf82452209a923f4becf13d275a9a:a6355b09f92c9c0388d0b919010f587f:0638dbf213f8a974eb5af76eb1e5ddeb$" + } +} diff --git a/public/images/trainer/flare_admin_m.png b/public/images/trainer/flare_admin_m.png new file mode 100644 index 0000000000000000000000000000000000000000..f431c20a479fccd415a489ed943d10a2c9a3f4a1 GIT binary patch literal 789 zcmV+w1M2*VP)Ax-SaR2}S0d!JMQvg8b*k%9#0*XmQK~#8Nt=3tN<1h>aP*-u0Y$rX-{SP~)g}9Xt zl7W_jAwc?gphlFjMN(?7J8v#RO1u{OjZje%g=08Am z6-je+rGXw zz^K4&Yj{+v=1am4@awi2al18wI6(lYdx#T+@zx4vvEW{3vVGk;!8b!jcpV_#gRoW* zs=C)=4I1nLq6O6a4vcWw3fSL7_ZM(zDlQ_G$nYA$TJ-QJ-VLINb$J0^A{U$@n!vxP zyaI|};89+~P_X7zGhVz93%E4CkCE35)E=b7dmmqT)R&64)FPIiz&+~w2_|cMEI5=76*dWZBLD-GgAY4ZU9sErnJSF)CC8ab7TB+$02P+gau^O}ykQSWPVC=?0iY3$pH{fehWzDmCQf=AnT?Pkh14k6Q8fm&|DzTR~gkoUr_RT@ILq$gGRCwCW)zOZtFbn|EOl%Vfbo>8*d+kQ_!Yi?~JFTkla^wh0 zEx#NrjYO?2iC$>o<#H_xWEnZzQoNt&BuSVryp}g3AqAKu(uUM>!M2}ZBLi%04>7!H zu#5@OJ+$Fvj7U9vNR*NQw!SR;799sAN9@ZM?MEX8WczgNv;>i*aX1&Rnr9qv^IC(? zgp^02s$9Gwa`4o9y)GhyL4@+G&Z|0k8wYqS_N~97ejrjJ5iu`Bo`LjN@7so%_-A~h z_W?W*_r4vza=Y1$Q+>bDM>F>Q@D=G-P)ut*-ddqNA)^8V15Bv3ib<`MiHIZ)1C#+~ zggK}ps%fBl4kB6N>WQp*;5i{#;22OOb3zeK1nUP>AqkANaj=RRNnU{QlLHdq8lnJM z;26=2EU&Hsk_e74$?)u(cyk=$O#P;wWL@_JRT8}%(6}^tWrchD?BalUP#E={G8Ymt zWC$+_lnBaf5S_4;tN~9s6BI82Bp6Es4X>nK8H@NH=RwH^RYYu@B?t8E{|i?#LG>m< z)73k{I8TGo0MU#I*YF0&ngQ0!jdlLY)X1(6iC|$Kw5yj7qA4KvE&r2XqR3wdO>0%V zd+W*!=v~3pJyn?5!W(E#MofVBO@ti9Z&i@@xGA(%BMZk9Yyh00000NkvXX Hu0mjf+(HpR literal 0 HcmV?d00001 diff --git a/public/images/trainer/galactic_admin_m.json b/public/images/trainer/galactic_admin_m.json new file mode 100644 index 00000000000..f404c2247e9 --- /dev/null +++ b/public/images/trainer/galactic_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "galactic_admin_m.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:3012867f03f02c4ee67a8ab3ad5a000e:77a5f60f1adc158664b3b2ee17bf30fe:7e8259b5177c0a76e5d02d6bdc66affe$" + } +} diff --git a/public/images/trainer/galactic_admin_m.png b/public/images/trainer/galactic_admin_m.png new file mode 100644 index 0000000000000000000000000000000000000000..cb59227c7a743b3c220a0a10072504123947289e GIT binary patch literal 689 zcmV;i0#5yjP)n7VgLXD|NsAcdxJ`9oV~rpAVG89qy>pb+drDfpdt%;FTK~OLt{e_h00001 zbW%=J06^y0W&i*JFG)l}RCwCO)`?cFN(_WyDg`u+pzr^-w>pimot0$W^Pj=_TPf$^ zAGc%}56ChvaqmL(Xa+dz&(b-0IiR3}OSw=zsmA3@?wm@Ryj+|>WPpo{?bKyX0H0=o z{#R}axIej8XO#iY)#omGAP#VedmcKt12Qj=>Lxg1Ue_JtyzKP^x$^n>p17~C)xGip zx96K8PLK5hYOPx-9BzuWd6n1Ovo>*C?}2;W_D$Y!#;vM#z58MDH|NFCs&~_4Ya=gC z1wh&~O`tkBm}1~SvkA?V;@9~jlJ9ze8_o1bobv*ppzD8eK@e0OG=M`aQbs8+FJNy7 z#t|qE7NW&4C{ExmFfLvoAaKYKIgaBA4rB^AcF>LwIv532151Ol!0{C%%#3NEqJv>i z;5c>=2!T`U4QPh&h0|mvH*>N|o~%k?crrUR9XW_Ve-;KxrBM&5}Z&pF?T zU;xC&XWj$(adAKK?r0j6*#}VF1l8ev6dC=hi=PM=fjrQl{J@;eI2Y%f2+Ia>dO4e6 z=Ue5R2=mfFJKrV?^k0wci|f^-m-A1a`VuUqj4k^;SX#!fUTnp)Kb%Nq!^j`@E{2+?9q~^>| zegX|MSJPNTUS34%kPze4(>TEpF3-3khTs6#&@hHx8>0m^{ewq+%W!n%0C zWnIa*<9L66Z@G9-z#)Rr9>0}4juu2%d|(5T_T<`mW)*#2!y>I|$_;~o#BLC#&GUfI z0X0Bs`%et>zQ29#pbBDp^j~lDyldLFM$M$6c?KTvgC;7d;-DgY9{K`u2kptQ&*<0% zA`*X#O7?E=MxA_%N+ze*Aa;?uQ$)@=IUBM`ymf_0Oh`FpYznwUi74I{V;WQ51TGLE z1QVb#D>!oWiD4<5Y098D893dd3uF@O339@%h*Oj;Il!=reK$xMa^sW}tCwA(NOyvw zAQNrbB{D5bfD)hrQUpx&bS2~hf{2xkuoWF0Vz3fNWW)k)Xc~+j5y@VM6-`W&dKE+~ z6B{OCg-_9O9f5igF;1B7XDGtD__iJOCKWYBRF5cly-nRy3`<7~u>&-Zq=+zpNyPw{ z$0U!UdWJs}+&vS&6%Lc?c!q>>8!^nwDuN3Dk`EGjLS#V7k0<9(sNgB$15e(Uh;z!w z3TCFeh~~K@GYlKks3a@si_MCaJHdv%pfa4s3v>r328(+BB$V{Crmq2>Qn@A81@}rI zY-(uwy&7l|nj-cUy#ns21okFZ1m^-)>Pmkv6jeYB1-yoCa8{&&A^P`ZvBpooxxk0Lq12AYQdeboHt Z`2!llB*-I|PaFUM002ovPDHLkV1fX3YV`mB literal 0 HcmV?d00001 diff --git a/public/images/trainer/magma_admin_m.json b/public/images/trainer/magma_admin_m.json new file mode 100644 index 00000000000..9961b8dcd3b --- /dev/null +++ b/public/images/trainer/magma_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "magma_admin_f.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:f63ad48affc076f60fae78992c96a2bf:80928b32710abcb28c07c6fc5a425d99:3b961d8852b62aaf24ceb2030c036515$" + } +} diff --git a/public/images/trainer/magma_admin_m.png b/public/images/trainer/magma_admin_m.png new file mode 100644 index 0000000000000000000000000000000000000000..93e3a17539d315e1ff7846e412b5264335f3d064 GIT binary patch literal 845 zcmV-T1G4;yP)24bkm+Vi|K~#9!?9hP*gE0)m@m*VxTuSr)54)Vt7z3n$ z{Z$?KA+LWwg}TWd70|xnolmHZE8b&9#O{L-Bu?$UFMz=U%T;$gmWU7+HQHdZ0<6e= zKREpLG(PB5l-bGtqIOC%#s92ab&i@G1r3gJ8yYQfy$oG#`SlRwPm)k=d;q!?(A=u}IpzG~ZT?-Gf;3#OFGw|p0`Vs??6y+>mA`Vs62M$iy5(YVflef9)%;NfEm z?|7Tp#GHBubv}Y^YbU_)7P7FMdhKD=QwbqO$*C(WtQb?~Xiv1%ny@)E9!82I)QiLP;B|-L literal 0 HcmV?d00001 diff --git a/public/images/trainer/plasma_sage.json b/public/images/trainer/plasma_sage.json new file mode 100644 index 00000000000..05e75141ec0 --- /dev/null +++ b/public/images/trainer/plasma_sage.json @@ -0,0 +1,2120 @@ +{ + "textures": [ + { + "image": "plasma_sage.png", + "format": "RGBA8888", + "size": { + "w": 250, + "h": 250 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0002.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0003.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0004.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0005.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 13, + "y": 2, + "w": 55, + "h": 78 + }, + "frame": { + "x": 1, + "y": 82, + "w": 55, + "h": 78 + } + }, + { + "filename": "0006.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 14, + "y": 2, + "w": 54, + "h": 78 + }, + "frame": { + "x": 59, + "y": 1, + "w": 54, + "h": 78 + } + }, + { + "filename": "0007.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 14, + "y": 2, + "w": 54, + "h": 78 + }, + "frame": { + "x": 59, + "y": 1, + "w": 54, + "h": 78 + } + }, + { + "filename": "0008.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 3, + "w": 53, + "h": 77 + }, + "frame": { + "x": 1, + "y": 162, + "w": 53, + "h": 77 + } + }, + { + "filename": "0009.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0010.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0011.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0012.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0013.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0014.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0015.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0016.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 20, + "y": 3, + "w": 49, + "h": 77 + }, + "frame": { + "x": 170, + "y": 1, + "w": 49, + "h": 77 + } + }, + { + "filename": "0017.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 20, + "y": 2, + "w": 47, + "h": 78 + }, + "frame": { + "x": 58, + "y": 82, + "w": 47, + "h": 78 + } + }, + { + "filename": "0018.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 56, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0019.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 56, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0020.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 107, + "y": 81, + "w": 46, + "h": 80 + } + }, + { + "filename": "0021.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 104, + "y": 163, + "w": 46, + "h": 80 + } + }, + { + "filename": "0022.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0023.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0024.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0025.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0026.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0027.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0028.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0029.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0030.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0031.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0032.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0033.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0034.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 203, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0035.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 203, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0036.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 152, + "y": 163, + "w": 46, + "h": 80 + } + }, + { + "filename": "0037.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0038.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0039.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0040.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0041.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0042.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0043.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0044.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0045.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0046.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0047.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0048.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0049.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0050.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0051.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0052.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0053.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0054.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0055.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0056.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0057.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0058.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0059.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0060.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0061.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0062.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0063.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0064.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0065.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0066.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0067.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0068.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0069.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0070.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0071.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0072.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0073.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0074.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0075.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0076.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0077.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0078.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0079.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0080.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0081.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0082.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0083.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0084.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0085.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0086.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0087.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0088.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0089.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0090.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0091.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0092.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0093.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0094.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0095.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0096.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0097.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0098.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0099.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0100.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:98df2be457c75de554b8ce6c2f5ff582:93e2cb242dc211e2485f87e4db93af88:0c38bc008e5ede7b6331c02b8220846f$" + } +} \ No newline at end of file diff --git a/public/images/trainer/plasma_sage.png b/public/images/trainer/plasma_sage.png new file mode 100644 index 0000000000000000000000000000000000000000..6c866562989a99bbba8b844b7d17f3e5be6128de GIT binary patch literal 5075 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 literal 0 HcmV?d00001 diff --git a/src/battle.ts b/src/battle.ts index cbe6dee1a4a..e8a1323fc4c 100644 --- a/src/battle.ts +++ b/src/battle.ts @@ -464,7 +464,8 @@ export interface FixedBattleConfigs { /** * Youngster/Lass on 5 * Rival on 8, 55, 95, 145, 195 - * Evil team grunts on 35, 62, 64, 66, 112, 114 + * Evil team grunts on 35, 62, 64, and 112 + * Evil team admin on 66 and 114 * Evil leader on 115, 165 * E4 on 182, 184, 186, 188 * Champion on 190 @@ -485,13 +486,13 @@ export const classicFixedBattles: FixedBattleConfigs = { [64]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), [66]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) - .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), + .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_ADMIN, TrainerType.MAGMA_ADMIN, TrainerType.AQUA_ADMIN, TrainerType.GALACTIC_ADMIN, TrainerType.PLASMA_SAGE, TrainerType.FLARE_ADMIN ], true)), [95]: new FixedBattleConfig().setBattleType(BattleType.TRAINER) .setGetTrainerFunc(scene => new Trainer(scene, TrainerType.RIVAL_4, scene.gameData.gender === PlayerGender.MALE ? TrainerVariant.FEMALE : TrainerVariant.DEFAULT)), [112]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), [114]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) - .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), + .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_ADMIN, TrainerType.MAGMA_ADMIN, TrainerType.AQUA_ADMIN, TrainerType.GALACTIC_ADMIN, TrainerType.PLASMA_SAGE, TrainerType.FLARE_ADMIN ], true)), [115]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_BOSS_GIOVANNI_1, TrainerType.MAXIE, TrainerType.ARCHIE, TrainerType.CYRUS, TrainerType.GHETSIS, TrainerType.LYSANDRE ])), [145]: new FixedBattleConfig().setBattleType(BattleType.TRAINER) diff --git a/src/data/dialogue.ts b/src/data/dialogue.ts index ec3358b1a77..4386515c953 100644 --- a/src/data/dialogue.ts +++ b/src/data/dialogue.ts @@ -459,6 +459,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.ROCKET_ADMIN]: [ + { + encounter: [ + "dialogue:rocket_admin.encounter.1", + "dialogue:rocket_admin.encounter.2", + "dialogue:rocket_admin.encounter.3", + ], + victory: [ + "dialogue:rocket_admin.victory.1", + "dialogue:rocket_admin.victory.2", + "dialogue:rocket_admin.victory.3", + ] + } + ], [TrainerType.MAGMA_GRUNT]: [ { encounter: [ @@ -469,6 +483,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.MAGMA_ADMIN]: [ + { + encounter: [ + "dialogue:magma_admin.encounter.1", + "dialogue:magma_admin.encounter.2", + "dialogue:magma_admin.encounter.3", + ], + victory: [ + "dialogue:magma_admin.victory.1", + "dialogue:magma_admin.victory.2", + "dialogue:magma_admin.victory.3", + ] + } + ], [TrainerType.AQUA_GRUNT]: [ { encounter: [ @@ -479,6 +507,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.AQUA_ADMIN]: [ + { + encounter: [ + "dialogue:aqua_admin.encounter.1", + "dialogue:aqua_admin.encounter.2", + "dialogue:aqua_admin.encounter.3", + ], + victory: [ + "dialogue:aqua_admin.victory.1", + "dialogue:aqua_admin.victory.2", + "dialogue:aqua_admin.victory.3", + ] + } + ], [TrainerType.GALACTIC_GRUNT]: [ { encounter: [ @@ -489,6 +531,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.GALACTIC_ADMIN]: [ + { + encounter: [ + "dialogue:galactic_admin.encounter.1", + "dialogue:galactic_admin.encounter.2", + "dialogue:galactic_admin.encounter.3", + ], + victory: [ + "dialogue:galactic_admin.victory.1", + "dialogue:galactic_admin.victory.2", + "dialogue:galactic_admin.victory.3", + ] + } + ], [TrainerType.PLASMA_GRUNT]: [ { encounter: [ @@ -499,6 +555,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.PLASMA_SAGE]: [ + { + encounter: [ + "dialogue:plasma_sage.encounter.1", + "dialogue:plasma_sage.encounter.2", + "dialogue:plasma_sage.encounter.3", + ], + victory: [ + "dialogue:plasma_sage.victory.1", + "dialogue:plasma_sage.victory.2", + "dialogue:plasma_sage.victory.3", + ] + } + ], [TrainerType.FLARE_GRUNT]: [ { encounter: [ @@ -509,6 +579,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.FLARE_ADMIN]: [ + { + encounter: [ + "dialogue:flare_admin.encounter.1", + "dialogue:flare_admin.encounter.2", + "dialogue:flare_admin.encounter.3", + ], + victory: [ + "dialogue:flare_admin.victory.1", + "dialogue:flare_admin.victory.2", + "dialogue:flare_admin.victory.3", + ] + } + ], [TrainerType.ROCKET_BOSS_GIOVANNI_1]: [ { encounter: [ diff --git a/src/data/trainer-config.ts b/src/data/trainer-config.ts index 4f3481b27ac..2cc228a93cf 100644 --- a/src/data/trainer-config.ts +++ b/src/data/trainer-config.ts @@ -556,7 +556,7 @@ export class TrainerConfig { const nameForCall = this.name.toLowerCase().replace(/\s/g, "_"); this.name = i18next.t(`trainerNames:${nameForCall}`); this.setTitle(title); - this.setMoneyMultiplier(2.25); + this.setMoneyMultiplier(2.5); this.setBoss(); this.setStaticParty(); this.setBattleBgm("battle_plasma_boss"); @@ -1187,6 +1187,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.PORYGON, Species.ALOLA_RATTATA, Species.ALOLA_SANDSHREW, Species.ALOLA_MEOWTH, Species.ALOLA_GRIMER, Species.ALOLA_GEODUDE], [TrainerPoolTier.SUPER_RARE]: [Species.DRATINI, Species.LARVITAR] }), + [TrainerType.ROCKET_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_rocket_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.RATTATA, Species.KOFFING, Species.EKANS, Species.GYARADOS, Species.TAUROS, Species.SCYTHER, Species.CUBONE, Species.GROWLITHE, Species.MURKROW, Species.GASTLY, Species.EXEGGCUTE, Species.VOLTORB], + [TrainerPoolTier.UNCOMMON]: [Species.PORYGON, Species.ALOLA_RATTATA, Species.ALOLA_SANDSHREW, Species.ALOLA_MEOWTH, Species.ALOLA_GRIMER, Species.ALOLA_GEODUDE], + [TrainerPoolTier.RARE]: [Species.DRATINI, Species.LARVITAR] + }), [TrainerType.MAGMA_GRUNT]: new TrainerConfig(++t).setHasGenders("Magma Grunt Female").setHasDouble("Magma Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [Species.SLUGMA, Species.POOCHYENA, Species.NUMEL, Species.ZIGZAGOON, Species.DIGLETT, Species.MAGBY, Species.TORKOAL, Species.BALTOY, Species.BARBOACH], @@ -1194,6 +1200,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.TRAPINCH, Species.HEATMOR], [TrainerPoolTier.SUPER_RARE]: [Species.TURTONATOR, Species.CHARCADET] }), + [TrainerType.MAGMA_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.NUMEL, Species.POOCHYENA, Species.SLUGMA, Species.SOLROCK, Species.HIPPOPOTAS, Species.SANDACONDA, Species.PHANPY, Species.SWINUB, Species.GLIGAR], + [TrainerPoolTier.UNCOMMON]: [Species.TRAPINCH, Species.HEATMOR], + [TrainerPoolTier.RARE]: [Species.TURTONATOR, Species.CHARCADET] + }), [TrainerType.AQUA_GRUNT]: new TrainerConfig(++t).setHasGenders("Aqua Grunt Female").setHasDouble("Aqua Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.CARVANHA, Species.WAILMER, Species.ZIGZAGOON, Species.LOTAD, Species.CORPHISH, Species.SPHEAL ], @@ -1201,6 +1213,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.MANTINE, Species.BASCULEGION, Species.REMORAID, Species.ARROKUDA], [TrainerPoolTier.SUPER_RARE]: [Species.DONDOZO] }), + [TrainerType.AQUA_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.CARVANHA, Species.CORPHISH, Species.ZIGZAGOON, Species.CLAMPERL, Species.CHINCHOU, Species.WOOPER, Species.WINGULL, Species.TENTACOOL, Species.QWILFISH ], + [TrainerPoolTier.UNCOMMON]: [Species.MANTINE, Species.BASCULEGION, Species.REMORAID, Species.ARROKUDA], + [TrainerPoolTier.RARE]: [Species.DONDOZO] + }), [TrainerType.GALACTIC_GRUNT]: new TrainerConfig(++t).setHasGenders("Galactic Grunt Female").setHasDouble("Galactic Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_galactic_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.GLAMEOW, Species.STUNKY, Species.CROAGUNK, Species.SHINX, Species.WURMPLE, Species.BRONZOR, Species.DRIFLOON, Species.BURMY], @@ -1208,6 +1226,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.HISUI_GROWLITHE, Species.HISUI_QWILFISH, Species.HISUI_SNEASEL], [TrainerPoolTier.SUPER_RARE]: [Species.HISUI_ZORUA, Species.HISUI_SLIGGOO] }), + [TrainerType.GALACTIC_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_galactic_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.GLAMEOW, Species.STUNKY, Species.BRONZOR, Species.CARNIVINE, Species.GROWLITHE, Species.QWILFISH, Species.SNEASEL ], + [TrainerPoolTier.UNCOMMON]: [Species.HISUI_GROWLITHE, Species.HISUI_QWILFISH, Species.HISUI_SNEASEL], + [TrainerPoolTier.RARE]: [Species.HISUI_ZORUA, Species.HISUI_SLIGGOO] + }), [TrainerType.PLASMA_GRUNT]: new TrainerConfig(++t).setHasGenders("Plasma Grunt Female").setHasDouble("Plasma Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_plasma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.PATRAT, Species.LILLIPUP, Species.PURRLOIN, Species.SCRAFTY, Species.WOOBAT, Species.VANILLITE, Species.SANDILE, Species.TRUBBISH], @@ -1215,6 +1239,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.PAWNIARD, Species.VULLABY, Species.ZORUA, Species.DRILBUR, Species.KLINK], [TrainerPoolTier.SUPER_RARE]: [Species.DRUDDIGON, Species.BOUFFALANT, Species.AXEW, Species.DEINO, Species.DURANT] }), + [TrainerType.PLASMA_SAGE]: new TrainerConfig(++t).setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_plasma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.SCRAFTY, Species.LILLIPUP, Species.PURRLOIN, Species.FRILLISH, Species.VENIPEDE, Species.GOLETT, Species.TIMBURR, Species.DARUMAKA, Species.AMOONGUSS], + [TrainerPoolTier.UNCOMMON]: [Species.PAWNIARD, Species.VULLABY, Species.ZORUA, Species.DRILBUR, Species.KLINK], + [TrainerPoolTier.RARE]: [Species.DRUDDIGON, Species.BOUFFALANT, Species.AXEW, Species.DEINO, Species.DURANT] + }), [TrainerType.FLARE_GRUNT]: new TrainerConfig(++t).setHasGenders("Flare Grunt Female").setHasDouble("Flare Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_flare_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.FLETCHLING, Species.LITLEO, Species.PONYTA, Species.INKAY, Species.HOUNDOUR, Species.SKORUPI, Species.SCRAFTY, Species.CROAGUNK], @@ -1222,6 +1252,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.LITWICK, Species.SNEASEL, Species.PANCHAM, Species.PAWNIARD], [TrainerPoolTier.SUPER_RARE]: [Species.NOIVERN, Species.DRUDDIGON] }), + [TrainerType.FLARE_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_flare_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.FLETCHLING, Species.LITLEO, Species.INKAY, Species.HELIOPTILE, Species.ELECTRIKE, Species.SKRELP, Species.GULPIN, Species.PURRLOIN, Species.POOCHYENA, Species.SCATTERBUG], + [TrainerPoolTier.UNCOMMON]: [Species.LITWICK, Species.SNEASEL, Species.PANCHAM, Species.PAWNIARD], + [TrainerPoolTier.RARE]: [Species.NOIVERN, Species.DRUDDIGON] + }), [TrainerType.BROCK]: new TrainerConfig((t = TrainerType.BROCK)).initForGymLeader(signatureSpecies["BROCK"],true, Type.ROCK).setBattleBgm("battle_kanto_gym").setMixedBattleBgm("battle_kanto_gym"), [TrainerType.MISTY]: new TrainerConfig(++t).initForGymLeader(signatureSpecies["MISTY"],false, Type.WATER).setBattleBgm("battle_kanto_gym").setMixedBattleBgm("battle_kanto_gym"), [TrainerType.LT_SURGE]: new TrainerConfig(++t).initForGymLeader(signatureSpecies["LT_SURGE"],true, Type.ELECTRIC).setBattleBgm("battle_kanto_gym").setMixedBattleBgm("battle_kanto_gym"), diff --git a/src/enums/trainer-type.ts b/src/enums/trainer-type.ts index 6bd8f567acb..db0bf3a8d64 100644 --- a/src/enums/trainer-type.ts +++ b/src/enums/trainer-type.ts @@ -53,11 +53,17 @@ export enum TrainerType { WORKER, YOUNGSTER, ROCKET_GRUNT, + ROCKET_ADMIN, MAGMA_GRUNT, + MAGMA_ADMIN, AQUA_GRUNT, + AQUA_ADMIN, GALACTIC_GRUNT, + GALACTIC_ADMIN, PLASMA_GRUNT, + PLASMA_SAGE, FLARE_GRUNT, + FLARE_ADMIN, ROCKET_BOSS_GIOVANNI_1, ROCKET_BOSS_GIOVANNI_2, MAXIE, diff --git a/src/field/trainer.ts b/src/field/trainer.ts index 3e78afeae83..107dfbe6831 100644 --- a/src/field/trainer.ts +++ b/src/field/trainer.ts @@ -121,8 +121,8 @@ export default class Trainer extends Phaser.GameObjects.Container { // Determine the title to include based on the configuration and includeTitle flag. let title = includeTitle && this.config.title ? this.config.title : null; - - if (this.name === "" && name.toLowerCase().includes("grunt")) { + const evilTeamTitles = ["grunt", "admin", "sage"]; + if (this.name === "" && evilTeamTitles.some(t => name.toLocaleLowerCase().includes(t))) { // This is a evil team grunt so we localize it by only using the "name" as the title title = i18next.t(`trainerClasses:${name.toLowerCase().replace(/\s/g, "_")}`); console.log("Localized grunt name: " + title); diff --git a/src/locales/de/dialogue.ts b/src/locales/de/dialogue.ts index 02c497b3182..6227c2d149d 100644 --- a/src/locales/de/dialogue.ts +++ b/src/locales/de/dialogue.ts @@ -378,6 +378,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Das war mal wieder ein Schuss in den Ofen!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "firebreather": { "encounter": { 1: "Meine Flammen werden dich verschlingen!", @@ -410,6 +422,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Wie kann das sein? Ich bin Teil vom mächtigen Team Magma! Wir wollen doch nur die Welt verbessern…" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "Du willst dich also mit Team Aqua anlegen? Du traust dich ja was… Dich werfe ich über Bord!", @@ -418,6 +442,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Vielleicht sollte ich wohl lieber selber über die Planke gehen…", }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Team Galaktik wird die Welt in eine bessere Welt verwandeln! Und du wirst uns nicht aufhalten!" @@ -426,6 +462,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Zyrus wird uns für diese Niederlage bestrafen…" }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "Pokémon sollten frei sein! Team Plasma wird sie befreien!" @@ -434,6 +482,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Wie konnte ich verlieren? Ich dachte, ich würde die Welt retten…" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: `Ich bin ein Mitglied von Team Flare! Das sieht man mir doch an. Mein Stil ist unverkennbar! @@ -443,6 +503,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Stil ist wohl doch nicht alles…" }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: `Ich bin beeindruckt, du hast es bis hierher geschafft! diff --git a/src/locales/de/trainers.ts b/src/locales/de/trainers.ts index 1390bf410ae..72776c40e88 100644 --- a/src/locales/de/trainers.ts +++ b/src/locales/de/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Rüpel von Team Rocket", "rocket_grunt_female": "Rüpel von Team Rocket", "rocket_grunts": "Rüpel von Team Rocket", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Rüpel von Team Magma", "magma_grunt_female": "Rüpel von Team Magma", "magma_grunts": "Rüpel von Team Magma", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Rüpel von Team Aqua", "aqua_grunt_female": "Rüpel von Team Aqua", "aqua_grunts": "Rüpel von Team Aqua", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Rüpel von Team Galaktik", "galactic_grunt_female": "Rüpel von Team Galaktik", "galactic_grunts": "Rüpel von Team Galaktik", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Rüpel von Team Plasma", "plasma_grunt_female": "Rüpel von Team Plasma", "plasma_grunts": "Rüpel von Team Plasma", + "plasma_sage": "Plasma Sage", "flare_grunt": "Rüpel von Team Flare", "flare_grunt_female": "Rüpel von Team Flare", "flare_grunts": "Rüpel von Team Flare", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/en/dialogue.ts b/src/locales/en/dialogue.ts index dda8891b788..44693c38aa1 100644 --- a/src/locales/en/dialogue.ts +++ b/src/locales/en/dialogue.ts @@ -391,6 +391,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Team Rocket blasting off again!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: " If you get in the way of Team Magma, don’t expect any mercy!" @@ -399,6 +411,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Huh? I lost?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "No one who crosses Team Aqua gets any mercy, not even kids!" @@ -407,6 +431,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "You're kidding me!" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Don't mess with Team Galactic!" @@ -415,6 +451,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Shut down..." }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "We won't tolerate people who have different ideas!" @@ -423,6 +471,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Fashion is most important to us!" @@ -431,6 +491,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "The future doesn't look bright for me." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "So! I must say, I am impressed you got here!" diff --git a/src/locales/en/trainers.ts b/src/locales/en/trainers.ts index 8e0394e0786..00367865d14 100644 --- a/src/locales/en/trainers.ts +++ b/src/locales/en/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Rocket Grunt", "rocket_grunts": "Rocket Grunts", "rocket_grunt_female": "Rocket Grunt", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Magma Grunt", "magma_grunt_female": "Magma Grunt", "magma_grunts": "Magma Grunts", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Aqua Grunt", "aqua_grunt_female": "Aqua Grunt", "aqua_grunts": "Aqua Grunts", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Galactic Grunt", "galactic_grunt_female": "Galactic Grunt", "galactic_grunts": "Galactic Grunts", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Plasma Grunt", "plasma_grunt_female": "Plasma Grunt", "plasma_grunts": "Plasma Grunts", + "plasma_sage": "Plasma Sage", "flare_grunt": "Flare Grunt", "flare_grunt_female": "Flare Grunt", "flare_grunts": "Flare Grunts", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/es/trainers.ts b/src/locales/es/trainers.ts index 133cce0785c..f881fc04f94 100644 --- a/src/locales/es/trainers.ts +++ b/src/locales/es/trainers.ts @@ -121,21 +121,31 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Rocket Grunt", "rocket_grunts": "Rocket Grunts", "rocket_grunt_female": "Rocket Grunt", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Magma Grunt", "magma_grunt_female": "Magma Grunt", "magma_grunts": "Magma Grunts", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Aqua Grunt", "aqua_grunt_female": "Aqua Grunt", "aqua_grunts": "Aqua Grunts", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Galactic Grunt", "galactic_grunt_female": "Galactic Grunt", "galactic_grunts": "Galactic Grunts", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Plasma Grunt", "plasma_grunt_female": "Plasma Grunt", "plasma_grunts": "Plasma Grunts", "flare_grunt": "Flare Grunt", "flare_grunt_female": "Flare Grunt", "flare_grunts": "Flare Grunts", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/fr/dialogue.ts b/src/locales/fr/dialogue.ts index d3ec5f85d5d..ac68aa6413b 100644 --- a/src/locales/fr/dialogue.ts +++ b/src/locales/fr/dialogue.ts @@ -2898,6 +2898,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Une fois de plus la Team Rocket s’envole vers d’autres cieux !" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: "N’espère pas recevoir de la pitié si tu te mets sur le chemin de la Team Magma !" @@ -2906,6 +2918,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Je…?\nJ’ai perdu ?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "Aucune pitié si tu te mets sur le chemin de la Team Aqua, même pour une gamine !" @@ -2914,6 +2938,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Comment ça ?" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Ne te mets pas en travers de la Team Galaxie !" @@ -2922,6 +2958,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Désactivation…" }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "Pas de quatiers à ceux qui ne suivent pas notre idéal !" @@ -2930,6 +2978,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa !" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Le style et le bon gout, il n’y a que ça qui compte !" @@ -2938,6 +2998,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Mon futur me semble guère radieux." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "Bien. Je dois admettre que je suis impressionné de te voir ici !" diff --git a/src/locales/fr/trainers.ts b/src/locales/fr/trainers.ts index 263c1f6792a..98bf8cdd2fb 100644 --- a/src/locales/fr/trainers.ts +++ b/src/locales/fr/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Sbire de la Team Rocket", "rocket_grunt_female": "Sbire de la Team Rocket", "rocket_grunts": "Sbires de la Team Rocket", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Sbire de la Team Magma", "magma_grunt_female": "Sbire de la Team Magma", "magma_grunts": "Sbires de la Team Magma", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Sbire de la Team Aqua", "aqua_grunt_female": "Sbire de la Team Aqua", "aqua_grunts": "Sbires de la Team Aqua", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Sbire de la Team Galaxie", "galactic_grunt_female": "Sbire de la Team Galaxie", "galactic_grunts": "Sbires de la Team Galaxie", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Sbire de la Team Plasma", "plasma_grunt_female": "Sbire de la Team Plasma", "plasma_grunts": "Sbires de la Team Plasma", + "plasma_sage": "Plasma Sage", "flare_grunt": "Sbire de la Team Flare", "flare_grunt_female": "Sbire de la Team Flare", "flare_grunts": "Sbires de la Team Flare", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/it/dialogue.ts b/src/locales/it/dialogue.ts index 702b550c45a..3861d530c01 100644 --- a/src/locales/it/dialogue.ts +++ b/src/locales/it/dialogue.ts @@ -391,6 +391,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Team Rocket blasting off again!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: " If you get in the way of Team Magma, don’t expect any mercy!" @@ -399,6 +411,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Huh? I lost?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "No one who crosses Team Aqua gets any mercy, not even kids!" @@ -407,6 +431,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "You're kidding me!" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Don't mess with Team Galactic!" @@ -415,6 +451,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Shut down..." }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "We won't tolerate people who have different ideas!" @@ -423,6 +471,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Fashion is most important to us!" @@ -431,6 +491,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "The future doesn't look bright for me." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "So! I must say, I am impressed you got here!" diff --git a/src/locales/it/trainers.ts b/src/locales/it/trainers.ts index 260e44bdca8..dde79d694ca 100644 --- a/src/locales/it/trainers.ts +++ b/src/locales/it/trainers.ts @@ -120,23 +120,33 @@ export const trainerClasses: SimpleTranslationEntries = { "workers": "Lavoratori", "youngster": "Bullo", "rocket_grunt": "Recluta Team Rocket", - "rocket_grunts": "Reclute Team Rocket", "rocket_grunt_female": "Recluta Team Rocket", + "rocket_grunts": "Reclute Team Rocket", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Recluta Team Magma", "magma_grunt_female": "Recluta Team Magma", "magma_grunts": "Reclute Team Magma", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Recluta Team Idro", "aqua_grunt_female": "Recluta Team Idro", "aqua_grunts": "Recluta Team Idro", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Recluta Team Galassia", "galactic_grunt_female": "Recluta Team Galassia", "galactic_grunts": "Reclute Team Galassia", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Seguace Plasma", "plasma_grunt_female": "Seguace Plasma", "plasma_grunts": "Seguaci Plasma", "flare_grunt": "Recluta Team Flare", "flare_grunt_female": "Recluta Team Flare", "flare_grunts": "Reclute Team Flare", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/ko/dialogue.ts b/src/locales/ko/dialogue.ts index 719b738778d..8e7f09ff373 100644 --- a/src/locales/ko/dialogue.ts +++ b/src/locales/ko/dialogue.ts @@ -391,6 +391,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "로켓단은 다시 떠오를 거니까!" }, }, + "rocket_admin": { + "encounter": { + 1: "어라 어라… 결국 여기까지 오셨습니까? 꽤 우수한 트레이너인가 보군요.", + 2: "영웅 놀이는 여기까지랍니다, 꼬마야.", + 3: "어른이 화를 내면 무섭다는 걸 보여 드리죠!" + }, + "victory": { + 1: "크으… 비주기님 용서해 주세요…!", + 2: "어떻게 이런 일이…", + 3: "아아… 넌 너무 강하다…" + }, + }, "magma_grunt": { "encounter": { 1: " 마그마단을 방해한다면, 자비는 없닷!" @@ -399,6 +411,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "하? 내가 졌어?!" }, }, + "magma_admin": { + "encounter": { + 1: "……아하… ……역시 왔네…그치만 안타깝게 됐어……다 끝났거든", + 2: "……남은……내 일은……너를……막는 것", + 3: "……너랑……인게이지……하고 싶어……아하하하" + }, + "victory": { + 1: "……룰루리", + 2: "……재밌쪄", + 3: "…하아하아……으…하아하아…" + }, + }, "aqua_grunt": { "encounter": { 1: "아쿠아단을 넘본 사람에게는 자비는 없다, 꼬마도 마찬가지야!" @@ -407,6 +431,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "말도 안돼!" }, }, + "aqua_admin": { + "encounter": { + 1: "각오하는 게 좋을 거야! 네 얼굴이 눈물로 범벅이 되게 해주겠어!", + 2: "아앙? 뭐야? 이 건방진 꼬맹이는…", + 3: "…아니 넌!? 일부러 여기까지 쫓아온 거야?" + }, + "victory": { + 1: "하아… 하아…완전 지쳤어", + 2: "크윽…!? 너무 봐줬나…!", + 3: "뭐…뭐라고!?" + }, + }, "galactic_grunt": { "encounter": { 1: "갤럭시단을 방해하지 마!" @@ -415,6 +451,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "사격 중지…… " }, }, + "galactic_admin": { + "encounter": { + 1: "나는 갤럭시단에 있는 간부 중의 한 명.", + 2: "갤럭시단을 방해한다면 일말의 가능성도 모두 제거한다!!", + 3: "왜 그래? 설마 떨고 있는 거야?" + }, + "victory": { + 1: "설마! 내가 졌다고!? 건방진 아이로구나!!", + 2: "…역시 강해!", + 3: "어린아이에게 지다니… 방심이란 무섭구나." + }, + }, "plasma_grunt": { "encounter": { 1: "다른 생각을 가진사람들은 용납하지 않겠다!" @@ -423,6 +471,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "플라-스마-!" }, }, + "plasma_sage": { + "encounter": { + 1: "너는 플라스마단에게 있어 불안요소가 될 것이다. 여기서 제거하겠다!", + 2: "이런 이런… 내가 싸워야만 하다니.", + 3: "여기까지 오다니 대단한 트레이너군." + }, + "victory": { + 1: "게치스…", + 2: "그건 그렇고 춥구먼. 나는 떨고 있다. 괴롭지만 살아 있다.", + 3: "흐음. 의외로 똑똑한 트레이너군." + }, + }, "flare_grunt": { "encounter": { 1: "패션이 우리한텐 가장 중요하다고!" @@ -431,6 +491,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "미래가 밝아 보이질 않네." }, }, + "flare_admin": { + "encounter": { + 1: "왔다! 왔구나! 자! 자! 아직 끝나지 않았다!", + 2: "너 강하구나. 에너지를 얼마나 갖고 있지?", + 3: "기다리고 있었어! 너를 조사하겠다. 자 시작한다!" + }, + "victory": { + 1: "강하구나, 너는. 응, 정말 강해, 너는.", + 2: "그렇지만 보스의 꿈이 이루어져 아름다운 세상이 태어날 것이다!", + 3: "굉장하구나 너! 아주 굉장해! 나는 너를 인정하겠다" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "그래서! 여기까지 오다니, 감탄이 절로 나오는군!" diff --git a/src/locales/ko/trainers.ts b/src/locales/ko/trainers.ts index aafe4121442..3a139026448 100644 --- a/src/locales/ko/trainers.ts +++ b/src/locales/ko/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "로켓단 조무래기", "rocket_grunt_female": "로켓단 조무래기", "rocket_grunts": "로켓단 조무래기들", + "rocket_admin": "로켓단 간부", + "rocket_admin_female": "로켓단 간부", "magma_grunt": "마그마단 조무래기", "magma_grunt_female": "마그마단 조무래기", "magma_grunts": "마그마단 조무래기들", + "magma_admin": "마그마단 간부", + "magma_admin_female": "마그마단 간부", "aqua_grunt": "아쿠아단 조무래기", "aqua_grunt_female": "아쿠아단 조무래기", "aqua_grunts": "아쿠아단 조무래기들", + "aqua_admin": "아쿠아단 간부", + "aqua_admin_female": "아쿠아단 간부", "galactic_grunt": "갤럭시단 조무래기", "galactic_grunt_female": "갤럭시단 조무래기", "galactic_grunts": "갤럭시단 조무래기들", + "galactic_admin": "갤럭시단 간부", + "galactic_admin_female": "갤럭시단 간부", "plasma_grunt": "플라스마단 조무래기", "plasma_grunt_female": "플라스마단 조무래기", "plasma_grunts": "플라스마단 조무래기들", + "plasma_sage": "플라스마단 현인", "flare_grunt": "플레어단 조무래기", "flare_grunt_female": "플레어단 조무래기", "flare_grunts": "플레어단 조무래기들", + "flare_admin": "플레어단 간부", + "flare_admin_female": "플레어단 간부", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/pt_BR/trainers.ts b/src/locales/pt_BR/trainers.ts index 61a0be25005..32cc46300d5 100644 --- a/src/locales/pt_BR/trainers.ts +++ b/src/locales/pt_BR/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Recruta da Equipe Rocket", "rocket_grunt_female": "Recruta da Equipe Rocket", "rocket_grunts": "Recrutas da Equipe Rocket", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Recruta da Equipe Magma", "magma_grunt_female": "Recruta da Equipe Magma", "magma_grunts": "Recrutas da Equipe Magma", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Recruta da Equipe Aqua", "aqua_grunt_female": "Recruta da Equipe Aqua", "aqua_grunts": "Recrutas da Equipe Aqua", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Recruta da Equipe Galáctica", "galactic_grunt_female": "Recruta da Equipe Galáctica", "galactic_grunts": "Recrutas da Equipe Galáctica", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Recruta da Equipe Plasma", "plasma_grunt_female": "Recruta da Equipe Plasma", "plasma_grunts": "Recrutas da Equipe Plasma", + "plasma_sage": "Plasma Sage", "flare_grunt": "Recruta da Equipe Flare", "flare_grunt_female": "Recruta da Equipe Flare", "flare_grunts": "Recrutas da Equipe Flare", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/zh_CN/dialogue.ts b/src/locales/zh_CN/dialogue.ts index 6afbcd71064..50d6c5f4333 100644 --- a/src/locales/zh_CN/dialogue.ts +++ b/src/locales/zh_CN/dialogue.ts @@ -390,6 +390,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "好讨厌的感觉啊!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: "如果你挡在熔岩队路上,那就别指望我们手下留情!" @@ -398,6 +410,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "哈?我输了?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "即使是小孩,如果要和海洋队作对,也别指望我们手下留情!" @@ -406,6 +430,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "你在开玩笑吧?" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "别惹银河队!" @@ -414,6 +450,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "停机了…" }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "异端不共戴天!" @@ -422,6 +470,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "等离子子子子子子!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "时尚最重要!" @@ -430,6 +490,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "未来一片黑暗啊…" }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "我不得不说,能来到这里,你的确很不简单!" diff --git a/src/locales/zh_CN/trainers.ts b/src/locales/zh_CN/trainers.ts index e06f2afe2ec..1d32fdf6e02 100644 --- a/src/locales/zh_CN/trainers.ts +++ b/src/locales/zh_CN/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "火箭队手下", "rocket_grunt_female": "火箭队手下", "rocket_grunts": "火箭队手下们", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "熔岩队手下", "magma_grunt_female": "熔岩队手下", "magma_grunts": "熔岩队手下们", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "海洋队手下", "aqua_grunt_female": "海洋队手下", "aqua_grunts": "海洋队手下们", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "银河队手下", "galactic_grunt_female": "银河队手下", "galactic_grunts": "银河队手下们", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "等离子队手下", "plasma_grunt_female": "等离子队手下", "plasma_grunts": "等离子队手下们", + "plasma_sage": "Plasma Sage", "flare_grunt": "闪焰队手下", "flare_grunt_female": "闪焰队手下", "flare_grunts": "闪焰队手下们", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/zh_TW/dialogue.ts b/src/locales/zh_TW/dialogue.ts index 0823236bc84..530906eda5b 100644 --- a/src/locales/zh_TW/dialogue.ts +++ b/src/locales/zh_TW/dialogue.ts @@ -390,6 +390,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Team Rocket blasting off again!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: " If you get in the way of Team Magma, don’t expect any mercy!" @@ -398,6 +410,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Huh? I lost?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "No one who crosses Team Aqua gets any mercy, not even kids!" @@ -406,6 +430,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "You're kidding me!" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Don't mess with Team Galactic!" @@ -414,6 +450,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Shut down..." }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "We won't tolerate people who have different ideas!" @@ -422,6 +470,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Fashion is most important to us!" @@ -430,6 +490,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "The future doesn't look bright for me." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "So! I must say, I am impressed you got here!" diff --git a/src/locales/zh_TW/trainers.ts b/src/locales/zh_TW/trainers.ts index 2a6c3eac662..0efae11bbea 100644 --- a/src/locales/zh_TW/trainers.ts +++ b/src/locales/zh_TW/trainers.ts @@ -120,21 +120,32 @@ export const trainerClasses: SimpleTranslationEntries = { "workers": "工人組合", "youngster": "短褲小子", "rocket_grunts": "火箭队手下們", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "熔岩队手下", "magma_grunt_female": "熔岩队手下", "magma_grunts": "熔岩队手下們", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "海洋队手下", "aqua_grunt_female": "海洋队手下", "aqua_grunts": "海洋队手下們", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "银河队手下", "galactic_grunt_female": "银河队手下", "galactic_grunts": "银河队手下們", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "等离子队手下", "plasma_grunt_female": "等离子队手下", "plasma_grunts": "等离子队手下們", + "plasma_sage": "Plasma Sage", "flare_grunt": "闪焰队手下", "flare_grunt_female": "闪焰队手下", "flare_grunts": "闪焰队手下們", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion