From 71dc34b41806924f9caa9438080712acff0c2bd2 Mon Sep 17 00:00:00 2001 From: Maurice Date: Fri, 28 Nov 2025 23:35:30 +0100 Subject: [PATCH] added concept for monsters --- assets/monster/bat_down_1.png | Bin 0 -> 156 bytes assets/monster/bat_down_2.png | Bin 0 -> 156 bytes assets/monster/greenslime_down_1.png | Bin 0 -> 6151 bytes assets/monster/greenslime_down_2.png | Bin 0 -> 6213 bytes assets/monster/orc_attack_down_1.png | Bin 0 -> 360 bytes assets/monster/orc_attack_down_2.png | Bin 0 -> 417 bytes assets/monster/orc_attack_left_1.png | Bin 0 -> 318 bytes assets/monster/orc_attack_left_2.png | Bin 0 -> 336 bytes assets/monster/orc_attack_right_1.png | Bin 0 -> 330 bytes assets/monster/orc_attack_right_2.png | Bin 0 -> 345 bytes assets/monster/orc_attack_up_1.png | Bin 0 -> 354 bytes assets/monster/orc_attack_up_2.png | Bin 0 -> 396 bytes assets/monster/orc_down_1.png | Bin 0 -> 330 bytes assets/monster/orc_down_2.png | Bin 0 -> 360 bytes assets/monster/orc_left_1.png | Bin 0 -> 273 bytes assets/monster/orc_left_2.png | Bin 0 -> 324 bytes assets/monster/orc_right_1.png | Bin 0 -> 282 bytes assets/monster/orc_right_2.png | Bin 0 -> 315 bytes assets/monster/orc_up_1.png | Bin 0 -> 312 bytes assets/monster/orc_up_2.png | Bin 0 -> 288 bytes assets/monster/redslime_down_1.png | Bin 0 -> 6281 bytes assets/monster/redslime_down_2.png | Bin 0 -> 6363 bytes assets/monster/skeletonlord_attack_down_1.png | Bin 0 -> 538 bytes assets/monster/skeletonlord_attack_down_2.png | Bin 0 -> 551 bytes assets/monster/skeletonlord_attack_left_1.png | Bin 0 -> 521 bytes assets/monster/skeletonlord_attack_left_2.png | Bin 0 -> 545 bytes .../monster/skeletonlord_attack_right_1.png | Bin 0 -> 506 bytes .../monster/skeletonlord_attack_right_2.png | Bin 0 -> 517 bytes assets/monster/skeletonlord_attack_up_1.png | Bin 0 -> 548 bytes assets/monster/skeletonlord_attack_up_2.png | Bin 0 -> 517 bytes assets/monster/skeletonlord_down_1.png | Bin 0 -> 551 bytes assets/monster/skeletonlord_down_2.png | Bin 0 -> 528 bytes assets/monster/skeletonlord_left_1.png | Bin 0 -> 443 bytes assets/monster/skeletonlord_left_2.png | Bin 0 -> 495 bytes .../skeletonlord_phase2_attack_down_1.png | Bin 0 -> 569 bytes .../skeletonlord_phase2_attack_down_2.png | Bin 0 -> 567 bytes .../skeletonlord_phase2_attack_left_1.png | Bin 0 -> 540 bytes .../skeletonlord_phase2_attack_left_2.png | Bin 0 -> 549 bytes .../skeletonlord_phase2_attack_right_1.png | Bin 0 -> 506 bytes .../skeletonlord_phase2_attack_right_2.png | Bin 0 -> 538 bytes .../skeletonlord_phase2_attack_up_1.png | Bin 0 -> 548 bytes .../skeletonlord_phase2_attack_up_2.png | Bin 0 -> 517 bytes assets/monster/skeletonlord_phase2_down_1.png | Bin 0 -> 569 bytes assets/monster/skeletonlord_phase2_down_2.png | Bin 0 -> 548 bytes assets/monster/skeletonlord_phase2_left_1.png | Bin 0 -> 464 bytes assets/monster/skeletonlord_phase2_left_2.png | Bin 0 -> 520 bytes .../monster/skeletonlord_phase2_right_1.png | Bin 0 -> 466 bytes .../monster/skeletonlord_phase2_right_2.png | Bin 0 -> 522 bytes assets/monster/skeletonlord_phase2_up_1.png | Bin 0 -> 532 bytes assets/monster/skeletonlord_phase2_up_2.png | Bin 0 -> 557 bytes assets/monster/skeletonlord_right_1.png | Bin 0 -> 448 bytes assets/monster/skeletonlord_right_2.png | Bin 0 -> 506 bytes assets/monster/skeletonlord_up_1.png | Bin 0 -> 532 bytes assets/monster/skeletonlord_up_2.png | Bin 0 -> 557 bytes src/de/miaurizius/jgame2d/core/GamePanel.java | 5 +- .../jgame2d/core/handlers/AssetSetter.java | 19 ++++--- .../jgame2d/entity/monster/GreenSlimeMON.java | 51 ++++++++++++++++++ .../jgame2d/entity/objects/DoorObj.java | 7 +++ 58 files changed, 73 insertions(+), 9 deletions(-) create mode 100644 assets/monster/bat_down_1.png create mode 100644 assets/monster/bat_down_2.png create mode 100644 assets/monster/greenslime_down_1.png create mode 100644 assets/monster/greenslime_down_2.png create mode 100644 assets/monster/orc_attack_down_1.png create mode 100644 assets/monster/orc_attack_down_2.png create mode 100644 assets/monster/orc_attack_left_1.png create mode 100644 assets/monster/orc_attack_left_2.png create mode 100644 assets/monster/orc_attack_right_1.png create mode 100644 assets/monster/orc_attack_right_2.png create mode 100644 assets/monster/orc_attack_up_1.png create mode 100644 assets/monster/orc_attack_up_2.png create mode 100644 assets/monster/orc_down_1.png create mode 100644 assets/monster/orc_down_2.png create mode 100644 assets/monster/orc_left_1.png create mode 100644 assets/monster/orc_left_2.png create mode 100644 assets/monster/orc_right_1.png create mode 100644 assets/monster/orc_right_2.png create mode 100644 assets/monster/orc_up_1.png create mode 100644 assets/monster/orc_up_2.png create mode 100644 assets/monster/redslime_down_1.png create mode 100644 assets/monster/redslime_down_2.png create mode 100644 assets/monster/skeletonlord_attack_down_1.png create mode 100644 assets/monster/skeletonlord_attack_down_2.png create mode 100644 assets/monster/skeletonlord_attack_left_1.png create mode 100644 assets/monster/skeletonlord_attack_left_2.png create mode 100644 assets/monster/skeletonlord_attack_right_1.png create mode 100644 assets/monster/skeletonlord_attack_right_2.png create mode 100644 assets/monster/skeletonlord_attack_up_1.png create mode 100644 assets/monster/skeletonlord_attack_up_2.png create mode 100644 assets/monster/skeletonlord_down_1.png create mode 100644 assets/monster/skeletonlord_down_2.png create mode 100644 assets/monster/skeletonlord_left_1.png create mode 100644 assets/monster/skeletonlord_left_2.png create mode 100644 assets/monster/skeletonlord_phase2_attack_down_1.png create mode 100644 assets/monster/skeletonlord_phase2_attack_down_2.png create mode 100644 assets/monster/skeletonlord_phase2_attack_left_1.png create mode 100644 assets/monster/skeletonlord_phase2_attack_left_2.png create mode 100644 assets/monster/skeletonlord_phase2_attack_right_1.png create mode 100644 assets/monster/skeletonlord_phase2_attack_right_2.png create mode 100644 assets/monster/skeletonlord_phase2_attack_up_1.png create mode 100644 assets/monster/skeletonlord_phase2_attack_up_2.png create mode 100644 assets/monster/skeletonlord_phase2_down_1.png create mode 100644 assets/monster/skeletonlord_phase2_down_2.png create mode 100644 assets/monster/skeletonlord_phase2_left_1.png create mode 100644 assets/monster/skeletonlord_phase2_left_2.png create mode 100644 assets/monster/skeletonlord_phase2_right_1.png create mode 100644 assets/monster/skeletonlord_phase2_right_2.png create mode 100644 assets/monster/skeletonlord_phase2_up_1.png create mode 100644 assets/monster/skeletonlord_phase2_up_2.png create mode 100644 assets/monster/skeletonlord_right_1.png create mode 100644 assets/monster/skeletonlord_right_2.png create mode 100644 assets/monster/skeletonlord_up_1.png create mode 100644 assets/monster/skeletonlord_up_2.png create mode 100644 src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java diff --git a/assets/monster/bat_down_1.png b/assets/monster/bat_down_1.png new file mode 100644 index 0000000000000000000000000000000000000000..5dc090fd3baf8391b6c39bd120bbb74b329786db GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`iJmTwAr}70DGLM)f>z8=WRdtV zzmf5cuSBn4O3NXJC4y`lRvpbg(Egw2KdXeKgx#O?1c8Jjau06sIBXLQ*E#%kp|nF! znuxxlbi>*GEJrW!Du}E&5yy0#M^kD;+i?Q}28N>&{DMDbt*le$YXhUdH?;}>ZH{F-o#3}tI_8OjNUg&HhN~g`f~Qn(?gCoJ;OXk;vd$@? F2>^Z6INSgL literal 0 HcmV?d00001 diff --git a/assets/monster/greenslime_down_1.png b/assets/monster/greenslime_down_1.png new file mode 100644 index 0000000000000000000000000000000000000000..19e98a366df2377fcdce7d792c551f4703196f44 GIT binary patch literal 6151 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 uEMDsQed^(ZGOSO1|v8$+XxRBa7Tn*J|zP}|M` literal 0 HcmV?d00001 diff --git a/assets/monster/greenslime_down_2.png b/assets/monster/greenslime_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..6c06cd4171f1ad4bce8411aa5626b70664287f02 GIT binary patch literal 6213 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 Q6BtC1h(r8$`o%2#7lNqY844z+qnH5_3oG`+ zGytj!?sQ}?pt}M|4kHl32Ed#Ma*dRNB#M4)&PVnO*Z>%S1sWa~!1cnMf?@!Uv;h}J zb`5eg!VLi_00Edc(D@)am?0SH0Gt0|R)aJlhYiT9SW{w!vmsayFDpX&^Y8x*9ed9+ zAX|Xb08oI6Z94<^Gf4AYeHmC9KuMuklQOa&VWz{&(iXN#L+-RsiFofAprnXf|VU8n>0rN0000xe|6txkT{ASbOZk9PfBB$m^TY-0Ei6&Fh0m& zbVINjfGcXBJ$O!>0TXg(g3TzHoDQa8{IFs_;tYT}8QmpF-h;awXCO)`NTTS6IUhY7 zaHT}7(FhAvln4tWMvx0ooDOm}C>krA4HPy5h}1J7JA*CA&pcpxTN>M(G!Fo6x3e)tl4u0u{2 zICJBFm?6^-Un07wLs6Jusq-Jn6+{_=p@>vN@EQOO54P)^%?9hG=4NduibS za5_LQc0qzj4x+sSuoc4~N5BdznnnS(q8OGaVPyhM9e|^D1qC~-Duzb^0P&QCw--=? QrvLx|07*qoM6N<$f=Od@vj6}9 literal 0 HcmV?d00001 diff --git a/assets/monster/orc_attack_left_2.png b/assets/monster/orc_attack_left_2.png new file mode 100644 index 0000000000000000000000000000000000000000..f2c668cb87576b212411a652f539aae3cab6bf63 GIT binary patch literal 336 zcmV-W0k8gvP)3l8Bu3DDf(nT61>E=flhRO>Pt2P|&=FK|0J_C6 zSJ2e~6LM!V6iiMZm=J*3I%uNc*@Nc{QVNn_cM*yPlr)fOtM{LujTt2vJNBL@CY_+< z1d!z*i(w&x&k=CLv009u1JE3Uk@}H+4)Z<85kxxxqzM!PAAkKtp^+T|lAC_`5(6yn zgYrAf5^QOJXa|5S0fhn)`JSKyU?BmE2BJcM7>m)=z#I#TMlc)XTae`-fSe9!<> z3=*TNBTyXh@z-AlWXF8>Hw8OlV%{ud$57V+Ad^9%fNTSLh@d%y`VK$~>;IXydT=3- zV?ZG@{qQB280{U9KPe4t*{{_nz%*N^1>8Z<=%AV-&<*+zvm6%hpu{MpAW0Vo(A{$M zECqG|$mg(7Ku#M-Ie}`ykJSMn!DkPiV+1?Qaa1n{kbDV`0+=H}G%e#FTdDTH!r2gK z*$OHlX&C|_!@&g-Hb>CHa*Q+p%5u>19wQ-AJO5)V)&9dOAdn;QR`+cNi4kiCRu>SX`G5YTG!)Gf^JXFQi7^9bKoO%E z!vQeUpbjC%4C*>yLhek4g30L&1LgpFMgctdpFMcaAf+IQEiKS23NYdx^!3Pg4UQ4WAvhRqSkIU>_mkAa_! z8O1)3WgszR8l(Ug3Pd{q*~jP(0YwccN1*Vn|BpU>FSpP(B*GdEq~fY>we#xIluX4vMC)mWmi=tnS;4;cc)1AkCaC zOmGd~|NMiq`6I2s>}L<2gK4NCaD%`GWZLRsbuzL+Aax6lUt!3flm<3vV%{vUA#g9? zG6dNl(+^*Q8vru|Jy8C`Y`_+XAX`I=d>Nz^B;l?=HsC)<668l*hJXw}mILu&27oog zOojy*x+{?7L2Q@-D4JoK&<%lUMvoDY3$PkMsJ=js1+W3II7apgx*;G}!JH1uNANI! zDh9i#!r2haL@#o+F89Mf!$DR_=YywB6*tRopVUXs#`Z5@)5W_T(?XYM9ITtC} zg5w`4DZ`zHH6fv;d$6~VT#2FwTY-X8F}9ci0Ghga9P#+l!~g&Q07*qoM6N<$f>r5~ ABLDyZ literal 0 HcmV?d00001 diff --git a/assets/monster/orc_attack_up_2.png b/assets/monster/orc_attack_up_2.png new file mode 100644 index 0000000000000000000000000000000000000000..39332f13237ea525b120e6c58562b86b7366b073 GIT binary patch literal 396 zcmV;70dxL|P)4z`jbSYMe1WTR&oGeTz!Gp^X+86+`8r>Bnxd7&NWJCTi zFfz$$;;F{xK{#eg#DjK?Bgk1Kkz441lKrSa@XG>VcWW81O%| z$QNrC5jp*k0o@zuE&ywmQjo+j;Ms%cU@>$X{4zEAWQz^@&?FuSQugR0yyeGnqdKk9vHB|g@pxj7+{1xx*^Ch1G60*iXbQB ziaK1;fnfl$pFuWbO9vpskev=Q9P9#^0Wbv>&V~%UtcV!?{2P+8JNBN3xf<>`6a%16 z1BbNo#V06+yz(-ECmv+4!K{I29#}pAr8pQs4kKj$V>kz@0XZka0~sU-3L9b!z!v!E qhN6T4&dfuM1W_dtK7$6{001yJpCP$|I-vjn002ovPDHLkV1fV>-b}h&aTGo12K>*Tl*TYIZx+}95E}$we2~HDhF~=S zhw~YpJ$O!>0TXg(G89ZsM==K^7FO&>oB=Q=qq_vjdvKQ{djTAHAU}d=DFsOs{n(t3 z9HL;&Fik|b0InD00u;@-0uWgo*)>=V04V?gn2XT)AUT*Ja05Vsxcm>Z9i$04Y(QRx z1tKizf(@*2HU#V8WkrPX=imPsI`*DN31GMZnYMah1EwFo1U3K^U1HnLz`YI9d{b}h&aTGmZPNuCM*v9FHFEQj#N@JLqHw$b4hz$ZT zKFDBnLl{At`PrBmKK}X(R?HS^fy4C-49^}s$8G>f2h0$V0TXg(f(Y&E4(JA; z1R^#UfW(l)0>uE3^N9s8L$DeEk^}*mH_-XWt^oTv+fE;>0ptRZVs!t*T!kDCATdyy zKnXOMf(mCt23}S~g8Td%5=$L>&%;t8EU7bs4ZxP-lrKI(G31q(2`qXslQPH~+9wX6F!gTye@V>JM#JAYCdia`_eW?>kD)c|yjFjGh}U_$Op zhJwlIH4IfImfB-mVZZ(xlY1_lO{m;h-8X@rFhvLPe~BFGR712S#(;0b5? z;Y)CvU`|H18N&dOW_~tihL6Agg8hhW0J5`@4MTAO%yyU|AOk9#4Z((W>^+a+8fXl` zy$)uec>yH$A7lu!0ic+GCTEn?h&L&tX9#rvW6K;U(Fd~;IcXD02k6-t=0aTJ3;@k8 XauLodd9?rl002ovPDHLkV1fVuqEKjq literal 0 HcmV?d00001 diff --git a/assets/monster/orc_left_2.png b/assets/monster/orc_left_2.png new file mode 100644 index 0000000000000000000000000000000000000000..084e0e3e8a2125c8dbbb2b7c3add769b7425ce34 GIT binary patch literal 324 zcmV-K0lWT*P)Rd8(+9hH>YH8wKNshKD&WX7B@%W#tF8HNC(wxbLu z8o1J(+xqrCKlloyyOQNFw?glQ3vIuJpGoB~b_jBB;9)Uhv9)gy5$=3WYg7OL literal 0 HcmV?d00001 diff --git a/assets/monster/orc_right_2.png b/assets/monster/orc_right_2.png new file mode 100644 index 0000000000000000000000000000000000000000..670d44c4d4c5376ca6f3405e469c7b30f3e9543c GIT binary patch literal 315 zcmV-B0mS}^P)4yw5+$;=FzWxErfegWB!2kS7X(*Z} z=FI~0Gi~+2G|Uj94S<>UYxM~fgNZg^Lhek4g30L&AeX>gfiDbjdI8xRxD0@6e)ixw zgOq|KMp)o;0fx;WLttQa-)3;E;fqGN0U*Dk#{@_>EHg_sXB1TAf2h5;!3 zBS#%_pn>FIwjvvZ>;-rR0vQ4eBnAcsl#GRL2#NvNoCp;|&)RT(0Qaqg5rC>n9{>OV N07*qoM6N<$f&c|MeG&iw literal 0 HcmV?d00001 diff --git a/assets/monster/orc_up_1.png b/assets/monster/orc_up_1.png new file mode 100644 index 0000000000000000000000000000000000000000..4ea857c67cf988bf541a38fefe98e97a83be70a6 GIT binary patch literal 312 zcmV-80muG{P)b}h&amGwrJ+KAS4_{(LHvp_zN(F_-2iN108;ZGmp4GRgTe^r4Riy*Aq&zB z3o!J+fCVlrEI=^=3q*|2M>hmLW?+VZ48R$6IHQ9B5hGv&ko^oY8CyC483wZzme4?9 zfnoqmL4~s+11~EgiG2PIN!cBH&x2DU$Wo~5z+nJ)0VtF~0Az#m#V06+yz(*urvaz| z7%35+d61n4Q-z$o(G9_xnUDex9>^duP}mS-0JgwK&fX}N0s!|wdxw6(kd6QV002ov KPDHLkV1fY90CPG3 literal 0 HcmV?d00001 diff --git a/assets/monster/orc_up_2.png b/assets/monster/orc_up_2.png new file mode 100644 index 0000000000000000000000000000000000000000..c1518a772251f1b7fce5a232c14bad8bdc393f3c GIT binary patch literal 288 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 literal 0 HcmV?d00001 diff --git a/assets/monster/redslime_down_2.png b/assets/monster/redslime_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d34813a85b971c8a09202c3a1777e14f21cda053 GIT binary patch literal 6363 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 VR=dSb4+a)-lwnbd;<1Ud{|yx0AC~|C literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_attack_down_1.png b/assets/monster/skeletonlord_attack_down_1.png new file mode 100644 index 0000000000000000000000000000000000000000..16db36b06cdf715bb891ff3cd2e2f06cbaf086b8 GIT binary patch literal 538 zcmV+#0_FXQP)Px$)Ja4^RA_9ZL{coc^C-?W^v-cO4s}tRik~l6 zFB*%>q#<#ejEjC(N5Bsj1L3Mt2BbX`g`|m>i~#~bMCq-JbD@wM6kXK@fJD+UGkWK6 zY?@*A(crOZ&^uQ$lI2x9AQmSgFtcxex&dL$YBx2ocEuVd*}UQ$*wlc3me($I-%`A2 zqIA~^ES=f@RSeGf+JcnoH`A+1!ei55i1aY&z3XslTQD<-XmU0H01@%|a-Gfd@&3lK ziJGd#A`qX9VjxDucl(2H`}zJ76BFIqvdJO{q$2_1uq2@dRV`Q;%RzB^`gY_{{}bBM>0}FPBeAK0KhQ7?!!QiPFbu;m c4C5d23usv5eLkFNzyJUM07*qoM6N<$f)-EjVE_OC literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_attack_down_2.png b/assets/monster/skeletonlord_attack_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ce2f1ccd019eb66cee8d1a4520139267bb208d11 GIT binary patch literal 551 zcmV+?0@(eDP)Px$;Ymb6RA_eS3O2og>Jgas%OY0Y?5OH zk~2&f@tD!aiDqmQ3VL8{OJd&BXg=7$jp3B*X>6OC#k8yItBYP13$=(`a>~K3t_gXb zvXQsOJ<@PYBjQe@#JS6!y*58s03(croY?5Yy@hyQRRGRACL+wM$}B=9fQgwr6fwB~ zi6L$uMSyk3R@}4>L?Y1Ue0ZOd+!Jx>F4rcm2$q_CZHEp3t=~SPiJ$M!h*MjLh={rj zID7w`5k$oA9r?rKQ+EMCJML{@P&+1~sQgOu5U1k-fbR*72Z(o>D#db4k~3+aC{-QU zHx2iD52-OpemWkKEjI2bAq?3;!k9nt~p+5n5l zQUT~aWP&*IIR%|_*wr=WRmB;hssmO54*dm*ZKmcUK5I9W#wDRkj9-K{3!HSnhym;K0Nb5yU!IcnTt)|hDAUT007Uk*_b-ikiTXI;r|{%5l{r& p8k7GC$q`UcP*6}%P*5-m{s0vrg;GBo7oPwC002ovPDHLkV1nN+?@j;! literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_attack_left_1.png b/assets/monster/skeletonlord_attack_left_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a51ca284a9c0177e8c586de3d12c74efab3d29cd GIT binary patch literal 521 zcmV+k0`~ohP)Px$!%0LzRA_S-DLKP*QB21W z0w$=<@Fb*w4a)b8J^pjpLk7xS%Eyu_KLApBf3w0m&mlpVB?Cm{cJPm738b0ubnn0V zBO39}Ih>2N1>vhKi{2Ty06PYB&?c<1tT6!~bdy6-PTDp10bFYg!}i8CByAhVU7^=Jv z2@aqU|ML0)yfz^P zYX-RXC=eo^8u@@V13>lb5Opm+wIx_ff}kclbBqEOTLAF0Cr}IJaz0HGpH%UIm~~s+ zVheE49Sw9@3Kk8B&IX3g35Kv}0Ps5@TIV^3q6m){xfIqkOJQQMawv+$?geN%2OGL< ziV2pwfIb@QO?Gv67;Sys literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_attack_left_2.png b/assets/monster/skeletonlord_attack_left_2.png new file mode 100644 index 0000000000000000000000000000000000000000..a212b78baab564354b8a637656a32c7dcd0cb955 GIT binary patch literal 545 zcmV++0^a?JP)Px$+et)0RA_djKQhfp%jZAq0SPA$mWsiDMuPE!uD{ z1P_r5!5DT)a8v?Oifa{a8-y3^4CMeDUMG991BeLBjCB-s z24NjVR^Q=u0LtZGVk@+ZAeO+CcpU)S1UCk+0|1N*!a2)kTMTh7L~k)P*CI%zGYBrk zhhmvNkyaYK&jAuy2dG=)gIPF$QI185A>}@DA+U*KFf)h<@B5Eh=b!ISwT~7q9Kg2M z*LDk(haEY?41kYGQmX(}@r&gOi{%Ocu1aAdBIC9AaKN9_p89+|W>|{9->%i`#d1{zK^K=vkW8;b znhy1^A;p@CR`F#Q(6X&M^S1aBfYHcVcOf3|XB!*~Hxr>v0yOIIWEg4&WCZ00000NkvXXu0mjfOZ?Px$v`IukRA_8iHlnhToff!q!@t^S+LOgt6x-ETMNKCRaHI-Ra|J|B;!Gg_@tD207lfk;*aM6WzN1$fdIrGTjn z;@`~ya13{!7oG7$9&$RnVZ+Q;`k`>TSF#+i24-t3klq5#a0uOKW}#s>~YqKr?0_hr?SyR^c` zCq@ChFDpDgJp-_b4n!oX@X5ihJ~O)sPiz7NB6EOQeIl|7FnPc{OJj5Ul_9R=r5$~J zl1gDBvKJ8C4a5-TfS>a>Uf5<4`euCEec3F3;4!=9u9vtq5md%8#K4(rgMVGL>R-hPu^k=L{W#Kk%ET+nJS11 wftT$Tt=6XU3mPiT2{Bpwno%^;e)qe=1v5%Zr`5z*n*aa+07*qoM6N<$g6+rJ4FCWD literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_attack_right_2.png b/assets/monster/skeletonlord_attack_right_2.png new file mode 100644 index 0000000000000000000000000000000000000000..01619ed2f3edba081ffde8ab93dac348737c2eb6 GIT binary patch literal 517 zcmV+g0{Z=lP)Px$zez+vRA_?Z;h$|gx&aZb;K0lP%dS!sY>1ed-LVh+3d;cCHF0$yS%K4{@xvN+`ber&L= zpcRn+sip@|p;;I6J;5=^`BQi5sFVu;ufsZN0@2r8i@;Zua? zIU)6i{|-qIbYGa6UH&&j#S}pj_;@;p%H63sx2|`t!abszq2uZ7P7o2EZ41ooMt`oe z2CEp?9DVQiZeBPjexEY^%yudVSOH{sj!&Px$-bqA3RA_*RdP&dA|Pb ze4fQXk_ktA_DRSD$8k@bhzPPQo1`<=MkzA@T5&Rn(cbqtqq3?8i--NrYAK%g{4EV) z_k56~!adoEFP1mm;^V_@*Vny=%=d<$FsIx<2$fY$WmVJN{gV~eemMEK|35gB5+;sZ zOWY^o`vlGE007#*J`wLLdRN#I?dhIhh9l0000Px$zez+vRA_SF}K+jPp5B`X~=MV&e%YnDt*c^gooNPV5_ z0Jdx}aCSg6(*05t$1(mt&gU}#B9TZW5{X2Qiypc7Wod{>0Ej3WVyXy4O8^8w044#r zRn@WpzxVsH0FOuj76(uf*Kkff_Pn70bS=x#K}nXe=MDid=BqUA9i(dl7lI4GGLL}> zNR zw-D|22P9dBTU8lzof~@n+dIL|fe_i0o$NoKjsQ#oI(_CMB41RZAIZF1u+JQ*?>sjA zKz9k0&%`z#3N`0>k*m(uviq%V=CoU5XHy5L^?P>pnb4&uW{<#_K`=z{6H$|BJ_EWG z1puJ=o+T1Pb$<3_v=5%i#9ac?`+i^vqQt3KeP%Il*8fj`n{OEf9xA$L00000NkvXX Hu0mjf$5Gz6 literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_down_1.png b/assets/monster/skeletonlord_down_1.png new file mode 100644 index 0000000000000000000000000000000000000000..16d2fec1f76621549a13da6d234608e01105cf79 GIT binary patch literal 551 zcmV+?0@(eDP)Px$;Ymb6R9J<@S21qGFbq5v{Xq-#84l!6_$6Hmbn2EbbPCX=lc&5Pb9Wo=GXf-U zV24-&Et8hyBCE~df5fAZ1<(%nEw4B+LJxf3i;D#+r|x*OI3MOzhTE`YK}vwcjiKoP~cX zLIS|AZyz(m_t)o)Gp7+TGh-ag%%K7<*}qhT_mSjJ&o5yBz&Jk%ASEE&fWLhYA_5Wl z3;9b+;XS>C&X+q?cbAi-HskLG`C&|yJqdM;)`vAQk4nY|+%gcoT zuyxtQ8Hvfyr=v;^C|ls86djRbTPgz{p41`-j8cQQ&?P?LZNTrzfZCktzMH%pyjX@3oD9uF4hrCty7U5ODXBzok pPI-<>_V+#jD+6~EU`2d00e}8;+}4Aj3+w;@002ovPDHLkV1m_k?{NSC literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_down_2.png b/assets/monster/skeletonlord_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..194a18ce87c931dda8fd7984eeacc1a5512771a2 GIT binary patch literal 528 zcmV+r0`L8aP)Px$%1J~)R9J<@SHW$=Fbq5u-5>!nMgn_@Owvz*zB)!<1^VeLug;JqWH@64NM>Lj zi3Ex!Ey;G!0|ZBsr8`nIsW|8$0L~cCL0eb#G8uE!d!OBK*S6InBne??DfQk{35@mS z0*FX%kdQy-5>h!}O{CYXZ{%XC6A_B}}q+KkC z2t=e7BP}xqGD*rIJ>Yh2Yu$*Pb54z9>4AV?v348*(gSMrauKX);{Z~NwLp{$C9Df6 zpTGZD;49E>M5E+9212~_-pBZ0B)DGAv1#N}p=LjpL8~(1Q~_hcs!(+)1wem?gC%0N zYfH#;R#tnV)C0kCjCep6t|FAWt;FTTKFg;chXw7Q)hL!!njAr?Cl(bjh2sWtG0xfv SIq>xW0000Px$bxA})R9J<@m(6X%Fbstsi*C>Y9m9sSL?-E_Ku;N?rvklnk}M&^86!Y41A9m) zFlsEBlA6AoVM_0#MEw!gi2+dZof8%Qn*zm5VtEcB+hFwG1d%moW>yfqMsoz*>m?G_Br@EC6)rGz(!dw*nL)tmc4m87hb_+bmGG3gTg;m!*>F5XuGf=VlW> z-gi3y=Us609?T3P!t2}is?qn?hY6w-7*k~CIPX#iV*d2}0suH24`zrWfF5Rj_@w3{ zD@3sdBPx$sYygZR9J<*m%(krFbqXMi*C>Y9m9dVL?-E_Ku;Z`rvkn72>%~E&;%5N>(MXsX^Eje2#_xtQ zb0_Xh1CcC3X7;<^q3?b3kxeMfJO;EIz*YJpNXu`vB};J$(E@-()^ZprY{M>NP39#4 z99Fl4a1SnPDXtlbk~3k<$In6SD#-1G$pDkJP6)T_MJ-d?u(~kP=@*)BrEQUEjaar l8LL)7sdH>tt8c#m@D2C(5A=|yoKye+002ovPDHLkV1mZD+7kc( literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_phase2_attack_down_1.png b/assets/monster/skeletonlord_phase2_attack_down_1.png new file mode 100644 index 0000000000000000000000000000000000000000..19b034284803598664829879228b81228e0987f2 GIT binary patch literal 569 zcmV-90>=G`P)Px$^GQTORA_mAS3!!Ak4RCfS5jOndWPoMUL~n)P;w zi<&9^zTGKNTl`WKd?^Y;)Gm{DLde96ql}J+Jpf=;mc|dCvsuu&{W}qXNX>@Rgv$WX z%^_)x4X#xc{I>hio@fJrBkA65H(aYqMMey+$`aSA3K{Y8n%ck?Cn7L&Z@QjlK!{nA zPc<-h#3>kSdc;03sR8vZ>)Q36QaorP^iCBR+OySC)b{w;1Ibmdrx%rktFlBF>8{gr z(_p>XfSEx=XzSWYN+RO-?XK6)@vvvxM9ithB4F=~V!%ek=ZmE(`}zJ76NYZ=vB@F` zxFY~`)8rBlnTXv72mt%ehI@V}?2*g&e6ds}gwR>ggPFn1ylzGXIcY#3H{fD#vG~00000NkvXX Hu0mjfqml-& literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_phase2_attack_down_2.png b/assets/monster/skeletonlord_phase2_attack_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..fe10ed115ffa8a087a8b193505091c04f46fc225 GIT binary patch literal 567 zcmV-70?7S|P)Px$@kvBMRA_2iR8agZl8VlEqYOeR9#`bSf4ROHMJU zwI;-QDvf+o6tpP{i_{&Hh`5p{`5BFR&G#0-_+71zzDsbOLOdx;0Dw{oM1)CMV%^N$ z4=I3&ncNkT0+9d{F)2ByfYcqQ;-YoH69FK2AClY>aqMoc4O|{lYWAreDggBS^5#u^ zeZG5~(n3T;)MmiJ`-hAmB7SelZ*K3}3jmsNYXiO7F%h-(fMJrm*zdLgY)?o$K)g%0 z2Gm+xVloDMH*0lS*+Y=o$|I0G{UaXxm8w%nV=wskTL* zW})UIw2>^pBLA4p+KJcYvbTs>0cMa{&wUI>*8#)z?wR-6eXM}NT%7c6m<4130Prv# zpHqhz?I&4ZL;v>(vVbh$(ir?tNQ{7tjEszojEs!4;15Px$)=5M`RA_uUk~&`jr1bu5hf$tG0xwGfh{$>8uU9J| zO@zDO{?#9$CchmF*bWAfF%Tb)$I&}27hp$#BWMwZ<8dtlKo};AqM-C15s9wK-j++Q z3Zk*eGTCHV)K+>Q-P0Zc0?7S;F-nDVjxY>9mP-JhmAw)E^=ob4H6wsdfG5ayg4rC< z7t9EtlU$!LBLG|`!g{qzE{3c?O7Ej=--OEkHwURIp_3wXC2wXHc%RP^5uEEcvdstp zaV-#@UtZs$KC|gWxYfl_>3v9W05$oC$0q;|`yBwY=>#t1W=R037Dd|gfqX!!2&Se% zAj$zv&+E2JVNQVNodCsCJLi0^7 zg*ED>FfmzK6vfT%1!x={Y-n2-5iAV>eKdA5*;T{gViBweAf@-`_5?-cfh1U{1Ag+R eYq2-`oWv(x&^-G!FZa9v0000Px$-$_J4RA_JeTCaOy-Me{4sw!%vDt;u!ore|~-zz=Okv9zaW|p{VM$88Rxe?9Xc=;b$@SOR@wbpUh|TpO$o0MIT7`y?4{G1Ob~bBVh_ zFd^O*%hZX~(qMfK5Qqbjyfxk!g#!rJu?R6tdXAKHEW!{(1jZO%-`)$IzrQ}@KAkY( z0MflamrLMU^@$lK0JMoB$VXvW{M4Ue>dyc`JX3OlDF;x6HFNe!fnb0${Wba54ZD zDC=-82W+AUz_lc9`oCao&?buH)1Q$Op>qz9U^Ru)=qS&Aq3u?OE4jc02as6zRc)nX na_1n}?x89{7?lo`?h(P=gN8^00000NkvXXu0mjf?7Z!k literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_phase2_attack_right_1.png b/assets/monster/skeletonlord_phase2_attack_right_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b9633410dc36b70a5a858e588c446d1a314bbedc GIT binary patch literal 506 zcmVPx$v`IukRA_8iHlnhToff!q!@t^S+LOgt6x-ETMNKCRaHI-Ra|J|B;!Gg_@tD207lfk;*aM6WzN1$fdIrGTjn z;@`~ya13{!7oG7$9&$RnVZ+Q;`k`>TSF#+i24-t3klq5#a0uOKW}#s>~YqKr?0_hr?SyR^c` zCq@ChFDpDgJp-_b4n!oX@X5ihJ~O)sPiz7NB6EOQeIl|7FnPc{OJj5Ul_9R=r5$~J zl1gDBvKJ8C4a5-TfS>a>Uf5<4`euCEec3F3;4!=9u9vtq5md%8#K4(rgMVGL>R-hPu^k=L{W#Kk%ET+nJS11 wftT$Tt=6XU3mPiT2{Bpwno%^;e)qe=1v5%Zr`5z*n*aa+07*qoM6N<$g6+rJ4FCWD literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_phase2_attack_right_2.png b/assets/monster/skeletonlord_phase2_attack_right_2.png new file mode 100644 index 0000000000000000000000000000000000000000..60b5c6ed9303ba7a46a141fab824915bfd3ed393 GIT binary patch literal 538 zcmV+#0_FXQP)Px$)Ja4^RA_J=4z*N27J*a1EfFp96+ zE!NaQdF2dt?SEsq=__-9SXd5l(R2zCiFQJ?Eie_LJHT~HNW#YfYMo`H43lm=7w0i( z(1@fFMIV77a5`a1#)nAHeMZVn|0SFxXumKKfsw}=5r&GS{{Zdw2Lgbm-0iw&$5pOH zY!9zuXtzJu3#Am?ivozqw(7ky8jNFXarC*_*!#@J!dnTRPe;&*uu4;_^s1p>{ufZ& z9`~ZCDaA{kch3K|T=tgQp~`HQ6gEaWuI-B{r8>XT`*zD&K1hOPDM5`0m9XwYx!T9| z+Sxa<1tDkz{1FjHq;~{V6QN-s5=7!v3!G0!0Qhx+NpzCS-Warwq^Zc?kXY>xfzIWr zVHKY#ieP3=Xi4BXZ3DXGc~jfZCJLIy*ZQX91g~PqX!!ECWvD5HTz%5;Ik=lfHRo^{ cEmk0W1Bl*jN+r=r=Kufz07*qoM6N<$f`*gv0{{R3 literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_phase2_attack_up_1.png b/assets/monster/skeletonlord_phase2_attack_up_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1d13e872da0fece86ef2b097b6ef0b1c51b408c7 GIT binary patch literal 548 zcmV+<0^9wGP)Px$-bqA3RA_*RdP&dA|Pb ze4fQXk_ktA_DRSD$8k@bhzPPQo1`<=MkzA@T5&Rn(cbqtqq3?8i--NrYAK%g{4EV) z_k56~!adoEFP1mm;^V_@*Vny=%=d<$FsIx<2$fY$WmVJN{gV~eemMEK|35gB5+;sZ zOWY^o`vlGE007#*J`wLLdRN#I?dhIhh9l0000Px$zez+vRA_SF}K+jPp5B`X~=MV&e%YnDt*c^gooNPV5_ z0Jdx}aCSg6(*05t$1(mt&gU}#B9TZW5{X2Qiypc7Wod{>0Ej3WVyXy4O8^8w044#r zRn@WpzxVsH0FOuj76(uf*Kkff_Pn70bS=x#K}nXe=MDid=BqUA9i(dl7lI4GGLL}> zNR zw-D|22P9dBTU8lzof~@n+dIL|fe_i0o$NoKjsQ#oI(_CMB41RZAIZF1u+JQ*?>sjA zKz9k0&%`z#3N`0>k*m(uviq%V=CoU5XHy5L^?P>pnb4&uW{<#_K`=z{6H$|BJ_EWG z1puJ=o+T1Pb$<3_v=5%i#9ac?`+i^vqQt3KeP%Il*8fj`n{OEf9xA$L00000NkvXX Hu0mjf$5Gz6 literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_phase2_down_1.png b/assets/monster/skeletonlord_phase2_down_1.png new file mode 100644 index 0000000000000000000000000000000000000000..5978308051ad2a83669b376a61399409ce6759ee GIT binary patch literal 569 zcmV-90>=G`P)Px$^GQTOR9J<@S21qGFbq5v9h|uZy7dbV>`(Y5T?%ySmM?S)(4~{7ydiUejtZP7 zq+5UleF8hg5+s?jB&S9X5Dbel??{=HO~?Z$tf3r-p~WoNxKk?Xa9P*cA|!G@Qtp)E z6m&{S&!>|M4jl4BQShNC98!NSN5qXkQC3xO@%Lge>MUkY5|DzQudmVj9NbPJ)>$GV zFf+=k!oIgX&MCm&9wHiun1X?T{ce}^U`k0&5|E0i5yucJp?~cI0}%kk>$T)D0ggR% zwbu$`0I}Z-{hY1!u?PtOKRv$=3?J`r1J0C2#LSF-Ff*G9xMcrQ5qgbHes}+11_1Q) zP5?0h<^51Rlv z03bILIloY$x(^Xv^?N3f&+?Y1sAPTa0|;ecHUXiC|4hIyRKw!916qlf00000NkvXX Hu0mjfs|Wa| literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_phase2_down_2.png b/assets/monster/skeletonlord_phase2_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..f3cb9836e3251e4253579435a545968268f1ebb2 GIT binary patch literal 548 zcmV+<0^9wGP)Px$-bqA3R9J<@S37P3F%W%@QY&ABY9H+LoM#Z|L1{@1sV|$`9gljlJ^N{^~b(r z$YTOX6kU&%*th_FL3r_SOAL0~EtXXUB7$=cwfFjn($n*6u-NCvTX4(D3cWu*HkFt4 z8o=LiTa;yU_Jz8j4FH&YI-56br{jS|w0MInS1!($$~M6E0C2vFE%GiA!4_x|A(AX> znOH(w&h_bR-iTmCFC*(=K|~;;APd&so0*ZxG^vF4fLm5o>_z09b7mxK4=~tbYdaX) z17`F}5u#Y_0NNH?fv6{H#2%!w|NP?$r@(pclmbwzeSE6IT^5gyR>;a@4%pA{k5o00000WbcEP)Px$ib+I4R9J<@moaVwArM9XL@CyFBIOufEtl{~(pXBBW2B0dCMWR)T(ZJPa5_u2 za)e1?Ls-1KFhHE&p&j^dU|@leCI&!3drlPjE()|}HkOUnvmIKcL=dy)%*-AHr^smS z_o)Wp4E9aK`=%K+mO|W>(0wfygZ8rPu^0ARF6s}z_SM1<${>!8!;$D0Tu7U)uBX1DIP4y^gZ z;}ZbjbUcV5q5%Fh6a9vV=2lXOXbsq`FXrSA8fHEQR0=??Qoi|>thoo1;#5&*WvM?{D{Sf}*w+wcdxj5l+!!fiwV0000Px$!bwCyR9J<*moaX`FbqXMiw@4*0zF0o`w}@xmja!7j7|l*bn=ulLx0nt6iyf_y^yA)`=tGO9Q9)c4?~P&j z*>a8ro+|@jW*Nu{d{-5JS5;703voAw@Mkvj?&o!lZP%${6aoBhHYJa#?P3ZbrlB{+ z8}iaRxR3og9L^)p(dKonO($01X27pdMqYxT#EkF`ND-I-9 zK?GuSn;iqdayb$ao?qTPhp*4~&>J*p*PQrcxpX(L>$SV?jj_WF08aej@d*HM*zYVv zEPfII5M7L!vF$p{>l#D^X7)0-;?^_}(IRAK*Zmev1EOOr`z^(-Xb7knz*hQ6kWL@3 zB};J$F$DmLtmQD090A~*u_p5z03KGigs>MjYbmZ7iJU!Q$j8mW*j13~gwX)KF;)nN z{Z1{O?G&)dw&kV!f#7O@SShy#@XiLQbHXhE0Gu0=Xw8$oq+;eaqXWT74kK9rSHyVL zwrU9N6v$VxcV1kztuoYQkfgXRw!yAvn6YXVPx$j7da6R9J<@mdkC!Fbsytq6cT17}gS*B$og^WsIB(lw<6A_5V z2|eOgqy6E?IbP;`7|HkVyB(#kw5aw9Xn#0z0}-K%5xyDtU+?*SyIy z0!PG;-xQrt8#?TSm-8vV-_lyD!c=PigP)Px$#7RU!R9J5631W_UxJg+AW^{qsAy6lrAd{FGvop(z1kch zbVwkMFcgW6?RdR2&N7l4|GjT!?U^+}XFM`anfYm7aY0eMx3)N;H74ED0c&&y#aUvA zqr|-Bzu;)J#sj4~5+r zk?y>y03=Y%96{{5uDE`(Pf%-<1B`iG13;}YqK&oUQUDQz8_Q(FNdSrvwc>#O7Eo(U zDXpq=z6Kx?c7>_N>(HbN`TpSv0I*sv&|8~JJSTg--Q9WU$IT`?M-l-qesz5VzX0Qmm;^umP*oUE@NOw5Ndt@#yuowbM^1mHizzh}Y-V9E$+Z^4Q9`+8lYTMdxC z+ee7A9v>1LdSr0W)FzEU>0L-beH7F$qa#RGs0Kp(KQOXBH!j-y7bFH1fAePx$&PhZ;R9J=WS37RQFbpM&-XH;Tj0E;2a*`}rvt-HvlBqzJOqqHc3HC7xv}a(4 zhyrDkveY_5ff6umQ54^^__2&oFH~TIrOt{C8N73D(rDARns3tZY6wK|b<>zez4sOg z-nj(xWlnH8AMBHGX}VGZMc}n|)dZd){{;RP0WPt*>}m*LsOw4RnLh9<0!1Wh!2tkX z4ZYUyF_56nIg>;UxJ7_=`@=|iyIx{1=bbPF!Dzdh3`3BBFP5wL9P~s)Kt$YDlY5wp zHcCU;*+Alg0A-`b; zTxR?bAe-e}$`eFK&PJsqvs;wbWSMDmRu!1rxoO)`0?N4wsXc|OlI(~we!5s7^nSlj zgaD3R3FK-v%LTZ0Dy3R%1-1m-Kw1Vz{Q7VHYxr!<364V!H=Y*E-kQGYWf>s Woq#&pO9nFl0000Px$=Sf6CR9J=OS37RQFbpM&-XH;T3jUL} zw^|me+4F_BTk)Fhw@ym9Wt&yM% zzdk?A|EjLR&v+t&Nh$CzCX-S?L}2HM787cza)KmWELYHWJ*=C?Id{$t|GZhe-0+Q1 zCu6V{jR2Fd!99QgB%(K>{UmQhVhOVBcU#_LoJduWAQ6Tb zJ-b8BW;H)tDc)r?=jwiz&|w%Pf>#F@*KY~V1hPq#+z03|3;+P2eS;nv>t(W&v*$n00000NkvXXu0mjfP$uQx literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_right_1.png b/assets/monster/skeletonlord_right_1.png new file mode 100644 index 0000000000000000000000000000000000000000..0c5d2ed80dec45f9b01f998902890d38e8611568 GIT binary patch literal 448 zcmV;x0YCnUP)Px$dPzh~Yh)oMr|~ zS)_UVUlQ9jg3YKfj=@|^O^huliqGC>Ck)Q%JsH-bkrk&JQ^H}tk9Z8^EfVdQ0KP0F zk7YpDqrxqhoP q6{WNHfQY&#Xr^hox|CScGdux$=_nyK?VXhX0000b+k8 literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_right_2.png b/assets/monster/skeletonlord_right_2.png new file mode 100644 index 0000000000000000000000000000000000000000..67b981181d81a07b279c8d06926d856acb98bb80 GIT binary patch literal 506 zcmVPx$v`IukR9J#~@l?VoySYL*o2|Cu40{Pj$uW?Y zGYkc>WjnSrVm5HU~P3mXH2@M1J>vi#aUvAqr`)? zY2P~W9LOY)gUCTecB3H~`yP+GUDQXkF1jj!nk}7=lHF=1r{0IcZcG~y6@UbanInj? z@2l%K`vk4FIlz*~EdbORBidLiE(H)lxUoz&+ytNs(JBt;Zvl12)Y7UtD`@~CVR!#q zybeveke{Ak0RX4t0fV)<#53FLbHDe{FPBSpjwAwJ{OvSpZphUxqizk}o!M2FCw0|z76tNLRqss*Rx0RZrG{r19@2+Y5;)fQ=2pb wwRa%_?NLy_j3$t*Pz!|ke_&yKZd|nYFOUopj?hC0QUCw|07*qoM6N<$g2emZI{*Lx literal 0 HcmV?d00001 diff --git a/assets/monster/skeletonlord_up_1.png b/assets/monster/skeletonlord_up_1.png new file mode 100644 index 0000000000000000000000000000000000000000..7edf95850cb8642e509d5bbd37ea7015e234f3b4 GIT binary patch literal 532 zcmV+v0_**WP)Px$&PhZ;R9J=WS37RQFbpM&-XH;Tj0E;2a*`}rvt-HvlBqzJOqqHc3HC7xv}a(4 zhyrDkveY_5ff6umQ54^^__2&oFH~TIrOt{C8N73D(rDARns3tZY6wK|b<>zez4sOg z-nj(xWlnH8AMBHGX}VGZMc}n|)dZd){{;RP0WPt*>}m*LsOw4RnLh9<0!1Wh!2tkX z4ZYUyF_56nIg>;UxJ7_=`@=|iyIx{1=bbPF!Dzdh3`3BBFP5wL9P~s)Kt$YDlY5wp zHcCU;*+Alg0A-`b; zTxR?bAe-e}$`eFK&PJsqvs;wbWSMDmRu!1rxoO)`0?N4wsXc|OlI(~we!5s7^nSlj zgaD3R3FK-v%LTZ0Dy3R%1-1m-Kw1Vz{Q7VHYxr!<364V!H=Y*E-kQGYWf>s Woq#&pO9nFl0000Px$=Sf6CR9J=OS37RQFbpM&-XH;T3jUL} zw^|me+4F_BTk)Fhw@ym9Wt&yM% zzdk?A|EjLR&v+t&Nh$CzCX-S?L}2HM787cza)KmWELYHWJ*=C?Id{$t|GZhe-0+Q1 zCu6V{jR2Fd!99QgB%(K>{UmQhVhOVBcU#_LoJduWAQ6Tb zJ-b8BW;H)tDc)r?=jwiz&|w%Pf>#F@*KY~V1hPq#+z03|3;+P2eS;nv>t(W&v*$n00000NkvXXu0mjfP$uQx literal 0 HcmV?d00001 diff --git a/src/de/miaurizius/jgame2d/core/GamePanel.java b/src/de/miaurizius/jgame2d/core/GamePanel.java index 4da5d99..a136289 100644 --- a/src/de/miaurizius/jgame2d/core/GamePanel.java +++ b/src/de/miaurizius/jgame2d/core/GamePanel.java @@ -48,6 +48,7 @@ public class GamePanel extends JPanel implements Runnable { public Player player = new Player(this, keyH); public Entity[] obj = new Entity[10]; public Entity[] npc = new Entity[10]; + public Entity[] monster = new Entity[20]; ArrayList entityList = new ArrayList<>(); // GAME STATE @@ -64,7 +65,7 @@ public class GamePanel extends JPanel implements Runnable { public void setupGame() { assetSetter.setObject(); assetSetter.setNPC(); - //playMusic(0); //Play main theme + assetSetter.setMonster(); gameState = GameState.TITLE; } @@ -107,6 +108,7 @@ public class GamePanel extends JPanel implements Runnable { case PLAY: player.update(); for(Entity entity : npc) if(entity != null) entity.update(); + for(Entity entity : monster) if(entity != null) entity.update(); break; case PAUSE: break; @@ -134,6 +136,7 @@ public class GamePanel extends JPanel implements Runnable { entityList.add(player); for(Entity entity : npc) if(entity != null) entityList.add(entity); for(Entity entity : obj) if(entity != null) entityList.add(entity); + for(Entity entity : monster) if(entity != null) entityList.add(entity); entityList.sort(Comparator.comparingInt(o -> o.worldY)); for(Entity entity : entityList) entity.draw(graphics2d); entityList.clear(); diff --git a/src/de/miaurizius/jgame2d/core/handlers/AssetSetter.java b/src/de/miaurizius/jgame2d/core/handlers/AssetSetter.java index 74a6139..e3aba58 100644 --- a/src/de/miaurizius/jgame2d/core/handlers/AssetSetter.java +++ b/src/de/miaurizius/jgame2d/core/handlers/AssetSetter.java @@ -2,6 +2,7 @@ package de.miaurizius.jgame2d.core.handlers; import de.miaurizius.jgame2d.core.GamePanel; import de.miaurizius.jgame2d.entity.OldManNPC; +import de.miaurizius.jgame2d.entity.monster.GreenSlimeMON; import de.miaurizius.jgame2d.entity.objects.DoorObj; public class AssetSetter { @@ -14,14 +15,6 @@ public class AssetSetter { public void setObject() { - panel.obj[0] = new DoorObj(panel); - panel.obj[0].worldX = panel.tileSize*21; - panel.obj[0].worldY = panel.tileSize*22; - - panel.obj[1] = new DoorObj(panel); - panel.obj[1].worldX = panel.tileSize*23; - panel.obj[1].worldY = panel.tileSize*25; - } public void setNPC() { @@ -30,4 +23,14 @@ public class AssetSetter { panel.npc[0].worldY = panel.tileSize*21; } + public void setMonster() { + panel.monster[0] = new GreenSlimeMON(panel); + panel.monster[0].worldX = panel.tileSize*23; + panel.monster[0].worldY = panel.tileSize*36; + + panel.monster[1] = new GreenSlimeMON(panel); + panel.monster[1].worldX = panel.tileSize*23; + panel.monster[1].worldY = panel.tileSize*37; + } + } diff --git a/src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java b/src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java new file mode 100644 index 0000000..5c90e55 --- /dev/null +++ b/src/de/miaurizius/jgame2d/entity/monster/GreenSlimeMON.java @@ -0,0 +1,51 @@ +package de.miaurizius.jgame2d.entity.monster; + +import de.miaurizius.jgame2d.core.GamePanel; +import de.miaurizius.jgame2d.core.enums.Direction; +import de.miaurizius.jgame2d.entity.Entity; + +import java.util.Random; + +public class GreenSlimeMON extends Entity { + + public GreenSlimeMON(GamePanel panel) { + super(panel); + name = "green-slime"; + speed = 1; + maxLife = 4; + life = maxLife; + + solidArea.x = 3; + solidArea.y = 18; + solidArea.width = 42; + solidArea.height = 30; + solidAreaDefaultX = solidArea.x; + solidAreaDefaultY = solidArea.y; + + getImage(); + } + + public void getImage() { + up1 = initEntitySprites("monster/greenslime_down_1"); + up2 = initEntitySprites("monster/greenslime_down_2"); + down1 = initEntitySprites("monster/greenslime_down_1"); + down2 = initEntitySprites("monster/greenslime_down_2"); + left1 = initEntitySprites("monster/greenslime_down_1"); + left2 = initEntitySprites("monster/greenslime_down_2"); + right1 = initEntitySprites("monster/greenslime_down_1"); + right2 = initEntitySprites("monster/greenslime_down_2"); + } + + public void setAction() { + actionLock++; + if(actionLock != 120) return; //lock action for x frames + Random rand = new Random(); + int i = rand.nextInt(100)+1; //Generate number between 1 and 100 + if(i <= 25) direction = Direction.UP; + if(i > 25 && i <= 50) direction = Direction.DOWN; + if(i > 50 && i <= 75) direction = Direction.LEFT; + if(i > 75) direction = Direction.RIGHT; + actionLock = 0; + } + +} diff --git a/src/de/miaurizius/jgame2d/entity/objects/DoorObj.java b/src/de/miaurizius/jgame2d/entity/objects/DoorObj.java index c13de80..e9abdae 100644 --- a/src/de/miaurizius/jgame2d/entity/objects/DoorObj.java +++ b/src/de/miaurizius/jgame2d/entity/objects/DoorObj.java @@ -10,6 +10,13 @@ public class DoorObj extends Entity { name = "door"; down1 = initEntitySprites("objects/door"); collision = true; + + solidArea.x = 0; + solidArea.y = 16; + solidArea.width = 48; + solidArea.height = 32; + solidAreaDefaultX = solidArea.x; + solidAreaDefaultY = solidArea.y; } }