From 7370a7f519c15cbc84b4b93bb2436c6121517956 Mon Sep 17 00:00:00 2001 From: Martha Schilling Date: Thu, 26 Oct 2023 09:44:05 +0100 Subject: [PATCH 1/3] fixing Blastyke's and Totartle's palette issues --- gfx/pokemon/blastyke/back.png | Bin 4487 -> 351 bytes gfx/pokemon/blastyke/front.png | Bin 15662 -> 595 bytes gfx/pokemon/totartle/back.png | Bin 4652 -> 411 bytes gfx/pokemon/totartle/front.png | Bin 870 -> 890 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/gfx/pokemon/blastyke/back.png b/gfx/pokemon/blastyke/back.png index 207bab9ec89e63583f2d97b51e6e80d885985023..96d2694b714f47a25e0589e286c6002766faf2d6 100644 GIT binary patch literal 351 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfv_7YEDSN7*zQXJ~m*JD&HfkNUX zt`Q}{`DrEPiAAXl?mjL+V-(6#ixiCYObT0#ha~{X8kr`r`i7QVH`0qrw^+;qIN%7rC2LfyJL z))mXoW^!egdr9xGQIl6o6>y$E0bM>AY;S6Z#Ez=c)I$ztaD0e0sz!t BZd3pO literal 4487 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 diff --git a/gfx/pokemon/blastyke/front.png b/gfx/pokemon/blastyke/front.png index ea431167c7a05eb8cb87de90cd1d9b1f1f2a7c90..ffed54326eab62e63898e7e1dde48b0fbe8fcaa5 100644 GIT binary patch delta 571 zcmZ2ib(v*?ay z$CgSkbo>A*#02#iLKmV^D}aKGN#5=*|Ch3VItpZ$d%8G=RLprh>EOh}1{|&vuR3gy zny`?OyHUu{Gamek6l}!^pW|QOSMkjS#jj? zxhp4JmD*;$xOL{>ja9o!Ruy*W+;Ur1KVkJlSqGQDRpLUN@w}5yqzL`Hwzfp0e{xil zop$NUmeYwPYPRbvzRxpa=q?qXs<32DUh_|;oE3pDau#2BaBOeIslLMYsqA9LbK@TG zIH>(2^_!%5osiJOEP&|3M`njxgN@xNAhtTW@ literal 15662 zcmV+}J<-C6P) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U>nrvL(54W%+NT;1CS00mDIKCQ>t~;n!L?9`Q&% zGLvMLNd07Zc=+|(oC5ofj*|KRiGA3yN->&$=q`K$f;N^E~#=+77a zdcov7M?Tp9dXRiR{yrb_pBL)y?}OUg^RI_GoIk(6 zZ@2Gze@{1ZWk&0th`O)8X2+l58z)nq&W}}oJ^U_w{G4B%U+o_EV#)Wt?#ZtedWg*a zcZD2w7~u==`E!NE5OaLv!=EuO7R1lB^u!)la-Fij!WW;^(`MCTTJgPD(46AmV+rSd z`+2_=8t=RV-x>oi7Wk3>^w;&j`r?1**Y$nNDGGP{d#)H)G;$e+E9ZatE*2zwf7Y#> z3I6NXpXI;*Rs0aDtYA6Q+<3ro&)-YT68;fe>8x|&`wD;lQYc){{__G%5$|0XOh~N2 zT|+9NhWm-}34wWREYM)&G37W}flx}^3^L}FYP_D zHa!g%E9XM|Jh>4=qok5cDYZPMU8R>%Q_Z#1TAwP&jVC?%DNlW#r#<}{Ew$WAtLk`7LjKpSQjJ9Urmwr7wTwtKajruYcq3Rr|B5|Mcs>v1;MZs>QQX ze&6%=s`1(DdH#BdAe~10F=*qcfcNgVKWRS(Rxpr{HSi<~< zSibQ0+WlkY{!8n2mG)m+xA?zXxyz;d|6=7XmhPX|?LSzxEzhm9V!teOPVYqa@jWB9 zi{JOnfBxV8`F~#M|Gd!u4=*(OQ^t7vuHZo%@B6*v$P0*Hv&Fnq93iHS()#jy@29_C z+uw^w8s8hn2Dvk7mq4 zeal$<^dccMBV#~7-Z$I(K#b3`&=IdAf<8(~PXHdkkk!jBv!u4)SavS4fN*aKBFets zZ!*F(znk|_R_+Jcz(?PvB?Zds*v=6>z@tOT$6HmK1#cY0lj(oS8ffx)Svj?362JIpN%Ri zPv?>PeA9XwoLhGuiM4xJrLYfuzj>j6Mt*a@BB0vRj&r=gbNeP!U;CV+)Cn@W!f5S0 z_e`UdQ25ejJZpU;45MqjIRVAj`B>rqKmK#wtn<3+e8bDag7WPtf!JHE$Gr)VkrpvG zYuj_qua(T0(;hQ1;csO4$v6q4&a~^5797A_hxFCTM0Egu?^{0Ey@q$p+GCshDP^Qx z0_67Lq3T``k)I*<-ua$f8!PYp_Za^NLu`=|JqvC1wTX6!CtAWDW5ZYjiVUr>hWviW z*iLBWw#S~i^H2`{`Qmuz2(a!|N*|3y*>lWM*P92g+6v6d_wAQNO}Tw#@ka9tjbwiE z{&)kP)hHi%1@yyvF<*NTkYjzM8Z$z+-<{=sB3$14ykUC;KfK)y{Q8mll~_TEe`M#{ z@%@P8i_~B9Y2igd#_7Y=$-0!*kdEkryT7RIXU76Q?0aTj>R!AAqcpNw-*EI!7ntyt z`K1b1KfntVpPtDyw7rPF2X%p3@YhR%%J1=AM0N_uh&Wf-Ym&t8^(`=^zd?CQL=PZ~ zSk53J%U9oz!M2_gk^V5kh{VDQJasH)Y<#>Ip|XgUYdOGo7!v0omP@h@#cz> z!QPMB6B2~QVcK{7K2+Y-5j9Ao2Msr05TeiB?=mrE_yop`@j=P~%*;_w;A=kt{|sL{ zKFsuj2v)v8(v4?A4(?D{Qa~R}8Ex%>$0D%`axK0ge{t<^`~J1gUI0WgDm^XEvS-Dw z-S5adFgIQFSS!yO3u18sKPW4poq1;onC*$FF97{VJTzHppy1-$;}^@-@PZ7ES$qVA zc-QBx1t~_Ry;y?{nzzcgzAp=3$b76Dv;5%*QKhlZOmxO{5qB?d^RYm;FNhI&!O`|I znVmf)v!R$|mf(VuvR;!z- zsGXoee8Zx=vXpIBj1Oi?AG#ip0Iu43vF2j1#20}F4e>skmqovTd~E`qrWr$M0a{&v z6*1`ClW!^zD3GA~IxwGFFIf$NJ@}1%NS0&Go)$hy-QN z1yhRt1m7mp+ZQgOxRpYtvT_f;YJET(Shpf72XFIDV5}e<2v8;qbX)tCwaN0XTe-jY z31Bu@#S7rZz65m>(kZga)3O}t4g*6C53UE{1t75UhCI^=eF2VG89)2X>wAbxUZ-Ld z$IS#2Lk}_A9~2yDyZA3q!b~`|1UrGkV3v$?9x__1!%m#JP>_kRrvT0 zu;?SQ09$4(6B+~TDeq-W-xGU>0JxzgAtRvWMywJ? z6MTQcmpu4nW6kb?)g;u=xX?~RaSf&%AqEA*d3${bwIU46o2TI4R>S3=#RBKQ`xE<$ zPDEUqAq2lg67Uto7|vY7t%jtpy4wB3880+6On;N`(#bPB35)- z$JjE}2VEu+a|6cTCRj?E^SXHm@PmIJ)gA^sR)|iO$U1!mQ!ri@22KYup7Md_1_}Yp zS`qve{3l8-f(pgcC(;Ks1E63xrg9Pxk2hcvk6dr%>vtqDNHxA*VF+Yf0Bq5qr1rQ1 zvj@lwGIt8na7>@bwy>GhL14{yhNnniybJFgBf2YAgiqiNZcv!5v}&1i=euR4va9(TdI&*aIj4 zVa(_x2g%mw&G+1-C6kGq2pwg|dOhm&Fduk=g#u}kj;bRNkV=*hF-+tqZ&4>C0?gLL zGXtkJA%JekAE?Ar<%o5yEI5i6sRpMJwM22l$L4Xdq`Y<_0C_~rUf+$3Ej6-!Qrm=O zNUxxL0w!4R&xApvv2;h7^9@ky6)M;XqGBrUcXx;~06(Aws_ct%qAd6-o*79*{xmp; zAn1hNv>2w#L&J}CWn2{61YjAu9nHofu04ci!T6WL8Q{V8Mmu=qeyA2`jb-snj$$N-7X& zGH?R6F++>QA^T!>nDGh0(19U{Nd76Eu^2TU!spBC8n(P_`{j6W|B{(1~cM!>Y}PKXx@Pog#tHn3&)QXTk;` z3`;j}HzgVMPN=oP>t%5SWf4ffiV;IQ6|@17v7U=G!b|g(I0h1AFWgkZ#$v{B@3&h) z+E-Tpd&VXLPwo2!Wu&Yzw#7S)@Adj-pVC85Pe4`X0fCjtKhz2KmenzbXH8ZQpeHBn zVV3(FEorz22rYuQT0`Fl04sv`X^#`!e{Goz*J_|x1!=tx*M<6XslH0f> zP=PgZ60P$xbK}D0gbf?LVM#wz;$k@Igriv*`c-oKjs%seq@DW~?g}{W3PzOx0E{GGDE0R0b z7>wS&SWizZq-4|ul`q*+U@Ze9B6Swx%X&|?%8qJmtzHm0Ed5lxXe;QJ*g@G2mJyU> zEg%Y7A(cgw`YX$m{5akaB>0$hh$HUHZ;PxJ#-uuUa#tz1i3k(-g(l!F*c5pc8yUz88ZZ!; z0jQt1#Nm9X3`q_j9wP6z;kN{O?gCB`*(=}*hP01HB^LN^gI=c_zw$gt0P@!3h>)M? z!7npfd@{-vCk!>z&zoUkh5$Eel6W%b#7UzVdX0fYnZ^;wQj@T!t^~mxxD#bdh~zEe4XGo(V(y zR?@AOC-TFL9_^29(cBPL_N`Ekf8G!;?(n8;T@W zT&Vb^*e>v#!CN8x6xbx;D$(R4&y8sU-mt={qvRP3%1-eK1GEaZg~!qt8sI{g$%|(< z0d%$iB+U@TG4qNDd0+`5>luL)&h7*<=6jCeO5a_WSrV~d@BRqV4rhGf#zaapq_b7J zj>PHESOEFRt`hTBsbwp+82g7@b4wkXa$l!V9uyJB2TPu?hOt7cGz7D}F zZDNnPOEM8!85WJ2zlgiP&b~ggk?<2?Tbo)I1aSy(4-Oqa1~M10_;&xo0`}8vZOE`H zGmp$f?xuMG*OJ( zHK5{s_Z#~U z_M?gRsfB{0!-6D=1&Dz~B+_N?4wP*W#yxFECV|5Gaw6^f7OM(>n+Y5fNRrl45P>6)|i9_ITQb zEo8Q;9atMtZYPDihtqZvVqp^#7De5j)fc)&#hQRBIe_ahgflyDp_VlRz2H=227Y2; z>>+441e$4et?gy+3D_|&tM$7`#Z7~Na+e;;Ycd;7M zSwtAoL`6e9zRLIf%5*qP2-=UXeE+H3{nMWT0qZt+Ld!<<{wCZBTEGJ?LL?(3${j2{ zV_N5R+f|50PF*f1o|cXSdJi|MC~WtW>v&z>5>IX_l4GVYD9FQ5u;VXSMc}b5K#5m zy9X2|=7?#qY%m|&gqZ)07ZS{eIK_aE(HPqg4XCL8;(Gs=ZQy@ zx5TVUnkW>$JWOBDoohJhGbr zdbAjf=9*y=b|5-16)Wx|UK<62OU6L4La^Z?iC!K9Dc}yjRWK$)*Ow+5itvCCVVxTL zM;ep3bBl8qE($fvAedjU$(sLS@r@ZY3nmv=)gND;@jrUws$pGfC^!dk06X4mG1Ii`@3x@6+@%$D~kx-Q7e)put!Z(&;XGx^@)=H;O6sBTmaewS!{V zh!+Y17`Ck;8~HnN=fye0$1OBCQ3P_;85j|S;jj8Y3xn5u}<$As`~T8tQN zGI5*l~ zl)65q3lNM*!RH>$!@`VTRf|mg%rW>!Ccwfn??_(eA}oT2*v7h@A_AZ|{9?Ou0x%K1 zP-~doh659h)Q)aomAr9}U_oVu-NGlTt)!z*00I6Da5U+ap34n6j1@`~5h~_AXUdsF zCeiJWeKYYB4lSW#<|d}1+T`eV>>9UmYE|eW5nP^4%v*Ga9kBkRFW`{{ttDrn9bU23 zINI}g%2Nn0ls%5Un7nYUHUIt~9)V1ZFeVK>8glT#;?&3@!(i5Ifj_)_^Qnb|)7tZr z@u$HFsJs%7UTmQF)f;C-8=!j`1*wG^f77;Xi;M3zZluBUSp|a=fQR?vt(nf$t~-Gu zyiuF3g}sSD*jvJ24Ve`df7>qs93v6%_QO`^rp}vIkp<_Dqu&=E-MTaLwbb(VASpyQ z@a)Fswy|nkGAzn7n^)}m{7`^QD(W4D`apXH#m1U|5kSC1VWM{nnuq`h;d_gl#8_l9 zQxj&vEu20Fw}sC^}dvh7Oz=!kAGoyL#OgK6{-jHd^bG|V=Z@jm&f$In=1Gpf3Q zS43ZEyI*A5JFx3W0>F2CKR0>bf10_f%@!){t=-~D-5b_w0mI)jQN1rOp1yTO#nS5f zGJ?W_CSZ#7c)te4^Ni>^z6Yi|FYU(B+;^0Eaecfj1GCbH&VJ8+s8$#It=Y0q>%ZK| z_+l&)Xf?x8c2}y(u7=``s3EYfju;A{4Cb;=Q zWxVR{DGs`S<#y1gYDNtr26!D9h7`npA+!(*Xs*p9f`$RqW$YNdoSbal5wTp|-+$fx z&A&|*ylIGt<8|5uaG&X#2yGrd5k8>aXQX^AQ_Bg~8gP8T&A0s^Y~V-r{)Bw{@+iPt zWcUQ4ZAawEfp{}FjB%d^Asj{qY5Dez;ldbMoMajc9QKhEV@(9YWB=ETWX)rdW!j~3 zzyH(jp^fW2#n=n21LhU`noq}Nx3PlZrTtg~#`C`j5L~TgZftg|gpWnT+!^=nJ_r9~ zWX&?~)qWa7(9{h|i|FIj4VY!&He0PnH{Qw!6TX3<1hMSe)aL^h;gQdd`1)+XS%?_4 zDH6rK2do~X91E%)%BVJxoRDqG0XJ0I{>jwu`Zah7y$z89L)<(FYhs@$b|C_W-?o6)E!k36E&;XJDBj8$E4c z;)q@bp-$AJ^N1v>bxY7_t=%M_1qqZ>s9GpMJh^hP0zItwoL76_hR??mppkhrtBe)W zR9d6h5xS3#MncYi? zM419LE`^7I(e)e6@^*9=K`3xbFS!`fUKfJq8=>8GEx8&(bk-0j)m39Ya>9Y?9D?uHS`& zaMOVp146p_g%@yBySWuOo#R6X%-FC?Uz>VDa@wVL>&@{r&$xEpr)$^tpnbo`NJ+`h z#*rad5nAL80f8IWM)3`g%XrwVzt#|{g7reo0zMl1kpvtvBo|9o2z&ItT{m4qdUx$L zB|H^4?C$6{9<($Wu`)5buaAJ6nH6bvY~pqq2FaWr-rjKk6q{;U=1HeQUIST3mX{Rf z(b{VT0S##}REZC-C3G3AL6o1iX2KdrKhGXSh)^A50fzn8n%O@~29VX+(og+gZZ@7i>wR! zj1)uWEzz=uOFJNLbC>-i?mC$&&|$mI#$>SLuM^7AA^=p|P7_fjGXY4I8sZ{XX6La< zRHalZc7-9|HcX>kuG{^$nZe`bCf{2!mHSgJ((k>+unw^ES*|>({gL@zN~`wcsJ#p z-;K*_wprphn7(Z@n})%*x3*c3JFlBxF0pE@xG%J8jkccKkss@O)C}@onzoSxl|Yy` zkI%4L1N5F`84znDY8%tGd3Ti2#>jxn_B7}knQK>018F=D*?E3o5S2WlyZG4n?;Wf( zu#BK(1t#(wAf6HsT#jE$M3w?9+n@g4JVQ{4{Mtzd$`UVqO0&8pukFF`!*M7^HdnM!^I>F2(BxXt2#`XGWCIWVvmO z)BfDcvEz~mJOuuTf$n6H8^7*TkV`pAV9bmk+*-RgUd;Uy0omqxRBOELb}s-Wf!N=+ zla}PJkNk^#1<+m~Si9S7-FmEpxx0VmR&N_+46_?3j}MSqrgb-@f=!|BJ=otxa9hb& ztroD_!c1A7)@Z1X`^wk`d=JX5WdsLPp_tfM#0*dud(h46ae5MogAxkPj4-nu=k3*I z(2Ab8OefnwK#14+hx=mmh6*YH-JeVC`~1crn(&`*`jZ8 zyXa>2Z<5GHq+;g)5Dc>L50TIOd7`Z{#?Hib6!#lIx952Sp45$+comzDP=@3i)|}X9 zX6+lU7=4sLS1HB>$0Nw*a3=t1eA_F*N~AFnXjs>GTzE1)xy4$y>r-_XtXlN{b%oT| zu8=~4+n_Trpw=cgKQtI4Ec*gpq0NhoiF?ACu$WD3mVmcjvl0t@^pXQG-EBn=0zsM> zTJCH@L*VHc1*)}FZzJof-< zf!$D1gl=CVo*{ymJY_^m^B}1X#-1&@p~?yl+pV16=~%{xdbj7xGQgF}Z9@#;n*q{+ z8tIB0e8_~%o_N|=)IO_yqo#bH?toMJg%kK%agVdTHZdd6ZSp2C;i_9bLNRJ}a41K^?ok+Z=s!l|Fp9W*H{`T5?f#GrAFWJfT8S(^CEP? znxEhNn1?%h{02!|0JeelV~(>*?o}ycIS^n=t4MahzU8q=Bf{LnIy^rMLVWqu-E;Mv z1z@`_v@{;n`Tz!VEaX-UefM+Vg9TkFB*pOKIZIygNr#Ga$0h;%h$rH45#iS-F#R`d z|JyJD*2I$?8jsrYXrv3x3oc;MzqRG<3LJOnmq)wzMBu_%W7sLvnJ;)K+`}$8i2Zv` ztA^SiVEa_RM-04VoV3{jmIL0+WEe1>VI!Ntzjg|Y#Bn-jA`${Y{`mD;?(0vF3v>K; zi_7V>yosE%v+FkWvluo4MKyD8o9`jIPX@u+M2lRwBi5y zU_w;S8>Nf@1bDLz3R_{Nra)Sd%;i#I+gJ#l z_RdnS(=`Mf*6Vo`iPlAI%nc+*j^v{Ixi&gQGHLzJ^bs5UmAAAB3@^E0)%$GW@N$XC zhQW>t#Lb;tR)^X+@DKr*Ns_|m6rP?hbgWK<=Vrk^Av*xJi4r8;E|@2^P=D2mb4&{d zD1ws_$;MXCaM{lnPEiKzc}@Z7x3N$>Yb2ld3p6H%NIUHT-V`!Doo3w%9~u`YceE|w z^_RxwSr(!W^tGaC12r1t0{UixT-^1FeAz9{?q0lSp0meU^!|cfFh*?Y2O3bl@9Aak z?et4^FnjR8S|AUL*yvxwZC3`|048Vm0A74LV9o@)aii{18E!W>Jk^5RLQ`E{%CIdE z;Oaa+1-z4Xk1-1peg8Pwhg1FQTpudIjbGfu?Jj5GgM3wRA=qZ?vkgnR>d20Oa?4LV zB%a>_>}YNt4^S7p9zGfdxGjMekA=UN4UgRhXC7@Md)IS7%-Zsr0(w*$L_&^5OCkras?{B{iKq-!5*gaB(TFX!NLJ7le3=P4PajXa**qjw4 zTR+ws6{{U9ZfsR%sMsX!U$87^)rh)ErlQRO3OkMU?i#(%4joc3c;e^OXfm^HZEI)? z+_tb%rwHhX(VkAJ4yB5?=*wdZ9{jTL-U6RTZ_%jd>^~7pG>>V-Rxm_E*OvvwevzhR z9@MctGXuqMS>5I&-D}Y(jN~?tXL^Bz0X*$q&WTb)M`Epe#iU%&-%Ic*DKTO1_n#kJ z{u$JeKCK&rBHa0evfbVi{92WFA8;1#230*h_^0OYb1K;zx-51fh{X3s5zl7ugzqF0 zNm!Wsb~|JDjy8aRJYcdtS@K{%a)j@br$Tw6BhgU^_yMap2sc4$l*Z~!m(_OIN?tNj zo9-J5kmtxqM{>)pfzjM~Lmt)VJ-u(hSNp+QjK~t(3bTicF9bocU3Kl%A%L=V^GKk2 zFd}$%%#Cs$UBP{Jg$EJDPjwZ+DlaOr+E}^HX%=@489jW)1KK+dqMjYV*M=M1B7(Z; zX~|<_BU+|LRStlO*hk{@k;(;BoN7g;?J6ym1Ew`TCKkq#7d%78`nTj<*?>5BM@DL9m&9Z(Z8mkV1 z-HbxCb4wFEn&+~a%|>V}On>zHD3+egwK+13q%%X)lLt(b|rtsn5#-MZ4>6(XCC_qDbxf>!pFGLMFxw`0C}zfK>V}Ya-!2=NjX}RC{-3-@0&%L}K z$_7l#Zh`wPfD%)u&lo7P@W6o&O~i?ANw2T1pK@!FPD zez!F|=!NF?98XkJGH7F5X^4brCEpf~8c3<(DqhoXS{ME1db7khX zYK_5S=)yDI{FRyG@fk_)cDXc-J1IGACmQ6s-G}6+HMd6Se+XWv879D+qk4mF1nn+h zOOAYc#)Z&uUFu(_$9J4lsC|x;3_1w+qN|Nm*034+eM*OX72h6TE`4+<-;2{i2IZTq)XA zixhoqN4Y*v>R^fC`ii?_ECanbp7mBcg3iW_o_rz)HKq1WRy5hlEr3?pOEGwwe(7kN zEhnERmOcQ)!!a)!gTPB}Ti)(JBceck4|by{Q5j%FSCS!V;5m;9Ge0R0JNr?!Q{z@o z|0`MmyN7Ql1BfF0VmUQCnE=J*eq^we@sOJM&3?^$5IE!puu6jEMoMPuD{e>Jk1&Qw zx3=v#lbc@iwFV4|EE@)smZ8VPwB!nN3U+%p$(?@A=~qFmA2-S5b?V0iB^O(6n9=Z z!E#iBViX<${k{KKThw)u~z(^^Rz(0IUqsGo;_t0%;o844>8>ySa9Drd-V$19uW@8ZV1nVtaxYv zgY>X@mDqAe(su3NF4fohRSqrF*|5D#i9Bz%|(53o)LfNI0XM&Q`RC!ks7{sUgj<|CScq6ZS~Jg<@{U zKG+TJw1V6Vf&TT76#HPp@2;HzzkoQ=ol>yRQ~SjR+A(ctelDDnrCJT`hpBn3p;$OZ z!dlF=d5Pz6e-xMLy#(8ilkK@h5e@)m(vV8-(-L1Gsbx^i$=RXzWShqp2db_}pUYNc z9-i4mao^sv(!x8nlmUf^x4YagogV$o9;?0s(jF;ycD&;P2HY5SE3ytAl^0iDJ$}>U zZUpFG2j7zJi+Qr+p`GTj8=e^5{Z02xJY~*0x8MO}$P(PY0SWmFj3Z9$S?67Bz8G$uf@At^&t!RO+^Wxa>|tG}S^WNsoGj&kmLD&; zt75`d{QwBPEbQ3QlR?mqCRB8?bhzHzBUZP~Z3&*N2F2|5IeBG zta}-q$1=ybhFcQRbVXUPGJXl6c z2G^r5#eh8fbYcWv3zbt2V!U2bb3hF%>`~kLyC`J*E;wVPQ$@VcX3u3Cimy}b^Nd6m zSRT48`z=d~0kGmx(>c2icLLaHM7%2#qw!N#2ZA0Ad2egD5W>W(VgOEyv#sFM4F^1Q zi=;uEhw7$RH$Yg3wWpR-JouiEN5B4qa|-8_Lf1^+R>xw8#=V-R+eLZW&Jyzawy_Dw z0o<02m6pKV`y`6d{HRd)^Iq66Tc$n_9}*8Fb+a1rqE)~voXciLp5+1dT~76m$j0Gq z&(Zp78K1Z=o0{IWmOI)6 z+-SKFJUvA(lChqUy*I-v*z`f3a(lAd<=&tGI+3}o39|2s`eGOihfpVYo!!;8tASXF z-rsZX&+DGJQXbk-U7(Ud=$wvfFA20!`SJ<}B9?HqiPa;_ShAXzB}W`!$4wK3pkdFy z4j*su;4M8uwswx5`}+EOPOy;3qXgzVdP@$1`Z?PJdSZm>IZci2NB)fWbhqCVRcje! zC@wX-Wb(x$0lrpBqBlGE8mGqwKYJ@3gKD!af2OKbh2s*%gqjzM_b4;Az@K_Rd z>TGr-WKHwp22wQO&Py{Lz{I&#K`MRPv?80hJ&I|KbQOp87+jJF11Qa!hLc{|Bx#6BOWvptv%wOS{; z->vq}yL$*K*oRxm{kS}P6mgX}9xoF0kO_Enw(EQ}ck9kIQ}^GiG2IOLzPGA-OkY!EFT zYIsn!(JD9@kgTgEFG%Xlx4o1op~oO8E5Z|@&G$vb^KIGkA1X1p+5Y~yE9SzpJimR& zRn9)7C;66=o!|zEyt>N^7rY%JVzy#CmqytW8Zd>wI~l^v*I&4Y?D`A#Uia9ntD~$D z`AdjqPCZKhx=B2WWxdr;AI>*&0cl>;NWkiOtxe6R8{wRMY%t=D!a}P+c#o~mjbwr8 zy*nwMX4GB05Xm;I@V0(=D7Rr>om@|0!u^kz%6T-#>o_csf9h)V-S9F)RF*epFbZ4^ z4Ap*@;Gss|b2H_+r%<_4T%QPQot9Q&fN8)6h+a_~)r|w_~&21o?fh&s)b( z62m*C+(ARzp~SqCGuzm(7m1H|hMh>_TFmYu;0$Z&_qJWQcr4$G5cx?6HlE7^S@fJ= zC}{x%!<#5P^TIIZp;4>#2+R08GdKQfTwV7i5e5&+dTiR329H&DdrZ6|6gEXB$FdXf zSx{1dAY%0OawE_7AbqlZO9NAbYOVYQlf??8;U*|*ooL7)1Tu)kI-Ln_H2{XFs^+~* zk2mj}+cY65LjJ8tua5)t6Mpafnf=vSg7RT?A{gO)g7vQ6m$gn617Mx;YChc|fQcF973Lfa| zjGTx4ifv$ctO>|lFNYvK7sbJy*@yfmdfwoenldE&HsK;oc(yWM5g1CdK-iBTdgn@xqf>>slJeN*th{#+FN zyBh6B*JB_xt4Ga~$+6vt!=m#r-oNLiCewQumM2iWGjN_x7Tc6~qTReyLqkwb{j_#L z%N>od{of+2K2Psow+NKna{2PJPhZE8(UIl1#@$gTpZBGw5X$XQOv^}KtYktWm-zPL z1?}D*@TVKnyVYWNPd8+JuHSJl8#wKToWYLB(+zq5I{Cq#hoD0PSW<2VFK;xH7cB+P zGw+qXmg=g@6F}AW_UdusULlCh$lOUiS1(%9$If<3WnZ#3@>+0X>X3*wKe=l=t_@I% zGj-&@)HyS>j|7Q6U( z83u*Z@+M9|kK}S6!+W2+^A8DR83Mvt-P-MDnd$ca5K_SV46GlbmJsIz9?pxA zM>`NE8m`-rQO?0q&#^q`1?;B@M^?9BnF7xNCQq|15Mg^E$dOVN+J9i# zwvIYPJJ{s~127}rLx>(`WL{1X77Sg%mk_oWA(P{TYYbNpc2nLFR>O4I75N%NEv!RB z_Ua({hL^?FBvjbm3#EEt=D8(^iLBAqb27>Q=}mp?xnl+7HH4{mu|QPF+#p!m9SQfZ zU(Gm=f1udw(T|R*eb3#j==SUlU1U5YU`u88rcV$Sl>~b>@3Og*eDQcaI$G*?#n0p2 zwAkRw)7y{}t6Qz)PERU^0V|@Jr*}(ti-hpn=x#oHeWpD|uSc6CvUA-=0gsZE>TPN5 z{Erg6gcJ&QYIpQ{I3_p3&-ZB?@Ty$Tk18G??bIDD0NT5K?Q^0s*zgz8-S0jZ(?y;J zBWVS4GMBe)FWxL;^$;2D5n|-_eg%b5QRwLG?!`eCpNJE$T712fuz8z^-KSXV>@5;` z%->N4C>FPmVzUXyGo7HcH>g~JHDEB+Zi3+dH^b`b^h~#>Z4}iQCg!esJ&vWQ$6h*+ zHY%^3$Ka*3`ML=jcb30=n)Ki(+uhDZ`RhddiALWa^yWh?;q-_fkp|llRbuhW~3z{?} zDK3tJYr(;f#j1mgv#t)Vf*|+-;_Bk0=prTlFDbN$@!+^0@9sVB-T^|R!c?s^#*d7t}p^eTCi0X~st?f%Ws^E4huXpY-CdN#9?Bw*uioKvy!0_PZLKJRik_% z>$1Xmi?dp(vDQ8L3qyHrCCzo3BZy-O2_zvxMh#_DU?EDYMv93P?Z-U)!;U{mE}2|q zFmf!Q3Kf#$2mgcL-I|4|NjE7J1G-;q`(qRc>;lcYZGRuzcJl=AKLb}<+h1(}v!A5b z+gjuZ=-UP^uG^Zt2VCv|gHO6-NRH&EDHIC8`x$*x4(PuHf@^MXt$mz602%6P`35*R z1jdS#z3%bup3dI>J=5y%2Sc!Ol;a(!=Kufz4^T{0MF5ES00030|Nnr{_y7O^mK=%m z00001VoOIv0Eh)0NB{r;32;bRa{vGi!vFvd!vV){sAK>D00(qQO+^Ri3Ky@bHsr9@eWztf>=xy8*W%KSZEm*6LqbV-cVgR*sIuV zfyJ4=VR7#e^d@n#E}6e!^)@IcAB!AkC2y4hsGi`pw=U`V&d7jGr^N{I=(M{PA_C-u zV>UqE&uPRon?W{m_GNB^HDIB{X*IVun1oKVDf-&*gtq*RBqMAU)B8JdR<5UTFmZlB z_0BpN@(`u$#|BYoCP}LZ%E(MNL+W)5Yhw^erqzWTmc{GDIgkdija{}bRoI~w6-#j2 zWj(Tu6`Kh91?^jw4T2fz^H`|^-d!nS-9}D>L>=K}kvoJM$=1NS%G|m0G|-o|NsBj%t)xo`2bQ#1Sk?u<^d{WO!9Vj`M;F?(@`L2zo(01 zNX4AB6Hf~sR^V|FU(KkNcR<;E!-9X+-F6S2Oo}#kOu=E1#FG z*;rPjf4V*FMvP@K<3F~vlk2V*>#3;j)-a67yq)Fzds>Tg=czEaGt!U0pZ^{C_V@MQ zcT9y!rY-6_5x4755BCxcu2W1e)*jBC@1H%hf6}2TGdo;Ux3}*zopr0Pz-zv;Y7A literal 4652 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 delta 859 zcmeyx_Ka z4AD66dih}1Z3h9i2lcHf*X&NJYKP39A|S2qztK$M&b&L5B2(sWQ*68CzmY4~vp8rW zSD{~Cq0<)sn;YjYDgGT%mS$?q^lf6r`j28xmver!J+gE%DbqhA7;^BLhP6i1rJDg< zl?nASFO?&sdIW8Zzw#^+F4KB@sX^HF2AiW!>jpjcLpxdnj?Le?tLI16o1`N_)&7-d zWEP58{a)dke7CQOTYkQhNtk!Xgv*MnFDw<3G)|e9;WOjUzPq(C=ad#1ol3A^hU47fZsJPHvtm|dWsX6Zb^@mw?c{eGt zoxCHi8yalOzP~(S%_-qUqPa55e9U*wxUwv6>Cy+6m;0YuarBh=rPw7BWgR?gSKV8- z_v!ibNsIPu^NaafUuDC!T=Zt$OP6`>TaTLldQ#;mdhYVOLl50_d{mo7O;39=-uZR= z*s1S_)UzK6?sUzq+g5Squ$<(B-x0bGD+NDoNvq@bX_fnKwzavsJ$|js$!X7j9X+-1 z@XN_>P4@)f)fV??uS=YJ)5)){(uN^-SDRK{`PKf5ZJ*gol&4rOKh#lQv)%oyuSeRG z|7)(!bG-U=ouh7se~R!TEhE$KmEy-;x@YbFcgSw?^$gGUsky=*r~j;K4KJEh78uGt z%RTKrAHQ@>(fxm1b3V4cU%C0gtkc!?J6`8x|M{=q_2OC7#SED>l%g_=o*=Z7#Uj`8d@0}Ya19?85kI6?m32{BR4-KGp!P; W1B(VH6P7BV1_n=8KbLh*2~7a#Ep4p; From b582a0e7aa70f91d33f4a9185c1975ee9f338192 Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Thu, 26 Oct 2023 11:49:59 +0100 Subject: [PATCH 2/3] Add Bellignan, fix evo stones My first foray into adding Pokemon, here's Bellignan! Imported the sprite animation from Pokemon October. Works like a charm! I also fixed the new evo stones, which didn't have their effects assigned yet. --- constants/pokemon_constants.asm | 1 + data/pokemon/base_stats.asm | 1 + data/pokemon/cries.asm | 1 + data/pokemon/dex_entries.asm | 1 + data/pokemon/dex_entries/bellignan.asm | 10 ++++++++++ data/pokemon/dex_entry_pointers.asm | 1 + data/pokemon/dex_order_alpha.asm | 1 + data/pokemon/dex_order_new.asm | 1 + data/pokemon/egg_moves_kanto.asm | 1 + data/pokemon/evos_attacks_kanto.asm | 12 ++++++++++++ data/pokemon/first_stages.asm | 1 + data/pokemon/gen1_base_special.asm | 1 + data/pokemon/gen1_order.asm | 1 + data/pokemon/menu_icons.asm | 1 + data/pokemon/names.asm | 1 + data/pokemon/palettes.asm | 2 ++ data/pokemon/pic_pointers.asm | 2 ++ engine/items/item_effects.asm | 10 +++++----- gfx/footprints.asm | 1 + gfx/footprints/bellignan.png | Bin 0 -> 106 bytes gfx/pics.asm | 2 ++ gfx/pokemon/anim_pointers.asm | 1 + gfx/pokemon/anims.asm | 1 + gfx/pokemon/bellignan/anim.asm | 19 +++++++++++++++++++ gfx/pokemon/bellignan/anim_idle.asm | 1 + gfx/pokemon/bellignan/back.png | Bin 0 -> 887 bytes gfx/pokemon/bellignan/front.png | Bin 0 -> 1218 bytes gfx/pokemon/bellignan/readme.txt | 2 ++ gfx/pokemon/bellignan/shiny.pal | 2 ++ gfx/pokemon/bitmask_pointers.asm | 1 + gfx/pokemon/bitmasks.asm | 1 + gfx/pokemon/frame_pointers.asm | 1 + gfx/pokemon/idle_pointers.asm | 1 + gfx/pokemon/idles.asm | 1 + gfx/pokemon/kanto_frames.asm | 1 + maps/PlayersHouse2F.asm | 8 ++++---- 36 files changed, 83 insertions(+), 9 deletions(-) create mode 100644 data/pokemon/dex_entries/bellignan.asm create mode 100644 gfx/footprints/bellignan.png create mode 100644 gfx/pokemon/bellignan/anim.asm create mode 100644 gfx/pokemon/bellignan/anim_idle.asm create mode 100644 gfx/pokemon/bellignan/back.png create mode 100644 gfx/pokemon/bellignan/front.png create mode 100644 gfx/pokemon/bellignan/readme.txt create mode 100644 gfx/pokemon/bellignan/shiny.pal diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm index 97a08d9..f5afe9b 100644 --- a/constants/pokemon_constants.asm +++ b/constants/pokemon_constants.asm @@ -90,6 +90,7 @@ const BELLSPROUT ; 45 const WEEPINBELL ; 46 const VICTREEBEL ; 47 + const BELLIGNAN const TENTACOOL ; 48 const TENTACRUEL ; 49 const GEODUDE ; 4a diff --git a/data/pokemon/base_stats.asm b/data/pokemon/base_stats.asm index 5a72bdd..aa7e8d6 100644 --- a/data/pokemon/base_stats.asm +++ b/data/pokemon/base_stats.asm @@ -98,6 +98,7 @@ INCLUDE "data/pokemon/base_stats/machamp.asm" INCLUDE "data/pokemon/base_stats/bellsprout.asm" INCLUDE "data/pokemon/base_stats/weepinbell.asm" INCLUDE "data/pokemon/base_stats/victreebel.asm" +INCLUDE "data/pokemon/base_stats/bellignan.asm" INCLUDE "data/pokemon/base_stats/tentacool.asm" INCLUDE "data/pokemon/base_stats/tentacruel.asm" INCLUDE "data/pokemon/base_stats/geodude.asm" diff --git a/data/pokemon/cries.asm b/data/pokemon/cries.asm index 8e542f4..2ce8313 100644 --- a/data/pokemon/cries.asm +++ b/data/pokemon/cries.asm @@ -77,6 +77,7 @@ PokemonCries:: mon_cry CRY_PSYDUCK, 85, 129 ; BELLSPROUT mon_cry CRY_WEEPINBELL, 68, 160 ; WEEPINBELL mon_cry CRY_WEEPINBELL, 102, 332 ; VICTREEBEL + mon_cry CRY_SLOWKING, 573, 320 ; BELLIGNAN mon_cry CRY_VENONAT, 0, 256 ; TENTACOOL mon_cry CRY_VENONAT, 238, 383 ; TENTACRUEL mon_cry CRY_VULPIX, 240, 144 ; GEODUDE diff --git a/data/pokemon/dex_entries.asm b/data/pokemon/dex_entries.asm index 8b73c73..f4b6826 100644 --- a/data/pokemon/dex_entries.asm +++ b/data/pokemon/dex_entries.asm @@ -75,6 +75,7 @@ MachampPokedexEntry:: INCLUDE "data/pokemon/dex_entries/machamp.asm" BellsproutPokedexEntry:: INCLUDE "data/pokemon/dex_entries/bellsprout.asm" WeepinbellPokedexEntry:: INCLUDE "data/pokemon/dex_entries/weepinbell.asm" VictreebelPokedexEntry:: INCLUDE "data/pokemon/dex_entries/victreebel.asm" +BellignanPokedexEntry:: INCLUDE "data/pokemon/dex_entries/bellignan.asm" TentacoolPokedexEntry:: INCLUDE "data/pokemon/dex_entries/tentacool.asm" TentacruelPokedexEntry:: INCLUDE "data/pokemon/dex_entries/tentacruel.asm" GeodudePokedexEntry:: INCLUDE "data/pokemon/dex_entries/geodude.asm" diff --git a/data/pokemon/dex_entries/bellignan.asm b/data/pokemon/dex_entries/bellignan.asm new file mode 100644 index 0000000..521da74 --- /dev/null +++ b/data/pokemon/dex_entries/bellignan.asm @@ -0,0 +1,10 @@ + db "SPROUT@" ; species name + dw 403, 160 ; height, weight + + db "It lives through" + next "absorbing nutrients" + next "in the ground with" + + page "its root-like" + next "feet. Revered" + next "by some faiths.@" \ No newline at end of file diff --git a/data/pokemon/dex_entry_pointers.asm b/data/pokemon/dex_entry_pointers.asm index a2bf28d..3c18e90 100644 --- a/data/pokemon/dex_entry_pointers.asm +++ b/data/pokemon/dex_entry_pointers.asm @@ -72,6 +72,7 @@ PokedexDataPointerTable: dba BellsproutPokedexEntry dba WeepinbellPokedexEntry dba VictreebelPokedexEntry + dba BellignanPokedexEntry dba TentacoolPokedexEntry dba TentacruelPokedexEntry dba GeodudePokedexEntry diff --git a/data/pokemon/dex_order_alpha.asm b/data/pokemon/dex_order_alpha.asm index e231c3c..03b7665 100644 --- a/data/pokemon/dex_order_alpha.asm +++ b/data/pokemon/dex_order_alpha.asm @@ -14,6 +14,7 @@ AlphabeticalPokedexOrder: dw AZUMARILL dw BAYLEEF dw BEEDRILL + dw BELLIGNAN dw BELLOSSOM dw BELLSPROUT dw BLASTOISE diff --git a/data/pokemon/dex_order_new.asm b/data/pokemon/dex_order_new.asm index 65f162e..d4aa3d2 100644 --- a/data/pokemon/dex_order_new.asm +++ b/data/pokemon/dex_order_new.asm @@ -68,6 +68,7 @@ NewPokedexOrder: dw BELLSPROUT dw WEEPINBELL dw VICTREEBEL + dw BELLIGNAN dw HOPPIP dw SKIPLOOM dw JUMPLUFF diff --git a/data/pokemon/egg_moves_kanto.asm b/data/pokemon/egg_moves_kanto.asm index 1cbb5f6..7d4f21c 100644 --- a/data/pokemon/egg_moves_kanto.asm +++ b/data/pokemon/egg_moves_kanto.asm @@ -72,6 +72,7 @@ EggMovePointers1: dw BellsproutEggMoves dw NoEggMoves1 dw NoEggMoves1 + dw NoEggMoves1 ; Bellignan dw TentacoolEggMoves dw NoEggMoves1 dw GeodudeEggMoves diff --git a/data/pokemon/evos_attacks_kanto.asm b/data/pokemon/evos_attacks_kanto.asm index 0510e1b..889d184 100644 --- a/data/pokemon/evos_attacks_kanto.asm +++ b/data/pokemon/evos_attacks_kanto.asm @@ -72,6 +72,7 @@ EvosAttacksPointers1:: dw BellsproutEvosAttacks dw WeepinbellEvosAttacks dw VictreebelEvosAttacks + dw BellignanEvosAttacks dw TentacoolEvosAttacks dw TentacruelEvosAttacks dw GeodudeEvosAttacks @@ -1069,6 +1070,7 @@ BellsproutEvosAttacks: WeepinbellEvosAttacks: dbbw EVOLVE_ITEM, LEAF_STONE, VICTREEBEL + dbbw EVOLVE_ITEM, POISON_STONE, BELLIGNAN db 0 ; no more evolutions dbw 1, VINE_WHIP dbw 1, GROWTH @@ -1092,6 +1094,16 @@ VictreebelEvosAttacks: dbw 1, RAZOR_LEAF db 0 ; no more level-up moves +BellignanEvosAttacks: + db 0 ; no more evolutions + dbw 1, SLEEP_POWDER + dbw 1, RAZOR_LEAF + dbw 1, LOVELY_KISS + dbw 1, ACID + dbw 40, LOVELY_KISS + dbw 48, SLUDGE_BOMB + db 0 ; no more level-up moves + TentacoolEvosAttacks: dbbw EVOLVE_LEVEL, 30, TENTACRUEL db 0 ; no more evolutions diff --git a/data/pokemon/first_stages.asm b/data/pokemon/first_stages.asm index 0e351e3..dc560dc 100644 --- a/data/pokemon/first_stages.asm +++ b/data/pokemon/first_stages.asm @@ -72,6 +72,7 @@ FirstEvoStages:: dw BELLSPROUT dw BELLSPROUT dw BELLSPROUT + dw BELLSPROUT dw TENTACOOL ;48 dw TENTACOOL dw GEODUDE diff --git a/data/pokemon/gen1_base_special.asm b/data/pokemon/gen1_base_special.asm index 8319287..c111c20 100644 --- a/data/pokemon/gen1_base_special.asm +++ b/data/pokemon/gen1_base_special.asm @@ -73,6 +73,7 @@ KantoMonSpecials: db 70 ; BELLSPROUT db 85 ; WEEPINBELL db 100 ; VICTREEBEL + db 100 ; BELLIGNAN db 100 ; TENTACOOL db 120 ; TENTACRUEL db 30 ; GEODUDE diff --git a/data/pokemon/gen1_order.asm b/data/pokemon/gen1_order.asm index 3583c99..e1b5f42 100644 --- a/data/pokemon/gen1_order.asm +++ b/data/pokemon/gen1_order.asm @@ -255,4 +255,5 @@ Pokered_MonIndices: db QWILFISH db WOBBUFFET db WOBBUFFET + db BELLIGNAN assert_table_length NUM_POKEMON + 1 diff --git a/data/pokemon/menu_icons.asm b/data/pokemon/menu_icons.asm index c80102b..ba9554b 100644 --- a/data/pokemon/menu_icons.asm +++ b/data/pokemon/menu_icons.asm @@ -73,6 +73,7 @@ MonMenuIcons: db ICON_ODDISH ; BELLSPROUT db ICON_ODDISH ; WEEPINBELL db ICON_ODDISH ; VICTREEBEL + db ICON_ODDISH ; BELLIGNAN db ICON_JELLYFISH ; TENTACOOL db ICON_JELLYFISH ; TENTACRUEL db ICON_GEODUDE ; GEODUDE diff --git a/data/pokemon/names.asm b/data/pokemon/names.asm index a8ae68c..dd66941 100644 --- a/data/pokemon/names.asm +++ b/data/pokemon/names.asm @@ -75,6 +75,7 @@ PokemonNames:: db "BELLSPROUT" db "WEEPINBELL" db "VICTREEBEL" + db "BELLIGNAN@" db "TENTACOOL@" db "TENTACRUEL" db "GEODUDE@@@" diff --git a/data/pokemon/palettes.asm b/data/pokemon/palettes.asm index 1eb83a3..776dbb7 100644 --- a/data/pokemon/palettes.asm +++ b/data/pokemon/palettes.asm @@ -175,6 +175,8 @@ INCBIN "gfx/pokemon/weepinbell/front.gbcpal", middle_colors INCLUDE "gfx/pokemon/weepinbell/shiny.pal" INCBIN "gfx/pokemon/victreebel/front.gbcpal", middle_colors INCLUDE "gfx/pokemon/victreebel/shiny.pal" +INCBIN "gfx/pokemon/bellignan/front.gbcpal", middle_colors +INCLUDE "gfx/pokemon/victreebel/shiny.pal" INCBIN "gfx/pokemon/tentacool/front.gbcpal", middle_colors INCLUDE "gfx/pokemon/tentacool/shiny.pal" INCBIN "gfx/pokemon/tentacruel/front.gbcpal", middle_colors diff --git a/data/pokemon/pic_pointers.asm b/data/pokemon/pic_pointers.asm index ea71fc3..10f69b0 100644 --- a/data/pokemon/pic_pointers.asm +++ b/data/pokemon/pic_pointers.asm @@ -155,6 +155,8 @@ PokemonPicPointers:: dba WeepinbellBackpic dba VictreebelFrontpic dba VictreebelBackpic + dba BellignanFrontpic + dba BellignanBackpic dba TentacoolFrontpic dba TentacoolBackpic dba TentacruelFrontpic diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index 8c0f0a4..6d33df1 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -148,14 +148,14 @@ ItemEffects: dw NoEffect ; STAR_PIECE dw BasementKeyEffect ; BASEMENT_KEY dw NoEffect ; PASS - dw NoEffect ; ITEM_87 - dw NoEffect ; ITEM_88 - dw NoEffect ; ITEM_89 + dw EvoStoneEffect ; HEART_STONE + dw EvoStoneEffect ; POISON_STONE + dw EvoStoneEffect ; ICE_STONE dw NoEffect ; CHARCOAL dw RestoreHPEffect ; BERRY_JUICE dw NoEffect ; SCOPE_LENS - dw NoEffect ; ITEM_8D - dw NoEffect ; ITEM_8E + dw EvoStoneEffect ; DUSK_STONE + dw EvoStoneEffect ; SHINY_STONE dw NoEffect ; METAL_COAT dw NoEffect ; DRAGON_FANG dw NoEffect ; ITEM_91 diff --git a/gfx/footprints.asm b/gfx/footprints.asm index 3c27419..9de45bc 100644 --- a/gfx/footprints.asm +++ b/gfx/footprints.asm @@ -72,6 +72,7 @@ INCBIN "gfx/footprints/machamp.1bpp" INCBIN "gfx/footprints/bellsprout.1bpp" INCBIN "gfx/footprints/weepinbell.1bpp" INCBIN "gfx/footprints/victreebel.1bpp" +;INCBIN "gfx/footprints/bellignan.1bpp" INCBIN "gfx/footprints/tentacool.1bpp" INCBIN "gfx/footprints/tentacruel.1bpp" INCBIN "gfx/footprints/geodude.1bpp" diff --git a/gfx/footprints/bellignan.png b/gfx/footprints/bellignan.png new file mode 100644 index 0000000000000000000000000000000000000000..bfec0b00fb2cd4eb9c934334ee140f544c5d36f0 GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx;Bp3=bcE|uJLr)jSkcwN$2@b3_4kr%OG)SH> zvEWhaabyWN({`Le<6tp^M}vx_T{B0Wz(Jmi?2HUYUa*{hth^6o27{-opUXO@geCy~ CU>sop literal 0 HcmV?d00001 diff --git a/gfx/pics.asm b/gfx/pics.asm index a44a0ce..0c25ca2 100644 --- a/gfx/pics.asm +++ b/gfx/pics.asm @@ -717,6 +717,8 @@ TotartleFrontpic: INCBIN "gfx/pokemon/totartle/front.animated.2bpp.lz" TotartleBackpic: INCBIN "gfx/pokemon/totartle/back.2bpp.lz" BlastykeFrontpic: INCBIN "gfx/pokemon/blastyke/front.animated.2bpp.lz" BlastykeBackpic: INCBIN "gfx/pokemon/blastyke/back.2bpp.lz" +BellignanFrontpic: INCBIN "gfx/pokemon/bellignan/front.animated.2bpp.lz" +BellignanBackpic: INCBIN "gfx/pokemon/bellignan/back.2bpp.lz" INCBIN "gfx/pokemon/poliwag/back.2bpp.lz" INCBIN "gfx/pokemon/squirtle/back.2bpp.lz" INCBIN "gfx/pokemon/shuckle/back.2bpp.lz" diff --git a/gfx/pokemon/anim_pointers.asm b/gfx/pokemon/anim_pointers.asm index 01b818e..ab37b35 100644 --- a/gfx/pokemon/anim_pointers.asm +++ b/gfx/pokemon/anim_pointers.asm @@ -71,6 +71,7 @@ AnimationPointers: dw BellsproutAnimation dw WeepinbellAnimation dw VictreebelAnimation + dw BellignanAnimation dw TentacoolAnimation dw TentacruelAnimation dw GeodudeAnimation diff --git a/gfx/pokemon/anims.asm b/gfx/pokemon/anims.asm index f943cd7..88e95aa 100644 --- a/gfx/pokemon/anims.asm +++ b/gfx/pokemon/anims.asm @@ -69,6 +69,7 @@ MachampAnimation: INCLUDE "gfx/pokemon/machamp/anim.asm" BellsproutAnimation: INCLUDE "gfx/pokemon/bellsprout/anim.asm" WeepinbellAnimation: INCLUDE "gfx/pokemon/weepinbell/anim.asm" VictreebelAnimation: INCLUDE "gfx/pokemon/victreebel/anim.asm" +BellignanAnimation: INCLUDE "gfx/pokemon/bellignan/anim.asm" TentacoolAnimation: INCLUDE "gfx/pokemon/tentacool/anim.asm" TentacruelAnimation: INCLUDE "gfx/pokemon/tentacruel/anim.asm" GeodudeAnimation: INCLUDE "gfx/pokemon/geodude/anim.asm" diff --git a/gfx/pokemon/bellignan/anim.asm b/gfx/pokemon/bellignan/anim.asm new file mode 100644 index 0000000..9a83517 --- /dev/null +++ b/gfx/pokemon/bellignan/anim.asm @@ -0,0 +1,19 @@ + frame 0, 06 + frame 1, 06 + frame 2, 04 + frame 3, 04 + frame 4, 08 + frame 5, 08 + frame 6, 08 + frame 7, 08 + frame 1, 06 + frame 2, 10 + frame 8, 08 + frame 9, 08 + frame 10, 08 + frame 11, 08 + frame 9, 08 + frame 11, 08 + frame 9, 08 + frame 11, 08 + endanim diff --git a/gfx/pokemon/bellignan/anim_idle.asm b/gfx/pokemon/bellignan/anim_idle.asm new file mode 100644 index 0000000..875f7be --- /dev/null +++ b/gfx/pokemon/bellignan/anim_idle.asm @@ -0,0 +1 @@ + endanim \ No newline at end of file diff --git a/gfx/pokemon/bellignan/back.png b/gfx/pokemon/bellignan/back.png new file mode 100644 index 0000000000000000000000000000000000000000..c52f4c7e9d25bf1b9cdac538951b68ce36a6a7f2 GIT binary patch literal 887 zcmV--1Bm>IP)EX>4Tx04R}tkv&MmP!xqvQ$;CN2Q!E`WN4l2q9Ts93Pq?8YK2xEOkVm2O_x)J|THaznKq8K_nrRbn5YKGd zHO~9QA}c8x@j3B?Nf#u3yZ^$yEj; z#{#O*p}2nVKlnXct1va`C500}?~CJnM1j6tpw)1k?_hTeGdlAkpAeBga!w^(HBr0{^#Xl0jO8Dxzct8S{#26HQ*x_nKx3 zlvf(%DLuA{&mNP})PwhbN-!4-ML$}2skep;nHqk^uR?jE6u0x_bq!;R@5mjj+BI&M zYqZ3Y53$*G(FB;G`s7of!H?%RO$wAB-3PA~Uq|!{Z+H@cgSQm!7*~xG-zhSOr#bPR zf_&#ZNbzm>y8FH2dr{fAeCng7j|}vMqFpP3t?Aa;Tb6Os#3Ij=0cQJBgt+y#0O4P% z^69;|So9gs(#~L3i*v`|Uf4Oq<`zNjnp&F7FQ-HK;OwA=gF#;e1d%1Kc2BRC59VJ< zjSKRFW1S4*!&KGgG&>%qib`y9(?y`LRL{^y*=9+#<>8R?51lF(`~!k53UwGJGk^d9 N002ovPDHLkV1m8`n_>U} literal 0 HcmV?d00001 diff --git a/gfx/pokemon/bellignan/front.png b/gfx/pokemon/bellignan/front.png new file mode 100644 index 0000000000000000000000000000000000000000..86b434e53f7c428cdaf67f27bf721d4cc3877388 GIT binary patch literal 1218 zcmV;z1U>tSP)t8S3Fw^Pts!sQ)uUp;4qO7X3SliQIecet~UcEf4FHF39>!(FtqKdd=hxKLULU(1|3XIMJnQOIRfwPgS86a8Eb} zRpHh5-2|?-l~zscM!Z(|RB&V*56Y@-M1v#c#^!OPJJXyN_Q33nLOtHBy);W=lKaw;0V%h?aIa{`y5sO|Ow@yDxwL?)YgR zC-Qu;o|;~1+*0qJFZwMgBFNim*|@m3S4Rst>7PlxmAH>wgtilP;~GoQOOdYKhK&KA zy4(V9qdWHZF}T&?i^f{KyGl^h>qYWIJ#-|2;qzzAso*U!kPPy zV(5HFcmzkmkqC}LJqnJzUd+-C9UDh+?%Id~LDdF3Lm;A@yqSc-AybIUdX$J!JuJhT?>k+c@>k+c@>k+cbJx7L>?+EJJbA+t4 z?`U1tz9VGS_>MXyd`F-~aO54q(SLK)NB{dM5u@)Tu1D_si0e`RebkU6Mo0DNf%`t9 zdepe@Bd$mN_mLjG*M)i%9NlO~N%(tRaO9s1j=n%g9XDo2yd!!?v`c$Oc5wzrHhPZC zP&`K~;XATtdq>i?9UR$l432mbH`Y=3yEjkpOZoqiYfO%Id0m~Of;#UV(VUzkiqbiv z$KN}W6qoEMqTR4$M>A@x*ilS3dVezme?{&Q+dXeiL gQ5+n7Ht%)+0JLr?$m4n4(f|Me07*qoM6N<$f+O%;EdT%j literal 0 HcmV?d00001 diff --git a/gfx/pokemon/bellignan/readme.txt b/gfx/pokemon/bellignan/readme.txt new file mode 100644 index 0000000..c2c6e05 --- /dev/null +++ b/gfx/pokemon/bellignan/readme.txt @@ -0,0 +1,2 @@ +This spritework is taken from Pokemon October, which finished Game Freak's design. +https://github.com/pokeachromicdevs/pokeoctober/tree/demo-2/gfx/pokemon/bellignan \ No newline at end of file diff --git a/gfx/pokemon/bellignan/shiny.pal b/gfx/pokemon/bellignan/shiny.pal new file mode 100644 index 0000000..028b437 --- /dev/null +++ b/gfx/pokemon/bellignan/shiny.pal @@ -0,0 +1,2 @@ + RGB 20, 23, 03 + RGB 14, 12, 31 \ No newline at end of file diff --git a/gfx/pokemon/bitmask_pointers.asm b/gfx/pokemon/bitmask_pointers.asm index 29bc7c2..b7755e8 100644 --- a/gfx/pokemon/bitmask_pointers.asm +++ b/gfx/pokemon/bitmask_pointers.asm @@ -71,6 +71,7 @@ BitmasksPointers: dw BellsproutBitmasks dw WeepinbellBitmasks dw VictreebelBitmasks + dw BellignanBitmasks dw TentacoolBitmasks dw TentacruelBitmasks dw GeodudeBitmasks diff --git a/gfx/pokemon/bitmasks.asm b/gfx/pokemon/bitmasks.asm index 48bd79f..c9ad3a5 100644 --- a/gfx/pokemon/bitmasks.asm +++ b/gfx/pokemon/bitmasks.asm @@ -69,6 +69,7 @@ MachampBitmasks: INCLUDE "gfx/pokemon/machamp/bitmask.asm" BellsproutBitmasks: INCLUDE "gfx/pokemon/bellsprout/bitmask.asm" WeepinbellBitmasks: INCLUDE "gfx/pokemon/weepinbell/bitmask.asm" VictreebelBitmasks: INCLUDE "gfx/pokemon/victreebel/bitmask.asm" +BellignanBitmasks: INCLUDE "gfx/pokemon/bellignan/bitmask.asm" TentacoolBitmasks: INCLUDE "gfx/pokemon/tentacool/bitmask.asm" TentacruelBitmasks: INCLUDE "gfx/pokemon/tentacruel/bitmask.asm" GeodudeBitmasks: INCLUDE "gfx/pokemon/geodude/bitmask.asm" diff --git a/gfx/pokemon/frame_pointers.asm b/gfx/pokemon/frame_pointers.asm index cb468f5..32caf3b 100644 --- a/gfx/pokemon/frame_pointers.asm +++ b/gfx/pokemon/frame_pointers.asm @@ -71,6 +71,7 @@ FramesPointers: dba BellsproutFrames dba WeepinbellFrames dba VictreebelFrames + dba BellignanFrames dba TentacoolFrames dba TentacruelFrames dba GeodudeFrames diff --git a/gfx/pokemon/idle_pointers.asm b/gfx/pokemon/idle_pointers.asm index c4699cd..94fda4a 100644 --- a/gfx/pokemon/idle_pointers.asm +++ b/gfx/pokemon/idle_pointers.asm @@ -71,6 +71,7 @@ AnimationIdlePointers: dw BellsproutAnimationIdle dw WeepinbellAnimationIdle dw VictreebelAnimationIdle + dw BellignanAnimationIdle dw TentacoolAnimationIdle dw TentacruelAnimationIdle dw GeodudeAnimationIdle diff --git a/gfx/pokemon/idles.asm b/gfx/pokemon/idles.asm index 423ba49..f4090c7 100644 --- a/gfx/pokemon/idles.asm +++ b/gfx/pokemon/idles.asm @@ -69,6 +69,7 @@ MachampAnimationIdle: INCLUDE "gfx/pokemon/machamp/anim_idle.asm" BellsproutAnimationIdle: INCLUDE "gfx/pokemon/bellsprout/anim_idle.asm" WeepinbellAnimationIdle: INCLUDE "gfx/pokemon/weepinbell/anim_idle.asm" VictreebelAnimationIdle: INCLUDE "gfx/pokemon/victreebel/anim_idle.asm" +BellignanAnimationIdle: INCLUDE "gfx/pokemon/victreebel/anim_idle.asm" TentacoolAnimationIdle: INCLUDE "gfx/pokemon/tentacool/anim_idle.asm" TentacruelAnimationIdle: INCLUDE "gfx/pokemon/tentacruel/anim_idle.asm" GeodudeAnimationIdle: INCLUDE "gfx/pokemon/geodude/anim_idle.asm" diff --git a/gfx/pokemon/kanto_frames.asm b/gfx/pokemon/kanto_frames.asm index ee4d116..e45958f 100644 --- a/gfx/pokemon/kanto_frames.asm +++ b/gfx/pokemon/kanto_frames.asm @@ -71,6 +71,7 @@ MachampFrames: INCLUDE "gfx/pokemon/machamp/frames.asm" BellsproutFrames: INCLUDE "gfx/pokemon/bellsprout/frames.asm" WeepinbellFrames: INCLUDE "gfx/pokemon/weepinbell/frames.asm" VictreebelFrames: INCLUDE "gfx/pokemon/victreebel/frames.asm" +BellignanFrames: INCLUDE "gfx/pokemon/bellignan/frames.asm" TentacoolFrames: INCLUDE "gfx/pokemon/tentacool/frames.asm" TentacruelFrames: INCLUDE "gfx/pokemon/tentacruel/frames.asm" GeodudeFrames: INCLUDE "gfx/pokemon/geodude/frames.asm" diff --git a/maps/PlayersHouse2F.asm b/maps/PlayersHouse2F.asm index a4ab812..cc7d8e2 100644 --- a/maps/PlayersHouse2F.asm +++ b/maps/PlayersHouse2F.asm @@ -114,23 +114,23 @@ PlayersRadioText4: DebugPokemon1Script: opentext - getmonname STRING_BUFFER_3, BLASTYKE + getmonname STRING_BUFFER_3, BELLIGNAN writetext ReceivedDebugPokemonText playsound SFX_CAUGHT_MON waitsfx promptbutton - givepoke BLASTYKE, 35, RARE_CANDY + givepoke BELLIGNAN, 35, RARE_CANDY closetext end DebugPokemon2Script: opentext - getmonname STRING_BUFFER_3, WARTORTLE + getmonname STRING_BUFFER_3, WEEPINBELL writetext ReceivedDebugPokemonText playsound SFX_CAUGHT_MON waitsfx promptbutton - givepoke WARTORTLE, 35, RARE_CANDY + givepoke WEEPINBELL, 35, POISON_STONE closetext end From a4854f63ba464153da2b70bf4669a2f47469b335 Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Thu, 26 Oct 2023 13:51:05 +0100 Subject: [PATCH 3/3] Trader NPC & Lake of Rage "Town" This adds the Trader NPC to the Lake of Rage and restores its "town" environment. The town is themed around evolution. The mart sells all the "normal" evolution stones, aiming to solve Johto's "stone problem" for Pokemon like Vulpix and Bellsprout. The Trader NPC actualises this, being at a point where most Pokemon are around Level 35-40, as is how we balanced it on Cinnabar Island in KEP. The text is mostly revolved around the Gyarados, but this could shift. The Gym isn't done - I don't have time to sort it at the moment - but I am thinking of making it a Pre-Gym. This doesn't make a lot of sense though, so maybe it should be changed to be the tower seen in an earlier build. --- constants/map_constants.asm | 3 + constants/mart_constants.asm | 1 + data/events/special_pointers.asm | 3 + data/items/marts.asm | 16 ++++ data/maps/attributes.asm | 3 + data/maps/blocks.asm | 3 + data/maps/maps.asm | 3 + data/maps/scripts.asm | 3 + engine/events/specials.asm | 5 ++ engine/events/tradeback_npc.asm | 140 +++++++++++++++++++++++++++++++ main.asm | 2 +- maps/FuchsiaMart.asm | 8 +- maps/LakeOfRage.ablk | 2 +- maps/LakeOfRage.asm | 57 +++++++++---- maps/LakeOfRageMart.asm | 54 ++++++++++++ maps/LakeOfRagePokecenter1F.asm | 95 +++++++++++++++++++++ maps/LakeOfRageTraderHouse.asm | 42 ++++++++++ maps/PlayersHouse2F.asm | 3 +- 18 files changed, 418 insertions(+), 25 deletions(-) create mode 100644 engine/events/tradeback_npc.asm create mode 100644 maps/LakeOfRageMart.asm create mode 100644 maps/LakeOfRagePokecenter1F.asm create mode 100644 maps/LakeOfRageTraderHouse.asm diff --git a/constants/map_constants.asm b/constants/map_constants.asm index 30a0478..941529a 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -60,6 +60,9 @@ ENDM map_const ROUTE_42, 30, 9 ; 5 map_const ROUTE_44, 30, 9 ; 6 map_const MAHOGANY_TOWN, 10, 9 ; 7 + map_const LAKE_OF_RAGE_TRADER_HOUSE, 4, 4 ; 8 + map_const LAKE_OF_RAGE_POKECENTER_1F, 5, 4 ; 9 + map_const LAKE_OF_RAGE_MART, 6, 4 ; 10 endgroup newgroup DUNGEONS ; 3 diff --git a/constants/mart_constants.asm b/constants/mart_constants.asm index 1a2d08f..5ccc834 100644 --- a/constants/mart_constants.asm +++ b/constants/mart_constants.asm @@ -42,4 +42,5 @@ const MART_MT_MOON const MART_INDIGO_PLATEAU const MART_UNDERGROUND + const MART_LAKEOFRAGE DEF NUM_MARTS EQU const_value diff --git a/data/events/special_pointers.asm b/data/events/special_pointers.asm index 36fa6d1..713f8bc 100644 --- a/data/events/special_pointers.asm +++ b/data/events/special_pointers.asm @@ -183,3 +183,6 @@ SpecialsPointers:: add_special InitialSetDSTFlag add_special InitialClearDSTFlag add_special UnusedDummySpecial ; unused + +; Tradeback NPC tutorial + add_special TradebackNPC \ No newline at end of file diff --git a/data/items/marts.asm b/data/items/marts.asm index d96281d..5721c42 100644 --- a/data/items/marts.asm +++ b/data/items/marts.asm @@ -35,6 +35,7 @@ Marts: dw MartMtMoon dw MartIndigoPlateau dw MartUnderground + dw MartLakeOfRage assert_table_length NUM_MARTS MartCherrygrove: @@ -405,3 +406,18 @@ DefaultMart: db POKE_BALL db POTION db -1 ; end + +; Excludes the Moon and Sun Stones, which are "treasure" items. +; Designed to solve the "stone problem" faced by Pokemon like Bellsprout in the early-game. +MartLakeOfRage: + db 9 + db FIRE_STONE + db THUNDERSTONE + db WATER_STONE + db LEAF_STONE + db HEART_STONE + db POISON_STONE + db ICE_STONE + db DUSK_STONE + db SHINY_STONE + db -1 ; end diff --git a/data/maps/attributes.asm b/data/maps/attributes.asm index f3a47bc..eeae718 100644 --- a/data/maps/attributes.asm +++ b/data/maps/attributes.asm @@ -568,6 +568,7 @@ ENDM map_attributes RedsHouse1F, REDS_HOUSE_1F, $00, 0 map_attributes RedsHouse2F, REDS_HOUSE_2F, $00, 0 map_attributes BluesHouse, BLUES_HOUSE, $00, 0 + map_attributes LakeOfRageTraderHouse, LAKE_OF_RAGE_TRADER_HOUSE, $00, 0 map_attributes OaksLab, OAKS_LAB, $00, 0 map_attributes PewterNidoranSpeechHouse, PEWTER_NIDORAN_SPEECH_HOUSE, $00, 0 map_attributes PewterGym, PEWTER_GYM, $00, 0 @@ -603,11 +604,13 @@ ENDM map_attributes SafariZoneWardensHome, SAFARI_ZONE_WARDENS_HOME, $00, 0 map_attributes Route15FuchsiaGate, ROUTE_15_FUCHSIA_GATE, $00, 0 map_attributes LavenderPokecenter1F, LAVENDER_POKECENTER_1F, $00, 0 + map_attributes LakeOfRagePokecenter1F, LAKE_OF_RAGE_POKECENTER_1F, $00, 0 map_attributes LavenderPokecenter2FBeta, LAVENDER_POKECENTER_2F_BETA, $00, 0 map_attributes MrFujisHouse, MR_FUJIS_HOUSE, $00, 0 map_attributes LavenderSpeechHouse, LAVENDER_SPEECH_HOUSE, $00, 0 map_attributes LavenderNameRater, LAVENDER_NAME_RATER, $00, 0 map_attributes LavenderMart, LAVENDER_MART, $00, 0 + map_attributes LakeOfRageMart, LAKE_OF_RAGE_MART, $00, 0 map_attributes SoulHouse, SOUL_HOUSE, $00, 0 map_attributes LavRadioTower1F, LAV_RADIO_TOWER_1F, $00, 0 map_attributes Route8SaffronGate, ROUTE_8_SAFFRON_GATE, $00, 0 diff --git a/data/maps/blocks.asm b/data/maps/blocks.asm index 526df88..99f43cf 100644 --- a/data/maps/blocks.asm +++ b/data/maps/blocks.asm @@ -198,6 +198,7 @@ CherrygroveGymSpeechHouse_Blocks: GuideGentsHouse_Blocks: CherrygroveEvolutionSpeechHouse_Blocks: Route30BerryHouse_Blocks: +LakeOfRageTraderHouse_Blocks: INCBIN "maps/House1.ablk" SafariZoneFuchsiaGateBeta_Blocks: @@ -334,6 +335,7 @@ LavenderMart_Blocks: ViridianMart_Blocks: SaffronMart_Blocks: CherrygroveMart_Blocks: +LakeOfRageMart_Blocks: INCBIN "maps/Mart.ablk" Route10North_Blocks: @@ -363,6 +365,7 @@ CianwoodPokecenter1F_Blocks: ViridianPokecenter1F_Blocks: SaffronPokecenter1F_Blocks: CherrygrovePokecenter1F_Blocks: +LakeOfRagePokecenter1F_Blocks: INCBIN "maps/Pokecenter1F.ablk" BetaPewterMuseumOfScience1F_Blocks: ; unreferenced diff --git a/data/maps/maps.asm b/data/maps/maps.asm index fde6e0c..956438d 100644 --- a/data/maps/maps.asm +++ b/data/maps/maps.asm @@ -73,6 +73,9 @@ MapGroup_Mahogany: map Route42, TILESET_JOHTO, ROUTE, LANDMARK_ROUTE_42, MUSIC_LAKE_OF_RAGE, FALSE, PALETTE_AUTO, FISHGROUP_LAKE map Route44, TILESET_JOHTO, ROUTE, LANDMARK_ROUTE_44, MUSIC_LAKE_OF_RAGE, FALSE, PALETTE_AUTO, FISHGROUP_POND map MahoganyTown, TILESET_JOHTO, TOWN, LANDMARK_MAHOGANY_TOWN, MUSIC_CHERRYGROVE_CITY, FALSE, PALETTE_AUTO, FISHGROUP_SHORE + map LakeOfRageTraderHouse, TILESET_HOUSE, INDOOR, LANDMARK_OLIVINE_CITY, MUSIC_LAKE_OF_RAGE, FALSE, PALETTE_DAY, FISHGROUP_SHORE + map LakeOfRagePokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_MAHOGANY_TOWN, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_SHORE + map LakeOfRageMart, TILESET_MART, INDOOR, LANDMARK_MAHOGANY_TOWN, MUSIC_LAKE_OF_RAGE, FALSE, PALETTE_DAY, FISHGROUP_SHORE assert_table_length NUM_MAHOGANY_MAPS MapGroup_Dungeons: diff --git a/data/maps/scripts.asm b/data/maps/scripts.asm index 0cd36ab..8c07534 100644 --- a/data/maps/scripts.asm +++ b/data/maps/scripts.asm @@ -494,3 +494,6 @@ INCLUDE "maps/CeruleanCave1F.asm" INCLUDE "maps/CeruleanCave2F.asm" INCLUDE "maps/CeruleanCaveB1F.asm" INCLUDE "maps/SilentHills.asm" +INCLUDE "maps/LakeOfRageTraderHouse.asm" +INCLUDE "maps/LakeOfRagePokecenter1F.asm" +INCLUDE "maps/LakeOfRageMart.asm" diff --git a/engine/events/specials.asm b/engine/events/specials.asm index 8417d5a..e8b6fa4 100644 --- a/engine/events/specials.asm +++ b/engine/events/specials.asm @@ -420,3 +420,8 @@ TrainerHouse: ld a, [sMysteryGiftTrainerHouseFlag] ld [wScriptVar], a jp CloseSRAM + +; Tradeback NPC tutorial +TradebackNPC: + farcall TradebackGuy + ret \ No newline at end of file diff --git a/engine/events/tradeback_npc.asm b/engine/events/tradeback_npc.asm new file mode 100644 index 0000000..4c4c44c --- /dev/null +++ b/engine/events/tradeback_npc.asm @@ -0,0 +1,140 @@ +; Fun fact, the 'trade' part of a trade isn't checked to evolve a Pokémon. +; It seems that just the trade animation and the link state are enough. +; No Pokémon is actualy ever moved to or from your party because of that fact. + +TradebackGuy:: + ld hl, TradebackGuyText + call PrintText + call YesNoBox + ld hl, TradebackGuyCanceledText + jr c, .done + +; Select a Pokémon from the party. + ld b, PARTYMENUACTION_GIVE_MON + farcall SelectTradeOrDayCareMon + ld a, [wCurPartyMon] + ld hl, TradebackGuyCanceledText + jr c, .done + + ld hl, NPCTradeCableText + call PrintText + + call TradeWithTradebackGuy + call RestartMapMusic + + ld hl, TradebackGuyCompleteText + call PrintText + ret +.done + call PrintText + ret + +; Loads the appropriate data to perform the trade animation. +TradeWithTradebackGuy: +; Sets the link state to trading so that evolution is possible. + ld a, LINK_TRADECENTER + ld [wLinkMode], a + +; Establish names of trading trainers + ld hl, wPlayerName + ld de, wPlayerTrademonSenderName + ld bc, NAME_LENGTH + call CopyBytes + + ld hl, .tradeback_guy_name + ld de, wOTTrademonSenderName + ld bc, NAME_LENGTH + call CopyBytes +.tradeback_guy_name: + db "TRADER@@@" + +; Establish the Pokémon's species. + ld a, [wCurPartyMon] + ld hl, wPartySpecies + ld b, 0 + ld c, a + add hl, bc + ld a, [hl] + ld [wPlayerTrademonSpecies], a + ld [wOTTrademonSpecies], a + +; Establish Pokémon's ID number. + ld hl, wPartyMon1ID + ld a, [wCurPartyMon] + call GetPartyLocation + ld a, [hli] + ld [wPlayerTrademonID], a + ld [wOTTrademonID], a + ld a, [hl] + ld [wPlayerTrademonID + 1], a + ld [wOTTrademonID + 1], a + +; Correctly display Pokémon shiny status on the trade screen. + ld hl, wPartyMon1DVs + ld a, [wCurPartyMon] + call GetPartyLocation + ld a, [hli] + ld [wPlayerTrademonDVs], a + ld [wOTTrademonDVs], a + ld a, [hl] + ld [wPlayerTrademonDVs + 1], a + ld [wOTTrademonDVs + 1], a + +; Establish Pokémon's OT's name + ld a, [wCurPartyMon] + ld hl, wPartyMonOTs + call SkipNames + ld de, wPlayerTrademonOTName + ld bc, NAME_LENGTH + call CopyBytes + + ld hl, wPartyMonOTs + ld de, wOTTrademonOTName + ld bc, NAME_LENGTH + call CopyBytes + +; Makes it so that pressing B will not cancel the evolution. + ; This is standard for trade based evolution. + ld a, 1 + ld [wForceEvolution], a + +; Run the trade animation/ evolves the mon if applicable. + call DisableSpriteUpdates +; wTradeDialog aliases wFrameCounter, which TradeAnimation uses. + ld a, [wTradeDialog] + push af + predef TradeAnimation + callfar EvolvePokemon + pop af + ld [wTradeDialog], a + call ReturnToMapWithSpeechTextbox + +; Changes the link mode back to not linked, battles won't work right otherwise. + ld a, LINK_NULL + ld [wLinkMode], a + ret + +TradebackGuyText:: + text "Hey there! I'm" + line "the TRADER!" + + para "I love helping" + line "TRAINERs evolve" + cont "their #MON!" + + para "Wanna try?" + done + +TradebackGuyCanceledText:: + text "Oh, ok then." + + para "Come back if you" + line "change your mind!" + done + +TradebackGuyCompleteText:: + text "And...done!" + + para "I hope that" + line "was helpful!" + done diff --git a/main.asm b/main.asm index 15645f4..0095bbb 100644 --- a/main.asm +++ b/main.asm @@ -480,7 +480,7 @@ SECTION "bank3F", ROMX INCLUDE "engine/tilesets/tileset_anims.asm" INCLUDE "engine/events/npc_trade.asm" INCLUDE "engine/events/mom_phone.asm" - +INCLUDE "engine/events/tradeback_npc.asm" ; Tradeback NPC tutorial SECTION "mobile40", ROMX diff --git a/maps/FuchsiaMart.asm b/maps/FuchsiaMart.asm index 30443e4..9627ff8 100644 --- a/maps/FuchsiaMart.asm +++ b/maps/FuchsiaMart.asm @@ -21,11 +21,9 @@ FuchsiaMartCooltrainerFScript: jumptextfaceplayer FuchsiaMartCooltrainerFText FuchsiaMartFisherText: - text "I was hoping to" - line "buy some SAFARI" - - para "ZONE souvenirs," - line "but it's closed…" + text "I'm buying some" + line "SAFARI ZONE" + cont "souvenirs!" done FuchsiaMartCooltrainerFText: diff --git a/maps/LakeOfRage.ablk b/maps/LakeOfRage.ablk index 3b26d4f..d1d63a0 100644 --- a/maps/LakeOfRage.ablk +++ b/maps/LakeOfRage.ablk @@ -1 +1 @@ -,-aaaaaaa./aaa]]a\]f\]aa[]aaTvvy555Y<[]]]X5555555YbeeX55555Ya?jpp=aX5YGfhqqeWKee`ehqqaKWa`Gjqqqe=]hqqqdlrqq \ No newline at end of file +\^af\a\^afG^f\\f>^fTU^abfd?fdTvyY>dG\fd\X55Ya^d?f^Tvy55Y<d`f\\Ty555Y`f]\?\aX555Y\\^?Tvvy555Y^<fTvy555555Y^bd\bf^X5555555Ydf\ffTy5555555Y\b\af\fX55555Ya^d<d\daX555Yfd\\G`f^^\>e\adfa \ No newline at end of file diff --git a/maps/LakeOfRage.asm b/maps/LakeOfRage.asm index 51a7b9d..e5f7fa3 100644 --- a/maps/LakeOfRage.asm +++ b/maps/LakeOfRage.asm @@ -11,6 +11,7 @@ const LAKEOFRAGE_WESLEY const LAKEOFRAGE_POKE_BALL1 const LAKEOFRAGE_POKE_BALL2 + const LAKEOFRAGE_CAMERAMAN LakeOfRage_MapScripts: def_scene_scripts @@ -125,6 +126,9 @@ LakeOfRageSuperNerdScript: LakeOfRageCooltrainerFScript: jumptextfaceplayer LakeOfRageCooltrainerFText +LakeOfRageCameramanScript: + jumptextfaceplayer LakeOfRageCameramanText + LakeOfRageSign: jumptext LakeOfRageSignText @@ -491,32 +495,51 @@ FishingGurusHouseSignText: line "HOUSE" done +LakeOfRageCameramanText: ; Reference to the Battle Zone + text "Hohoho!" + + para "Am I lucky to" + line "have been here" + cont "when that MAGIKARP" + cont "evolved!" + + para "This film is" + line "gonna make me" + cont "rich!" + done + LakeOfRage_MapEvents: db 0, 0 ; filler def_warp_events - warp_event 7, 3, LAKE_OF_RAGE_HIDDEN_POWER_HOUSE, 1 - warp_event 27, 31, LAKE_OF_RAGE_MAGIKARP_HOUSE, 1 + warp_event 21, 5, LAKE_OF_RAGE_HIDDEN_POWER_HOUSE, 1 + warp_event 35, 29, LAKE_OF_RAGE_MAGIKARP_HOUSE, 1 + warp_event 3, 9, LAKE_OF_RAGE_MART, 1 + warp_event 5, 19, LAKE_OF_RAGE_POKECENTER_1F, 1 + warp_event 17, 13, LAKE_OF_RAGE_TRADER_HOUSE, 1 +; warp_event 10, 5, LAKE_OF_RAGE_PRE_GYM, 1 ; tbd def_coord_events def_bg_events - bg_event 21, 27, BGEVENT_READ, LakeOfRageSign - bg_event 25, 31, BGEVENT_READ, MagikarpHouseSignScript - bg_event 11, 28, BGEVENT_ITEM, LakeOfRageHiddenFullRestore - bg_event 4, 4, BGEVENT_ITEM, LakeOfRageHiddenRareCandy - bg_event 35, 5, BGEVENT_ITEM, LakeOfRageHiddenMaxPotion + bg_event 19, 31, BGEVENT_READ, LakeOfRageSign + bg_event 33, 29, BGEVENT_READ, MagikarpHouseSignScript + bg_event 3, 31, BGEVENT_ITEM, LakeOfRageHiddenFullRestore + bg_event 9, 11, BGEVENT_ITEM, LakeOfRageHiddenRareCandy + bg_event 19, 5, BGEVENT_ITEM, LakeOfRageHiddenMaxPotion def_object_events - object_event 21, 28, SPRITE_LANCE, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageLanceScript, EVENT_LAKE_OF_RAGE_LANCE - object_event 20, 26, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageGrampsScript, -1 + object_event 19, 32, SPRITE_LANCE, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageLanceScript, EVENT_LAKE_OF_RAGE_LANCE + object_event 20, 30, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageGrampsScript, -1 object_event 36, 13, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageSuperNerdScript, -1 - object_event 25, 29, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageCooltrainerFScript, -1 - object_event 30, 23, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 1, TrainerFisherAndre, EVENT_LAKE_OF_RAGE_CIVILIANS - object_event 24, 26, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 1, TrainerFisherRaymond, EVENT_LAKE_OF_RAGE_CIVILIANS - object_event 4, 15, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 1, TrainerCooltrainermAaron, EVENT_LAKE_OF_RAGE_CIVILIANS + object_event 9, 9, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageCooltrainerFScript, -1 + object_event 21, 15, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 1, TrainerFisherAndre, EVENT_LAKE_OF_RAGE_CIVILIANS + object_event 31, 22, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 1, TrainerFisherRaymond, EVENT_LAKE_OF_RAGE_CIVILIANS + object_event 2, 25, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 1, TrainerCooltrainermAaron, EVENT_LAKE_OF_RAGE_CIVILIANS object_event 36, 7, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 0, TrainerCooltrainerfLois, EVENT_LAKE_OF_RAGE_CIVILIANS - object_event 18, 22, SPRITE_GYARADOS, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RedGyarados, EVENT_LAKE_OF_RAGE_RED_GYARADOS - object_event 4, 4, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, WesleyScript, EVENT_LAKE_OF_RAGE_WESLEY_OF_WEDNESDAY - object_event 7, 10, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, LakeOfRageElixer, EVENT_LAKE_OF_RAGE_ELIXER - object_event 35, 2, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, LakeOfRageTMDetect, EVENT_LAKE_OF_RAGE_TM_DETECT + object_event 19, 26, SPRITE_GYARADOS, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RedGyarados, EVENT_LAKE_OF_RAGE_RED_GYARADOS + object_event 9, 11, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, WesleyScript, EVENT_LAKE_OF_RAGE_WESLEY_OF_WEDNESDAY + object_event 7, 27, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, LakeOfRageElixer, EVENT_LAKE_OF_RAGE_ELIXER + object_event 27, 8, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, LakeOfRageTMDetect, EVENT_LAKE_OF_RAGE_TM_DETECT + object_event 11, 18, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageCameramanScript, -1 + \ No newline at end of file diff --git a/maps/LakeOfRageMart.asm b/maps/LakeOfRageMart.asm new file mode 100644 index 0000000..5caa4c1 --- /dev/null +++ b/maps/LakeOfRageMart.asm @@ -0,0 +1,54 @@ + object_const_def + const LAKEOFRAGEMART_CLERK + const LAKEOFRAGEMART_GRAMPS + const LAKEOFRAGEMART_POKEFAN_F + +LakeOfRageMart_MapScripts: + def_scene_scripts + + def_callbacks + +LakeOfRageMartClerkScript: + opentext + pokemart MARTTYPE_STANDARD, MART_LAKEOFRAGE + closetext + end + +LakeOfRageMartPokefanFScript: + jumptextfaceplayer LakeOfRageMartPokefanFText + +LakeOfRageMartGrampsScript: + jumptextfaceplayer LakeOfRageMartGrampsText + +LakeOfRageMartPokefanFText: + text "This shop sells" + line "so many STONEs!" + + para "I'm spoiled for" + line "choice!" + done + +LakeOfRageMartGrampsText: + text "The TRADER helped" + line "me evolve my" + cont "RAICHU!" + + para "...what's with" + line "that look?" + done + +LakeOfRageMart_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 2, 7, LAKE_OF_RAGE, 3 + warp_event 3, 7, LAKE_OF_RAGE, 3 + + def_coord_events + + def_bg_events + + def_object_events + object_event 1, 3, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageMartClerkScript, -1 + object_event 6, 6, SPRITE_POKEFAN_M, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, LakeOfRageMartPokefanFScript, -1 + object_event 9, 2, SPRITE_ROCKER, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRageMartGrampsScript, -1 diff --git a/maps/LakeOfRagePokecenter1F.asm b/maps/LakeOfRagePokecenter1F.asm new file mode 100644 index 0000000..c1caa28 --- /dev/null +++ b/maps/LakeOfRagePokecenter1F.asm @@ -0,0 +1,95 @@ + object_const_def + const LAKEOFRAGEPOKECENTER1F_NURSE + const LAKEOFRAGEPOKECENTER1F_SCIENTIST + const LAKEOFRAGEPOKECENTER1F_GENTLEMAN + const LAKEOFRAGEPOKECENTER1F_YOUNGSTER + +LakeOfRagePokecenter1F_MapScripts: + def_scene_scripts + + def_callbacks + +LakeOfRagePokecenter1FNurseScript: + jumpstd PokecenterNurseScript + +LakeOfRagePokecenter1FGentlemanScript: + jumptextfaceplayer LakeOfRagePokecenter1FGentlemanText + +LakeOfRagePokecenter1FScientistScript: + jumptextfaceplayer LakeOfRagePokecenter1FScientistText + +LakeOfRagePokecenter1FYoungsterScript: + faceplayer + opentext + checkevent EVENT_LAKE_OF_RAGE_RED_GYARADOS + iftrue .GyaradosDefeated + writetext LakeOfRagePokecenter1FYoungsterText + waitbutton + closetext + end + +.GyaradosDefeated: + writetext LakeOfRagePokecenter1FYoungsterText_GyaradosDefeated + waitbutton + closetext + end + +LakeOfRagePokecenter1FScientistText: + text "GYARADOS are very" + line "sensitive to" + cont "changes in their" + cont "environment." + + para "Even a minor" + line "tremor can drive" + cont "them wild!" + done + +LakeOfRagePokecenter1FGentlemanText: + text "I wonder who is" + line "behind all this" + cont "nonsense?" + + para "First the RADIO" + line "TOWER, now the" + cont "lake..." + + done + +LakeOfRagePokecenter1FYoungsterText: + text "Dad said I have" + line "to stay inside." + + para "I hear a monster" + line "outside..." + + para "And my #GEAR" + line "keeps playing" + cont "this weird music!" + + para "Waaah! So scary!" + done + +LakeOfRagePokecenter1FYoungsterText_GyaradosDefeated: + text "The monster is" + line "gone! I can go" + cont "outside again!" + done + +LakeOfRagePokecenter1F_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 3, 7, LAKE_OF_RAGE, 4 + warp_event 4, 7, LAKE_OF_RAGE, 4 + warp_event 0, 7, POKECENTER_2F, 1 + + def_coord_events + + def_bg_events + + def_object_events + object_event 3, 1, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRagePokecenter1FNurseScript, -1 + object_event 7, 6, SPRITE_SCIENTIST, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LakeOfRagePokecenter1FScientistScript, -1 + object_event 5, 3, SPRITE_GENTLEMAN, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, LakeOfRagePokecenter1FGentlemanScript, -1 + object_event 1, 5, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 1, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, LakeOfRagePokecenter1FYoungsterScript, -1 diff --git a/maps/LakeOfRageTraderHouse.asm b/maps/LakeOfRageTraderHouse.asm new file mode 100644 index 0000000..d15a099 --- /dev/null +++ b/maps/LakeOfRageTraderHouse.asm @@ -0,0 +1,42 @@ + object_const_def + const LAKEOFRAGETRADERHOUSE_TRADER + +LakeOfRageTraderHouse_MapScripts: + def_scene_scripts + + def_callbacks + +; Tradeback NPC tutorial +TradebackNPCScript: + faceplayer + opentext + special TradebackNPC + waitbutton + closetext + end + +LakeOfRageTraderHouseBookshelf2: + jumpstd DifficultBookshelfScript + +LakeOfRageTraderHouseBookshelf1: + jumpstd MagazineBookshelfScript + +LakeOfRageTraderHouseRadio: + jumpstd Radio2Script + +LakeOfRageTraderHouse_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 2, 7, LAKE_OF_RAGE, 5 + warp_event 3, 7, LAKE_OF_RAGE, 5 + + def_coord_events + + def_bg_events + bg_event 0, 1, BGEVENT_READ, LakeOfRageTraderHouseBookshelf1 + bg_event 1, 1, BGEVENT_READ, LakeOfRageTraderHouseBookshelf2 + bg_event 7, 1, BGEVENT_READ, LakeOfRageTraderHouseRadio + + def_object_events + object_event 2, 4, SPRITE_GAMEBOY_KID, SPRITEMOVEDATA_STANDING_DOWN, 0, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, TradebackNPCScript, -1 diff --git a/maps/PlayersHouse2F.asm b/maps/PlayersHouse2F.asm index cc7d8e2..5a1d1b5 100644 --- a/maps/PlayersHouse2F.asm +++ b/maps/PlayersHouse2F.asm @@ -145,7 +145,8 @@ PlayersHouse2F_MapEvents: db 0, 0 ; filler def_warp_events - warp_event 7, 0, PLAYERS_HOUSE_1F, 3 + warp_event 7, 0, LAKE_OF_RAGE, 3 + ;warp_event 7, 0, PLAYERS_HOUSE_1F, 3 def_coord_events