From d75afbc0911dd49c622e233bc0c70361cdd4d5d1 Mon Sep 17 00:00:00 2001 From: Nathan Stocks Date: Wed, 15 Jun 2022 13:50:54 -0600 Subject: [PATCH 1/4] add some invaders assets --- assets/sprite/space/enemy_black.collider | 10 ++++++++++ assets/sprite/space/enemy_black.png | Bin 0 -> 3019 bytes assets/sprite/space/enemy_blue.collider | 12 ++++++++++++ assets/sprite/space/enemy_blue.png | Bin 0 -> 3059 bytes assets/sprite/space/enemy_green.collider | 12 ++++++++++++ assets/sprite/space/enemy_green.png | Bin 0 -> 3609 bytes assets/sprite/space/enemy_orange.collider | 10 ++++++++++ assets/sprite/space/enemy_orange.png | Bin 0 -> 2279 bytes assets/sprite/space/explosion.collider | 10 ++++++++++ assets/sprite/space/explosion.png | Bin 0 -> 18320 bytes assets/sprite/space/laser_blue.collider | 8 ++++++++ assets/sprite/space/laser_blue.png | Bin 0 -> 744 bytes assets/sprite/space/laser_red.collider | 8 ++++++++ assets/sprite/space/laser_red.png | Bin 0 -> 735 bytes assets/sprite/space/ship_blue.collider | 10 ++++++++++ assets/sprite/space/ship_blue.png | Bin 0 -> 2834 bytes assets/sprite/space/ship_red.collider | 10 ++++++++++ assets/sprite/space/ship_red.png | Bin 0 -> 2852 bytes assets/sprite/space/ufo.collider | 18 ++++++++++++++++++ assets/sprite/space/ufo.png | Bin 0 -> 3049 bytes 20 files changed, 108 insertions(+) create mode 100644 assets/sprite/space/enemy_black.collider create mode 100644 assets/sprite/space/enemy_black.png create mode 100644 assets/sprite/space/enemy_blue.collider create mode 100644 assets/sprite/space/enemy_blue.png create mode 100644 assets/sprite/space/enemy_green.collider create mode 100644 assets/sprite/space/enemy_green.png create mode 100644 assets/sprite/space/enemy_orange.collider create mode 100644 assets/sprite/space/enemy_orange.png create mode 100644 assets/sprite/space/explosion.collider create mode 100644 assets/sprite/space/explosion.png create mode 100644 assets/sprite/space/laser_blue.collider create mode 100644 assets/sprite/space/laser_blue.png create mode 100644 assets/sprite/space/laser_red.collider create mode 100644 assets/sprite/space/laser_red.png create mode 100644 assets/sprite/space/ship_blue.collider create mode 100644 assets/sprite/space/ship_blue.png create mode 100644 assets/sprite/space/ship_red.collider create mode 100644 assets/sprite/space/ship_red.png create mode 100644 assets/sprite/space/ufo.collider create mode 100644 assets/sprite/space/ufo.png diff --git a/assets/sprite/space/enemy_black.collider b/assets/sprite/space/enemy_black.collider new file mode 100644 index 0000000..4209f42 --- /dev/null +++ b/assets/sprite/space/enemy_black.collider @@ -0,0 +1,10 @@ +Poly([ + (-46.5, 17), + (-29, 42), + (29, 42), + (46.5, 17), + (46.5, 14.5), + (25, -41.5), + (-25, -41.5), + (-46.5, 14.5), +]) diff --git a/assets/sprite/space/enemy_black.png b/assets/sprite/space/enemy_black.png new file mode 100644 index 0000000000000000000000000000000000000000..bc2fa4c1c92db0c8583b87ae67afa8897054f766 GIT binary patch literal 3019 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 I1+TdO0P5S~h5!Hn literal 0 HcmV?d00001 diff --git a/assets/sprite/space/enemy_blue.collider b/assets/sprite/space/enemy_blue.collider new file mode 100644 index 0000000..040bc80 --- /dev/null +++ b/assets/sprite/space/enemy_blue.collider @@ -0,0 +1,12 @@ +Poly([ + (-52, 14), + (-50, 16.0), + (-18, 32.5), + (0, 41.5), + (50, 16), + (52, 14), + (52, 7.5), + (24, -42), + (-24, -42), + (-52, 7.5), +]) diff --git a/assets/sprite/space/enemy_blue.png b/assets/sprite/space/enemy_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..bf3bd0c9fa347fa5d0ac09b42d1496117b1960e8 GIT binary patch literal 3059 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 B-P`~G literal 0 HcmV?d00001 diff --git a/assets/sprite/space/enemy_green.collider b/assets/sprite/space/enemy_green.collider new file mode 100644 index 0000000..6a0bf07 --- /dev/null +++ b/assets/sprite/space/enemy_green.collider @@ -0,0 +1,12 @@ +Poly([ + (-51, 3.5), + (-25.5, 35.5), + (-8.5, 42), + (8.5, 42), + (25.5, 35.5), + (51.5, 2.5), + (51.5, 0.5), + (37.5, -42), + (-38, -42), + (-51, 0), +]) diff --git a/assets/sprite/space/enemy_green.png b/assets/sprite/space/enemy_green.png new file mode 100644 index 0000000000000000000000000000000000000000..74e2bca68229314e2a6b074850c0f309ac547cc1 GIT binary patch literal 3609 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 fP)Z)9b1s0M%T00000NkvXXu0mjf`V7Zs literal 0 HcmV?d00001 diff --git a/assets/sprite/space/enemy_orange.collider b/assets/sprite/space/enemy_orange.collider new file mode 100644 index 0000000..6cd17d4 --- /dev/null +++ b/assets/sprite/space/enemy_orange.collider @@ -0,0 +1,10 @@ +Poly([ + (-41, 29), + (-19, 42), + (19, 42), + (41, 29), + (41, -20), + (11, -42), + (-11, -42), + (-41, -20), +]) diff --git a/assets/sprite/space/enemy_orange.png b/assets/sprite/space/enemy_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..a3216d4bf9419479ebe3881b92ef3f0944009781 GIT binary patch literal 2279 zcmVk{F!vjpVN6TRnByDbfn4|(Yg-5H{&-I5?P*$$aycY5TxPM9N}8jAGv8^QTxY5s7*9M_C@!tq&`|D6)YyH#di#NMHn3 zVAicSW%-lqo%t~uRQRG=w7&C)Tt`17aDY2?>Qv~71V&&5X1BNyy9x)9Y0uf6h(z}m z^P!WK9s1e^*xA_`S|WkXPD2(}-MGMk>{Zty^54IEmHAL*KbNeVO5nA%p(PU7fDu@| z#0D6fSF=PSp){vKDP1Db zrjt)#avNl_LS*%}#jNU$99HrA{Zcz^{Z_qmNvc;m8EQGdiA0-jet``bPdmhc7!j*6 zBH`rN<_8=tzBPyavTF%Dvu~@^sK=Tl5h>VDg zh>VDgh>VDgh}0zV{I)3&PIlp~#i1wi*8=xAY6}9MBIwtRJ=GA8j;FBz(;2@&{jE=yR5- z?~&Ag)u%h=CXw{{49lQyYdV>HAxGP^)T;V`J1dFAC;f^8@25!Y>FF`P)BqnuCU#SZ z%L=oONCa^F;Ag32S{)MoTC;&KT6P5np3GTAB({R^Bzjp4^K0=7K8Z{$ztZ-Uz=^EX zAo8qLqX96j+hD=T>x!bEtBCMTi(bG4Y{2LiN2N(3F-OIG+sV!qKbs;k-Suq~%dxbc z4Q%m}b*^#9z8Pd~iU<;^{J41WV(8Yjfr;<|YiQ@%v}GmJjZ`LgT2QU&Wy?y|iKPGS zuy3LwoDq=`kr9y*kr9#el*nW<=}IK-iHLNuiHQkUB5_Ydq=TuBqo|H+L_|vL>eZ`k za&l6eNZgBOA|eGF9Uavskw1hP5y_eAfRv8m*@(z#8y_D}n@Btx5oy`T$Vl2GlA(=x zOXR90FBq{oK_q=f!?E135(#Ws{fwp~HKSU$*7-92+{#TXFLwi5{qTz!lZQ6Y7TVPP zQVy(M<0Hu%&u0<;`8_d1A;8UW^g{Qz@!Okrv*#b*Y}?uu8`;y#UiM5Np24%!4%*Z` zUJR_dae)JHk@lfZI@sw&_`}O_n%q~|>PKEu_de@4+=F}Z z44y?BXv>e|#WDdA)!FSCMCzW`c9Z53H%XP3mwOsX%a5I5McY64zn4Dt8hd8h`V@iq zH~vPy<6b=D$%lnWciSIHfoY%D_NpMz{%wKLO9+1^oecwx9Q`>DuEDfO$#@*DVfR&&MvD;B>uRuPAO#C zsN``vUW{18^VkZN6@8T|mHwG5e?qE2);np?!SUXpi3A4KAOq|&xdoZ-PujX^GDW`O z;bEz8h^RKemqI}ksVaGZStbC27>y|TVPqFIB1LU9SrJd7N`5G>WV#`M7fX^A*D`Ii zX>G|o$93rm#@kKn9Lb`h+{WSRG zOCDKqjr)W=7|*I8rznNUE1L3C%$n~?d?|%8DS3cFoZ?9oO}hh?h_wI|@~=Cuv1`BT z*RQ8OTlpdPTBjiDpGlij*&F0G`>s7G>vH)j|Nce(J_?AuULM@{Wv2?y% zqUq+qz(88_?@Wy5)$lD&>ws}q2)m0Kl$csoR#w`9wYIhzClNmE0^IV+PwQN@AH%AW z&#R(R;>Uh&(?rsqarjJ2jWmoG&5kH%nVx^syqa=y*7e1+Q7%5XEp^wX?1yMv17KkT3Kbo0>8ZvX%QEp$a#bW?9;ba!ELWdLG% zE@EtNZ)9Y7E@N_eaCC1jX>DO=WiC)oM=~@;Zewp`Wpbznf9?PP002ovPDHLkV1m&; BU9tcG literal 0 HcmV?d00001 diff --git a/assets/sprite/space/explosion.collider b/assets/sprite/space/explosion.collider new file mode 100644 index 0000000..3fe451e --- /dev/null +++ b/assets/sprite/space/explosion.collider @@ -0,0 +1,10 @@ +Poly([ + (-27, 26.5), + (0, 31.5), + (27, 26.5), + (32, 0), + (27, -26.5), + (0, -31.5), + (-27, -26.5), + (-32, 0), +]) diff --git a/assets/sprite/space/explosion.png b/assets/sprite/space/explosion.png new file mode 100644 index 0000000000000000000000000000000000000000..c3dce2b867a4bf737c483a1af14a63070489202d GIT binary patch literal 18320 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 literal 0 HcmV?d00001 diff --git a/assets/sprite/space/laser_blue.collider b/assets/sprite/space/laser_blue.collider new file mode 100644 index 0000000..6f2d85c --- /dev/null +++ b/assets/sprite/space/laser_blue.collider @@ -0,0 +1,8 @@ +Poly([ + (-1.5, -27), + (-4.5, 25), + (-2.5, 27), + (2.5, 27), + (4.5, 25), + (1.5, -27), +]) diff --git a/assets/sprite/space/laser_blue.png b/assets/sprite/space/laser_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..b76aaf7a042d56165a0d3cbadd2ce85216838081 GIT binary patch literal 744 zcmVP)GD7{~FaQA^V4-p+a6a;lBi0I%Uq9}@r@K6vKkr2_rLqv!N z1J|A16e|l2EsZTqwlLAKH22T^-<_F#dSC2E55c_fVd49}?ECW0EK8(DL%O&#m9=_O z*~-{IR*&v_o_6&Yx3*>Nf{}B=|LLyhDP>w$4b$?H=y__*S&ONhRn~6hJ$JeohL>ht z2TjkD+J6<6oG1$8I+ubtmYv#6XBqsc&LBIf!!3Xv)){112QSYk{dI~uC^<`h6N{PkX?V%C=~3NL3V1*S{azD#0;{lgWJy` zUyc}L*HoB++GRUqU%Vii?sxin;t)_DUo-NiG zWY<^F1y8=$7-XmBjCB_J7HSN#Q*+ij4UfOo7-T0SPDe5{ aMQ&qnWMy)w27m4V00000D5BJyC%g?&H zexk`bMJ;O|O8NYslX97V6^kdjlQW%%^6@c)?lP2x-=z|R?lQCk&S@BQCp!?>f}=u# zL3g>k4LID}W6+)AmbD6{T#i9^a&~qZeq^%@x|1CYrr;oxVbEPJd=9>EZ!_pFTQCdX z(rE_WW#~Q>Ha8h`m!WC+y0*rkyWHJ9__Dgnpu2q1D12U7VbGnN$8{L;OG^y8%g`Oj zrBV#Klk>pehTZvj2HnZ|W%R?RWRgL5`C5A5qdRKcshJ_g-srn1rxFME0zbf;;r z_cFZb?q<-PqF(PMc;4B`pgToE++0ek? zI`p`{p22nKQC%H_>(Im6S_aplL`_ZcK`6w+btqm{)tjiUW_i{9F9;-mPg1X)a{vGU zEp$a#bW?9;ba!ELWdLG%E@EtNZ)9Y7E@N_eaCC1jX>DO=WiC)oM=~@;Zewp`Wpbzn Rf9?PP002ovPDHLkV1hx$V`BgS literal 0 HcmV?d00001 diff --git a/assets/sprite/space/ship_blue.collider b/assets/sprite/space/ship_blue.collider new file mode 100644 index 0000000..197d96d --- /dev/null +++ b/assets/sprite/space/ship_blue.collider @@ -0,0 +1,10 @@ +Poly([ + (-49, -22.5), + (-4, 37.5), + (3, 37.5), + (49, -22.5), + (49, -28.5), + (13, -37.5), + (-13, -37.5), + (-49, -28.5), +]) diff --git a/assets/sprite/space/ship_blue.png b/assets/sprite/space/ship_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..f34faf0669bbc19fb27ff05408ae66254f95b8c9 GIT binary patch literal 2834 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 literal 0 HcmV?d00001 diff --git a/assets/sprite/space/ship_red.collider b/assets/sprite/space/ship_red.collider new file mode 100644 index 0000000..197d96d --- /dev/null +++ b/assets/sprite/space/ship_red.collider @@ -0,0 +1,10 @@ +Poly([ + (-49, -22.5), + (-4, 37.5), + (3, 37.5), + (49, -22.5), + (49, -28.5), + (13, -37.5), + (-13, -37.5), + (-49, -28.5), +]) diff --git a/assets/sprite/space/ship_red.png b/assets/sprite/space/ship_red.png new file mode 100644 index 0000000000000000000000000000000000000000..796e81d71ceece18885aa0c024fcbe5517cf5885 GIT binary patch literal 2852 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 Date: Tue, 20 Sep 2022 09:58:01 -0600 Subject: [PATCH 2/4] update scenario --- scenarios/space_invaders.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scenarios/space_invaders.md b/scenarios/space_invaders.md index 55fb6ee..cf7c2c9 100644 --- a/scenarios/space_invaders.md +++ b/scenarios/space_invaders.md @@ -2,7 +2,7 @@ Evil aliens are invading! Shoot them down. -Similar to the classic [Space Invaders](https://en.wikipedia.org/wiki/Space_Invaders) arcade game, evil car aliens are invading and you must shoot them down! Cars will be set up in a grid near tho top of the screen. They will march back and forth the screen as they come lower and lower, moving faster the less of them that there are. You are aboard the only trusty green triangle that can shoot them down! +Similar to the classic [Space Invaders](https://en.wikipedia.org/wiki/Space_Invaders) arcade game, evil aliens are invading and you must shoot them down! Aliens will be set up in a grid near the top of the screen. They will march back and forth the screen as they come lower and lower, moving faster the less of them that there are. You are aboard the only spaceship left that can shoot them down! ## Common Setup From bdca0a583281b73dcf30c5ad560299fa3e4e1900 Mon Sep 17 00:00:00 2001 From: Nathan Stocks Date: Tue, 20 Sep 2022 13:27:58 -0600 Subject: [PATCH 3/4] more sprites and better colliders --- assets/sprite/space/block_blank_blue.collider | 14 ++++++++++ assets/sprite/space/block_blank_blue.png | Bin 0 -> 467 bytes assets/sprite/space/block_blank_red.collider | 14 ++++++++++ assets/sprite/space/block_blank_red.png | Bin 0 -> 457 bytes assets/sprite/space/block_bolt_blue.collider | 14 ++++++++++ assets/sprite/space/block_bolt_blue.png | Bin 0 -> 601 bytes assets/sprite/space/block_bolt_red.collider | 14 ++++++++++ assets/sprite/space/block_bolt_red.png | Bin 0 -> 592 bytes .../sprite/space/block_shield_blue.collider | 14 ++++++++++ assets/sprite/space/block_shield_blue.png | Bin 0 -> 584 bytes assets/sprite/space/block_shield_red.collider | 14 ++++++++++ assets/sprite/space/block_shield_red.png | Bin 0 -> 575 bytes assets/sprite/space/block_star_blue.collider | 14 ++++++++++ assets/sprite/space/block_star_blue.png | Bin 0 -> 619 bytes assets/sprite/space/block_star_red.collider | 14 ++++++++++ assets/sprite/space/block_star_red.png | Bin 0 -> 610 bytes assets/sprite/space/enemy_black.collider | 18 ++++++------- assets/sprite/space/enemy_blue.collider | 24 ++++++++++-------- assets/sprite/space/enemy_green.collider | 21 ++++++++------- assets/sprite/space/enemy_orange.collider | 10 -------- assets/sprite/space/enemy_red.collider | 10 ++++++++ .../space/{enemy_orange.png => enemy_red.png} | Bin assets/sprite/space/explosion.collider | 22 +++++++++------- assets/sprite/space/laser_blue.collider | 16 +++++++----- assets/sprite/space/laser_red.collider | 16 +++++++----- assets/sprite/space/life_blue.collider | 12 +++++++++ assets/sprite/space/life_blue.png | Bin 0 -> 909 bytes assets/sprite/space/life_red.collider | 12 +++++++++ assets/sprite/space/life_red.png | Bin 0 -> 913 bytes assets/sprite/space/ship_blue.collider | 18 ++++++------- assets/sprite/space/ship_red.collider | 18 ++++++------- 31 files changed, 227 insertions(+), 82 deletions(-) create mode 100644 assets/sprite/space/block_blank_blue.collider create mode 100644 assets/sprite/space/block_blank_blue.png create mode 100644 assets/sprite/space/block_blank_red.collider create mode 100644 assets/sprite/space/block_blank_red.png create mode 100644 assets/sprite/space/block_bolt_blue.collider create mode 100644 assets/sprite/space/block_bolt_blue.png create mode 100644 assets/sprite/space/block_bolt_red.collider create mode 100644 assets/sprite/space/block_bolt_red.png create mode 100644 assets/sprite/space/block_shield_blue.collider create mode 100644 assets/sprite/space/block_shield_blue.png create mode 100644 assets/sprite/space/block_shield_red.collider create mode 100644 assets/sprite/space/block_shield_red.png create mode 100644 assets/sprite/space/block_star_blue.collider create mode 100644 assets/sprite/space/block_star_blue.png create mode 100644 assets/sprite/space/block_star_red.collider create mode 100644 assets/sprite/space/block_star_red.png delete mode 100644 assets/sprite/space/enemy_orange.collider create mode 100644 assets/sprite/space/enemy_red.collider rename assets/sprite/space/{enemy_orange.png => enemy_red.png} (100%) create mode 100644 assets/sprite/space/life_blue.collider create mode 100644 assets/sprite/space/life_blue.png create mode 100644 assets/sprite/space/life_red.collider create mode 100644 assets/sprite/space/life_red.png diff --git a/assets/sprite/space/block_blank_blue.collider b/assets/sprite/space/block_blank_blue.collider new file mode 100644 index 0000000..9254b6b --- /dev/null +++ b/assets/sprite/space/block_blank_blue.collider @@ -0,0 +1,14 @@ +Poly([ + (-17.0, -11.5), + (-17.0, 11.5), + (-15.0, 14.5), + (-12.0, 16.5), + (11.0, 16.5), + (14.0, 14.5), + (16.0, 11.5), + (16.0, -11.5), + (14.0, -14.5), + (11.0, -16.5), + (-12.0, -16.5), + (-15.0, -14.5), +]) \ No newline at end of file diff --git a/assets/sprite/space/block_blank_blue.png b/assets/sprite/space/block_blank_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..1118e1b62fd8407344449c210a1cc937810ad36c GIT binary patch literal 467 zcmV;^0WAKBP)V5-nT)lZ%nf5o_LDFIKx&p8+2LDG+Pgc%BkVNpYNH^;&sM zSCp^f7i-$|9;Q%v#+m;*D1nFlf#W(UYVjL-oJt_MlV_8s_d zwB-#&78AlC^Fj7N9JBE}N|b;ECEIuWH`)GyrjCGNkUb##K=z6@Zj1*z1e7pA0_yXx z(8Uoj46+XzMeCu_0!g5>juLE91WPMmhrkjKJsknVFuMnjLx8zzuAZ0WF+=ajgKye1@1|p9RPy>TQ0GKdQ(gYF!00~-7zyO}iDgXcgEp$a#bW?9; zba!ELWdLG%E@EtNZ)9Y7E@N_eaCC1jX>DO=WiC)oM=~@;Zewp`Wpbznf9?PP002ov JPDHLkV1m5B$Ac884%nEiW^}-@CY8kqvQygdTlCpj6^0e zjbJy_rn{;4QB{F{v8Bh8i*`HMk4CwK9|iJ5 zN5W7CVlBa@NAWuz7Ye}v9WSg5&CSPUIB77kv9fI~5FF48t8(PF$N??7CHGpyvm!xw zcyvN=u=dM<;HxziF(3xSfEW-1Vn7VY+k)T$9RuMvYhM47#qY!{h1+Uvv9av+w1PlS zf{=dXb=lYGddWj4@-?J?b$X%Eh65|wWFdd#^hh^pz(el~(sjT8bRgtIUN6o2Dn|UI z>u-Rx5NQiNgAG*w4m?TR$6&^0LRo)rvtN>~X_KP>001p?MObuGZ)S9NVRB^vVtFoN zY;SL5WO*)Qa(QrcZ!T$VVP|D7P)Z)9b1s0M%T00000NkvXXu0mjfk|)I{ literal 0 HcmV?d00001 diff --git a/assets/sprite/space/block_bolt_blue.collider b/assets/sprite/space/block_bolt_blue.collider new file mode 100644 index 0000000..9254b6b --- /dev/null +++ b/assets/sprite/space/block_bolt_blue.collider @@ -0,0 +1,14 @@ +Poly([ + (-17.0, -11.5), + (-17.0, 11.5), + (-15.0, 14.5), + (-12.0, 16.5), + (11.0, 16.5), + (14.0, 14.5), + (16.0, 11.5), + (16.0, -11.5), + (14.0, -14.5), + (11.0, -16.5), + (-12.0, -16.5), + (-15.0, -14.5), +]) \ No newline at end of file diff --git a/assets/sprite/space/block_bolt_blue.png b/assets/sprite/space/block_bolt_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..28f7aebaaac3505863a893c712e78d7677c50ed2 GIT binary patch literal 601 zcmV-f0;c_mP)V5-nT)lZ%nf5o_LDFIKx&p8+2LDG+Pgc%BkVNpYNH^;&sM zSCp^f7i-$|9;Q%v#+m;*D1nFlf#W(UYVjL-oJt_MlV_8s_d zwB-#&78AlC^Fj7N9JBE}N|b;ECEIuWH`)GyrjCGNkUb##K=z6@Zj1*z1e7pA0_yXx z(8Uoj46+XzMeCu_0!g5>juLE91WPMmhrkjKJsknVFuMnjLx8z<=!QtfneYGcfiv&^ z(8nQ-SAO7i2*{yyamcK@zo-%#G<66mp+T`jHb4DMmC&HrAs`E>5gIgc$fsZb{+C?% zL0^Y}EX4($e)|i~RdjI($TD02%#gq^lHh2?1A-bK=va#-q4OVs0T*tP8P^~ zSWgdRFP08Cr0)xIsn)VPRCf@_JdnAtkigpag>}R!9fBZbGyvR%zz0Ba2I>YPj}A}+ zgF^tAFj3M35&!@+rKLkPv=6iZ001p?MObuGZ)S9NVRB^vVtFoNY;SL5WO*)Qa(Qrc nZ!T$VVP|D7P)Z)9b1s0M%T00000NkvXXu0mjf24ez? literal 0 HcmV?d00001 diff --git a/assets/sprite/space/block_bolt_red.collider b/assets/sprite/space/block_bolt_red.collider new file mode 100644 index 0000000..9254b6b --- /dev/null +++ b/assets/sprite/space/block_bolt_red.collider @@ -0,0 +1,14 @@ +Poly([ + (-17.0, -11.5), + (-17.0, 11.5), + (-15.0, 14.5), + (-12.0, 16.5), + (11.0, 16.5), + (14.0, 14.5), + (16.0, 11.5), + (16.0, -11.5), + (14.0, -14.5), + (11.0, -16.5), + (-12.0, -16.5), + (-15.0, -14.5), +]) \ No newline at end of file diff --git a/assets/sprite/space/block_bolt_red.png b/assets/sprite/space/block_bolt_red.png new file mode 100644 index 0000000000000000000000000000000000000000..ddd14170b0e2ff60a386322ec85621ef7c74b484 GIT binary patch literal 592 zcmV-W0i%`w+Wqy~+WTR+L0kJjxft1;It`8bS~WF&27Cadpk7n+JSCQr;<#!>MR^QI zlnV;-10~!Ai*XeUTI-LQ%Ars$et!>$Nh#bhu`i~F1I(wEr4msW2 zjMpI`htkC%SLe*3N@&p3A*6%`#SXc@WeZh8gJOq(ETl$g(8M7>KYjXtw5*K24gpz; z3w(L@44kXz;t-H!xB$qJyW`^MSHy#SjV+2u2@R^&HOPefPY-A> zW(OSF_XW9hwy`nQ9RxBDWNs6_zAsWod_TQL1HfGfd;k<@pl%@Y=m3>0e-BESC}{!- z006`|^gtBY9ohf@04;PySaefwW^{L9a%BKwc`jmXZ*OE|c`jped2n=ZE@^FHXJsx> ePDe5{MQ&qnWMy)w27m4V0000V5-nT)lZ%nf5o_LDFIKx&p8+2LDG+Pgc%BkVNpYNH^;&sM zSCp^f7i-$|9;Q%v#+m;*D1nFlf#W(UYVjL-oJt_MlV_8s_d zwB-#&78AlC^Fj7N9JBE}N|b;ECEIuWH`)GyrjCGNkUb##K=z6@Zj1*z1e7pA0_yXx z(8Uoj46+XzMeCu_0!g5>juLE91WPMmhrkjKJsknVFuMnjLx8zVeU^lLay#*3$#oi=_h&>HC6QsNOq4W%1OQib$Gza| z*}nh)04;PySaefwW^{L9a%BKwc`jmXZ*OE|c`jped2n=ZE@^FHXJsx>PDe5{MQ&qn WWMy)w27m4V0000J%=P)i%`w+Wqy~+WTR+L0kJjxft1;It`8bS~WF&27Cadpk7n+JSCQr;<#!>MR^QI zlnV;-10~!Ai*XeUTI-LQ%Ars$et!>$N&zz2WjJw)6LB!IpjirKW!YcEijNIhwP4vqg`SpHk}ZYJ}7bsvFU`E^g)qB zh)pNNqz{T5LToxACVfy`pb<(Z#HJ659dfj+3~U)LM}Xw%R>W^~b^ZV9>{%2?fcPNs z0jX<1i4qi5#3s(+Rp|{|hkzQ;C=P+OSt;$mkkj8m=~C2dY0U=-Og1#6t3yEcfgJ+0 zAKur6^=s(Wk_XuX@7DnBNA&cd9c@q#jMkkjkooYQ9?)LQ4mh;$3v%gfV`Hj22xK0} z+$MZ|U!;!setL}tfV&X*04UBt-9Y5g0V-Mk9+WUq(gYF!01?$Mf$2S;i2wiqEp$a# zbW?9;ba!ELWdLG%E@EtNZ)9Y7E@N_eaCC1jX>DO=WiC)oM=~@;Zewp`Wpbznf9?PP N002ovPDHLkV1ncs@(KU| literal 0 HcmV?d00001 diff --git a/assets/sprite/space/block_star_blue.collider b/assets/sprite/space/block_star_blue.collider new file mode 100644 index 0000000..9254b6b --- /dev/null +++ b/assets/sprite/space/block_star_blue.collider @@ -0,0 +1,14 @@ +Poly([ + (-17.0, -11.5), + (-17.0, 11.5), + (-15.0, 14.5), + (-12.0, 16.5), + (11.0, 16.5), + (14.0, 14.5), + (16.0, 11.5), + (16.0, -11.5), + (14.0, -14.5), + (11.0, -16.5), + (-12.0, -16.5), + (-15.0, -14.5), +]) \ No newline at end of file diff --git a/assets/sprite/space/block_star_blue.png b/assets/sprite/space/block_star_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..eeda7bc8d9f127d44f1565842ed64a9d819ac926 GIT binary patch literal 619 zcmV-x0+juUP)V5-nT)lZ%nf5o_LDFIKx&p8+2LDG+Pgc%BkVNpYNH^;&sM zSCp^f7i-$|9;Q%v#+m;*D1nFlf#W(UYVjL-oJt_MlV_8s_d zwB-#&78AlC^Fj7N9JBE}N|b;ECEIuWH`)GyrjCGNkUb##K=z6@Zj1*z1e7pA0_yXx z(8Uoj46+XzMeCu_0!g5>juLE91WPMmhrkjKJsknVFuMnjLx8!KVux&g`g`C*1mp-1 zAlETeaY*BpAODd7h);KiL?8e59~%IP)5RemU!QsR=RZCGk|#EFNOs7qyTAT_`t|QW zDFCD%q>ri&K~E3Fg5DcHsUJ1496~GrMG;NXh|~VB|8IW!OLVmOAO1$W#9DHJxF}lw z@E2`!O~#q;L^*^|BBj_NxXKSw6Dd^+G-3cKphhxc`1{Th0;WIn8?2eKDS2OQG(1-Vpf*&V7o2xK0}Tv$k8?fb$y;*<_S zkTMzo?n2-Lpg03{1Cd7usDZ&D08E%DX#xoV0QrZ^Not7!A^-pYEp$a#bW?9;ba!EL zWdLG%E@EtNZ)9Y7E@N_eaCC1jX>DO=WiC)oM=~@;Zewp`Wpbznf9?PP002ovPDHLk FV1h+(0I>i7 literal 0 HcmV?d00001 diff --git a/assets/sprite/space/block_star_red.collider b/assets/sprite/space/block_star_red.collider new file mode 100644 index 0000000..9254b6b --- /dev/null +++ b/assets/sprite/space/block_star_red.collider @@ -0,0 +1,14 @@ +Poly([ + (-17.0, -11.5), + (-17.0, 11.5), + (-15.0, 14.5), + (-12.0, 16.5), + (11.0, 16.5), + (14.0, 14.5), + (16.0, 11.5), + (16.0, -11.5), + (14.0, -14.5), + (11.0, -16.5), + (-12.0, -16.5), + (-15.0, -14.5), +]) \ No newline at end of file diff --git a/assets/sprite/space/block_star_red.png b/assets/sprite/space/block_star_red.png new file mode 100644 index 0000000000000000000000000000000000000000..ea98f39b4de104e712820ed13859cfd94cb4d48a GIT binary patch literal 610 zcmV-o0-gPdP)i%`w+Wqy~+WTR+L0kJjxft1;It`8bS~WF&27Cadpk7n+JSCQr;<#!>MR^QI zlnV;-10~!Ai*XeUTI-LQ%Ars$et!>$Ng?J7_y9lK0dW{BvyAb#Q zD9%9LK;+Q@Dp~#>lrT}!1QGxM>PI(CUYJ*=0000jbVXQnQ*UN;cVTj60AhJAVr*}3 wWMp|RV{&KQKGBibQV{c?-a;OG>?f?J)07*qoM6N<$f}y7V)Bpeg literal 0 HcmV?d00001 diff --git a/assets/sprite/space/enemy_black.collider b/assets/sprite/space/enemy_black.collider index 4209f42..2eb164d 100644 --- a/assets/sprite/space/enemy_black.collider +++ b/assets/sprite/space/enemy_black.collider @@ -1,10 +1,10 @@ Poly([ - (-46.5, 17), - (-29, 42), - (29, 42), - (46.5, 17), - (46.5, 14.5), - (25, -41.5), - (-25, -41.5), - (-46.5, 14.5), -]) + (-46.500004, 14.000001), + (-46.500004, 17.0), + (-29.500002, 42.0), + (29.500002, 42.0), + (46.500004, 16.5), + (46.500004, 14.000001), + (25.500002, -41.0), + (-25.500002, -41.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/enemy_blue.collider b/assets/sprite/space/enemy_blue.collider index 040bc80..268b0d2 100644 --- a/assets/sprite/space/enemy_blue.collider +++ b/assets/sprite/space/enemy_blue.collider @@ -1,12 +1,14 @@ Poly([ - (-52, 14), - (-50, 16.0), - (-18, 32.5), - (0, 41.5), - (50, 16), - (52, 14), - (52, 7.5), - (24, -42), - (-24, -42), - (-52, 7.5), -]) + (-52.0, 8.0), + (-52.0, 14.0), + (-50.0, 16.0), + (-1.0, 42.0), + (1.0, 42.0), + (50.0, 16.0), + (52.0, 14.0), + (52.0, 8.0), + (24.0, -41.0), + (16.0, -42.0), + (-16.0, -42.0), + (-24.0, -41.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/enemy_green.collider b/assets/sprite/space/enemy_green.collider index 6a0bf07..459f039 100644 --- a/assets/sprite/space/enemy_green.collider +++ b/assets/sprite/space/enemy_green.collider @@ -1,12 +1,11 @@ Poly([ - (-51, 3.5), - (-25.5, 35.5), - (-8.5, 42), - (8.5, 42), - (25.5, 35.5), - (51.5, 2.5), - (51.5, 0.5), - (37.5, -42), - (-38, -42), - (-51, 0), -]) + (-38.5, -42.0), + (-51.5, 0.0), + (-51.5, 4.0), + (-26.5, 36.0), + (-8.5, 42.0), + (8.5, 42.0), + (25.5, 36.0), + (51.5, 3.0), + (38.5, -42.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/enemy_orange.collider b/assets/sprite/space/enemy_orange.collider deleted file mode 100644 index 6cd17d4..0000000 --- a/assets/sprite/space/enemy_orange.collider +++ /dev/null @@ -1,10 +0,0 @@ -Poly([ - (-41, 29), - (-19, 42), - (19, 42), - (41, 29), - (41, -20), - (11, -42), - (-11, -42), - (-41, -20), -]) diff --git a/assets/sprite/space/enemy_red.collider b/assets/sprite/space/enemy_red.collider new file mode 100644 index 0000000..0d58daf --- /dev/null +++ b/assets/sprite/space/enemy_red.collider @@ -0,0 +1,10 @@ +Poly([ + (-41.0, -20.0), + (-41.0, 29.0), + (-20.0, 42.0), + (20.0, 42.0), + (41.0, 29.0), + (41.0, -20.0), + (11.0, -42.0), + (-11.0, -42.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/enemy_orange.png b/assets/sprite/space/enemy_red.png similarity index 100% rename from assets/sprite/space/enemy_orange.png rename to assets/sprite/space/enemy_red.png diff --git a/assets/sprite/space/explosion.collider b/assets/sprite/space/explosion.collider index 3fe451e..b18e633 100644 --- a/assets/sprite/space/explosion.collider +++ b/assets/sprite/space/explosion.collider @@ -1,10 +1,14 @@ Poly([ - (-27, 26.5), - (0, 31.5), - (27, 26.5), - (32, 0), - (27, -26.5), - (0, -31.5), - (-27, -26.5), - (-32, 0), -]) + (-32.0, -1.5), + (-32.0, 1.5), + (-27.0, 26.5), + (-2.0, 31.5), + (2.0, 31.5), + (27.0, 26.5), + (32.0, 2.5), + (32.0, -1.5), + (27.0, -26.5), + (2.0, -31.5), + (-2.0, -31.5), + (-27.0, -26.5), +]) \ No newline at end of file diff --git a/assets/sprite/space/laser_blue.collider b/assets/sprite/space/laser_blue.collider index 6f2d85c..72f5bd6 100644 --- a/assets/sprite/space/laser_blue.collider +++ b/assets/sprite/space/laser_blue.collider @@ -1,8 +1,10 @@ Poly([ - (-1.5, -27), - (-4.5, 25), - (-2.5, 27), - (2.5, 27), - (4.5, 25), - (1.5, -27), -]) + (-1.5, -27.0), + (-4.5, -13.0), + (-4.5, 25.0), + (-2.5, 27.0), + (2.5, 27.0), + (4.5, 25.0), + (4.5, -13.0), + (1.5, -27.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/laser_red.collider b/assets/sprite/space/laser_red.collider index 6f2d85c..72f5bd6 100644 --- a/assets/sprite/space/laser_red.collider +++ b/assets/sprite/space/laser_red.collider @@ -1,8 +1,10 @@ Poly([ - (-1.5, -27), - (-4.5, 25), - (-2.5, 27), - (2.5, 27), - (4.5, 25), - (1.5, -27), -]) + (-1.5, -27.0), + (-4.5, -13.0), + (-4.5, 25.0), + (-2.5, 27.0), + (2.5, 27.0), + (4.5, 25.0), + (4.5, -13.0), + (1.5, -27.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/life_blue.collider b/assets/sprite/space/life_blue.collider new file mode 100644 index 0000000..6016cfc --- /dev/null +++ b/assets/sprite/space/life_blue.collider @@ -0,0 +1,12 @@ +Poly([ + (-18.5, -4.0), + (-18.5, 0.0), + (-2.5, 13.0), + (1.5, 13.0), + (17.5, -0.0), + (17.5, -4.0), + (11.5, -12.0), + (3.5, -13.0), + (-4.5, -13.0), + (-12.5, -12.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/life_blue.png b/assets/sprite/space/life_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..17478e609ffed0520f65becb50b073266f628c64 GIT binary patch literal 909 zcmV;819JR{P)YYhnsjA1w$o9hZFh#LR~W~&ku0?h4u2~jpMfrZzqwhIsf%weD# z_oWjZFi~cxYSzVYMkgRA?mQQLSMJm23(0MvZC53*|E4eO7_H9T1whH=oamjb5D)-5 zefF|sYivFzfw9J5AA14@x^TdZa`L)miIrkWy!@~%Zom5~K>*O1p7Y|^*hl(*Fu6(J z$*dM=1B!=@{D@zx-(T#)I@1xhPmUK9Y9D(I1;m&UO%XMZ)9b1s0M%T00000NkvXXu0mjfKq`<| literal 0 HcmV?d00001 diff --git a/assets/sprite/space/life_red.collider b/assets/sprite/space/life_red.collider new file mode 100644 index 0000000..6016cfc --- /dev/null +++ b/assets/sprite/space/life_red.collider @@ -0,0 +1,12 @@ +Poly([ + (-18.5, -4.0), + (-18.5, 0.0), + (-2.5, 13.0), + (1.5, 13.0), + (17.5, -0.0), + (17.5, -4.0), + (11.5, -12.0), + (3.5, -13.0), + (-4.5, -13.0), + (-12.5, -12.0), +]) \ No newline at end of file diff --git a/assets/sprite/space/life_red.png b/assets/sprite/space/life_red.png new file mode 100644 index 0000000000000000000000000000000000000000..abada852d2c8d4aeaa9f59341cb5487db7cb9c5a GIT binary patch literal 913 zcmV;C18)3@P)rVKwy`nTCGMal}e^o zs}-!z3#Mrv3bb;R%jF}&F#xQkpe%OA0Oa-HpqL7WC9qPdbg(6W^7;G$05FS1@j%lk zz9o~)R)0%CVPOEsBoY!77{jnM_O>OUAZ`Gd>+6%C5MXZKONg?82`s#k&DsDVz#Im; zabG&o0@K9|ZJJx+MeI5Oi3K~vrC=w0p6=}x`Hf8p?7!&?J4UN>cLC7iaz;En-a$YB zsJksJ*?K(lL;_=t!9Ml`40K_EiF5L;N=1A&a^mTSWifT`^e0006&h-<+RJp+UMJw*DuK^sy^ zsyC#!9af@zY%my<;nm6)+aj~iUrLq$gh5?sJ0+ikNp%i3w3aJ4-CxIguBC+-RaRIx zsnxHx#2ks(4Y@dgFet=*ElAHFojdP37dchEsQ^(S2Bh-~IP&lHb)wrXA;;*6lM<8) z2ys(8Cf|WkuN(jeNvzJ#+Zuw;uL7T6ZnQgN`re3K6s+9Rj@lxwwafRDSEIhU=H4uk z{$Rjtx>QO&R6mVuFE-YF#y1f<%W0Ti0Y?3DaR)CB49F&+5~2&3zGsn$FYVY_qkuTT ztQRQgZafr{EJ5_Piy9sl(rI7XRc~rE*t49$9gGTj9^!nSy&oR_%V(S#Xa>~G=!9nn zqcS{PZ9y#~gy$uARp|A?Pw109J#?V69r)dm$R3PTiX7Wd3-tg|S6R$@Z44E$iM!6V zgxq{d*QMa$Dex|%_=`-{?aJbIg~8E+Ihd=S3dy0{syB5t{9^zeku!b>uYsL<0aCT1 z4uFK4D`i_~=Blf!$v`pu%-Ypi1cOGI-9pt0nArK7apr9L#sJ0;ZuM5LGhPGT?3@b_ zetGxgH=keZX3;Z)9b1s0M%T00000NkvXXu0mjfWvH9B literal 0 HcmV?d00001 diff --git a/assets/sprite/space/ship_blue.collider b/assets/sprite/space/ship_blue.collider index 197d96d..c50c5ae 100644 --- a/assets/sprite/space/ship_blue.collider +++ b/assets/sprite/space/ship_blue.collider @@ -1,10 +1,10 @@ Poly([ - (-49, -22.5), - (-4, 37.5), - (3, 37.5), - (49, -22.5), - (49, -28.5), - (13, -37.5), - (-13, -37.5), - (-49, -28.5), -]) + (-49.0, -21.5), + (-4.0, 37.5), + (4.0, 37.5), + (49.0, -22.5), + (49.0, -28.5), + (14.0, -37.5), + (-14.0, -37.5), + (-49.0, -29.5), +]) \ No newline at end of file diff --git a/assets/sprite/space/ship_red.collider b/assets/sprite/space/ship_red.collider index 197d96d..c50c5ae 100644 --- a/assets/sprite/space/ship_red.collider +++ b/assets/sprite/space/ship_red.collider @@ -1,10 +1,10 @@ Poly([ - (-49, -22.5), - (-4, 37.5), - (3, 37.5), - (49, -22.5), - (49, -28.5), - (13, -37.5), - (-13, -37.5), - (-49, -28.5), -]) + (-49.0, -21.5), + (-4.0, 37.5), + (4.0, 37.5), + (49.0, -22.5), + (49.0, -28.5), + (14.0, -37.5), + (-14.0, -37.5), + (-49.0, -29.5), +]) \ No newline at end of file From d38007b80a514ea7071fd5dfc6735618edccb990 Mon Sep 17 00:00:00 2001 From: Nathan Stocks Date: Thu, 22 Sep 2022 20:11:43 -0600 Subject: [PATCH 4/4] changes made during utah rust --- Cargo.toml | 4 ++ examples/scenarios/invaders.rs | 72 ++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 examples/scenarios/invaders.rs diff --git a/Cargo.toml b/Cargo.toml index 74dbe53..b4118b1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,3 +51,7 @@ path = "examples/scenarios/road_race.rs" [[example]] name = "extreme_drivers_ed" path = "examples/scenarios/extreme_drivers_ed.rs" + +[[example]] +name = "invaders" +path = "examples/scenarios/invaders.rs" diff --git a/examples/scenarios/invaders.rs b/examples/scenarios/invaders.rs new file mode 100644 index 0000000..0a9fe5b --- /dev/null +++ b/examples/scenarios/invaders.rs @@ -0,0 +1,72 @@ +use rusty_engine::prelude::*; + +struct GameState { + string_vec: Vec, +} + +fn main() { + let mut game = Game::new(); + + // create and position the player + let player = game.add_sprite("player", "sprite/space/ship_blue.png"); + player.translation.y = -275.0; + player.collision = true; + + for i in 0..5 { + place_barrier( + &mut game, + format!("barrier{}", i), + Vec2::new(-624.0 + (i * (160 + 96)) as f32 + 32.0, -230.0), + ); + } + // pre-populate laser labels + let mut game_state = GameState { + string_vec: Vec::new(), + }; + for i in 0..2 { + game_state.string_vec.push(format!("laser{}", i)); + } + + game.add_logic(logic); + game.run(game_state); +} + +fn logic(engine: &mut Engine, game_state: &mut GameState) { + // Player movement + let player = engine.sprites.get_mut("player").unwrap(); + if let Some(location) = engine.mouse_state.location() { + player.translation.x = player + .translation + .lerp(Vec2::new(location.x, player.translation.y), 0.1) + .x; + } + + // Lasers!!! + let player_translation = player.translation; + if engine.mouse_state.just_pressed(MouseButton::Left) + || engine.keyboard_state.just_pressed(KeyCode::Space) + { + if let Some(label) = game_state.string_vec.pop() { + let laser = + engine.add_sprite(format!("laser{}", label), SpritePreset::RacingBarrierWhite); + laser.rotation = UP; + laser.scale = 0.25; + laser.translation = player_translation; + } + } +} + +fn place_barrier(engine: &mut Engine, prefix: String, location: Vec2) { + for x in 0..5 { + for y in 0..3 { + if y == 2 && (x == 0 || x == 4) { + continue; + } + let block = engine.add_sprite( + format!("{}-{}-{}", prefix, x, y), + SpritePreset::RollingBlockSmall, + ); + block.translation = Vec2::new(x as f32 * 32.0, y as f32 * 32.0) + location; + } + } +}