From 2a814abe05fc701db22edfbb8c18c557a46c4ab5 Mon Sep 17 00:00:00 2001 From: Snoweuph Date: Sat, 8 Apr 2023 00:41:09 +0000 Subject: [PATCH 1/4] Basic Movement and Map Generation (#22) Basic Movement and Map Generation are Done also got some art in stock, missing a lot still though. nothing to fancy for now Co-authored-by: Snoweuph, AXVIII3 Reviewed-on: https://git.euph.dev/GameDev/HoppyEaster/pulls/22 --- Assets/ColorPallet.ase | Bin 0 -> 333 bytes Assets/ColorPallet.png | Bin 0 -> 177 bytes ...righ.png.import => ColorPallet.png.import} | 10 +- Assets/Sprites/{ => EvilBunny}/bunny_down.png | Bin .../Sprites/EvilBunny/bunny_down.png.import | 34 ++ Assets/Sprites/{ => EvilBunny}/bunny_left.png | Bin .../Sprites/EvilBunny/bunny_left.png.import | 34 ++ Assets/Sprites/{ => EvilBunny}/bunny_righ.png | Bin .../Sprites/EvilBunny/bunny_righ.png.import | 34 ++ Assets/Sprites/{ => EvilBunny}/bunny_up.png | Bin .../bunny_up.png.import} | 12 +- Assets/Sprites/GoodBunny/bunny_down.png | Bin 0 -> 1311 bytes .../Sprites/GoodBunny/bunny_down.png.import | 34 ++ Assets/Sprites/GoodBunny/bunny_left.png | Bin 0 -> 1179 bytes .../Sprites/GoodBunny/bunny_left.png.import | 34 ++ Assets/Sprites/GoodBunny/bunny_righ.png | Bin 0 -> 1182 bytes .../Sprites/GoodBunny/bunny_righ.png.import | 34 ++ Assets/Sprites/GoodBunny/bunny_up.png | Bin 0 -> 1212 bytes Assets/Sprites/GoodBunny/bunny_up.png.import | 34 ++ Assets/Sprites/Jesus/Jesus Back.png | Bin 0 -> 597 bytes Assets/Sprites/Jesus/Jesus Back.png.import | 34 ++ Assets/Sprites/Jesus/Jesus Front.png | Bin 0 -> 714 bytes Assets/Sprites/Jesus/Jesus Front.png.import | 34 ++ Assets/Sprites/Jesus/Jesus Left.png | Bin 0 -> 665 bytes Assets/Sprites/Jesus/Jesus Left.png.import | 34 ++ Assets/Sprites/Jesus/Jesus Spritesheet.png | Bin 0 -> 7347 bytes .../Jesus/Jesus Spritesheet.png.import | 34 ++ Assets/Sprites/Jesus/Shadow.png | Bin 0 -> 145 bytes .../Shadow.png.import} | 10 +- Assets/Sprites/TileMap.png | Bin 0 -> 1509 bytes ...bunny_up.png.import => TileMap.png.import} | 10 +- Assets/Tileset.tres | 496 ++++++++++++++++++ Scenes/Cave.tscn | 14 + Scenes/PlayerMovement.tscn | 154 ++++++ Scripts/MapGenerator.gd | 269 ++++++++++ Scripts/PlayerController.gd | 43 ++ project.godot | 42 +- 37 files changed, 1412 insertions(+), 22 deletions(-) create mode 100644 Assets/ColorPallet.ase create mode 100644 Assets/ColorPallet.png rename Assets/{Sprites/bunny_righ.png.import => ColorPallet.png.import} (65%) rename Assets/Sprites/{ => EvilBunny}/bunny_down.png (100%) create mode 100644 Assets/Sprites/EvilBunny/bunny_down.png.import rename Assets/Sprites/{ => EvilBunny}/bunny_left.png (100%) create mode 100644 Assets/Sprites/EvilBunny/bunny_left.png.import rename Assets/Sprites/{ => EvilBunny}/bunny_righ.png (100%) create mode 100644 Assets/Sprites/EvilBunny/bunny_righ.png.import rename Assets/Sprites/{ => EvilBunny}/bunny_up.png (100%) rename Assets/Sprites/{bunny_down.png.import => EvilBunny/bunny_up.png.import} (62%) create mode 100644 Assets/Sprites/GoodBunny/bunny_down.png create mode 100644 Assets/Sprites/GoodBunny/bunny_down.png.import create mode 100644 Assets/Sprites/GoodBunny/bunny_left.png create mode 100644 Assets/Sprites/GoodBunny/bunny_left.png.import create mode 100644 Assets/Sprites/GoodBunny/bunny_righ.png create mode 100644 Assets/Sprites/GoodBunny/bunny_righ.png.import create mode 100644 Assets/Sprites/GoodBunny/bunny_up.png create mode 100644 Assets/Sprites/GoodBunny/bunny_up.png.import create mode 100644 Assets/Sprites/Jesus/Jesus Back.png create mode 100644 Assets/Sprites/Jesus/Jesus Back.png.import create mode 100644 Assets/Sprites/Jesus/Jesus Front.png create mode 100644 Assets/Sprites/Jesus/Jesus Front.png.import create mode 100644 Assets/Sprites/Jesus/Jesus Left.png create mode 100644 Assets/Sprites/Jesus/Jesus Left.png.import create mode 100644 Assets/Sprites/Jesus/Jesus Spritesheet.png create mode 100644 Assets/Sprites/Jesus/Jesus Spritesheet.png.import create mode 100644 Assets/Sprites/Jesus/Shadow.png rename Assets/Sprites/{bunny_left.png.import => Jesus/Shadow.png.import} (65%) create mode 100644 Assets/Sprites/TileMap.png rename Assets/Sprites/{bunny_up.png.import => TileMap.png.import} (65%) create mode 100644 Assets/Tileset.tres create mode 100644 Scenes/Cave.tscn create mode 100644 Scenes/PlayerMovement.tscn create mode 100644 Scripts/MapGenerator.gd create mode 100644 Scripts/PlayerController.gd diff --git a/Assets/ColorPallet.ase b/Assets/ColorPallet.ase new file mode 100644 index 0000000000000000000000000000000000000000..f96909cf151c267a74730f9afe6a44c509bebf6c GIT binary patch literal 333 zcmeZeWMFu(l#xMzfsug&h#44CfEWQd5KNk|&H_#S^^pZ`s~3JJ~ zV0b)h4Ujw%J0D0Ud)ETVl*B_oQhVhVAUXNURv`J|+l&87K)oy=A8`Qn0W|@20F?vP z0u=&P0hP#uR46bb*#Xqbz|P>4SeaU+U}yy7uqr@g|1&{o25>-C%t=m2NlHshO@991 R$)jfvpFU=1VA{b@2>|yWKFI(8 literal 0 HcmV?d00001 diff --git a/Assets/ColorPallet.png b/Assets/ColorPallet.png new file mode 100644 index 0000000000000000000000000000000000000000..d81afb619922901fc436dbabb6b87cec445c99da GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K56j+#nB!Bzv>p)5(z$e7@!>x^vXRSFBJ3raG zHYM?p_R1}juWbGB?L}_cq@zGJoCO|{#S9F5M?jcysy3fAP|)7f#W5tJ_3b%B#sdlr z2Ml!1Fo|t2;NIN8`sQ=^fpu3LjNPg(`DpKb>1{ptiak&R5;*X_ftzQ~4!whXCbA%5 MPgg&ebxsLQ02dQDPyhe` literal 0 HcmV?d00001 diff --git a/Assets/Sprites/bunny_righ.png.import b/Assets/ColorPallet.png.import similarity index 65% rename from Assets/Sprites/bunny_righ.png.import rename to Assets/ColorPallet.png.import index baaf241..fa16fe8 100644 --- a/Assets/Sprites/bunny_righ.png.import +++ b/Assets/ColorPallet.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://qvq11powneve" -path="res://.godot/imported/bunny_righ.png-66416292c790a3c540d894b9b9f5a2c9.ctex" +uid="uid://dwkjfno8mjrdp" +path="res://.godot/imported/ColorPallet.png-9feaa0f98adb7b976a9666999fd546c6.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Assets/Sprites/bunny_righ.png" -dest_files=["res://.godot/imported/bunny_righ.png-66416292c790a3c540d894b9b9f5a2c9.ctex"] +source_file="res://Assets/ColorPallet.png" +dest_files=["res://.godot/imported/ColorPallet.png-9feaa0f98adb7b976a9666999fd546c6.ctex"] [params] @@ -31,4 +31,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/bunny_down.png b/Assets/Sprites/EvilBunny/bunny_down.png similarity index 100% rename from Assets/Sprites/bunny_down.png rename to Assets/Sprites/EvilBunny/bunny_down.png diff --git a/Assets/Sprites/EvilBunny/bunny_down.png.import b/Assets/Sprites/EvilBunny/bunny_down.png.import new file mode 100644 index 0000000..35c0d3c --- /dev/null +++ b/Assets/Sprites/EvilBunny/bunny_down.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://tv804qpxy44n" +path="res://.godot/imported/bunny_down.png-65e2d347963ef39987488ab06970e3b7.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/EvilBunny/bunny_down.png" +dest_files=["res://.godot/imported/bunny_down.png-65e2d347963ef39987488ab06970e3b7.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/bunny_left.png b/Assets/Sprites/EvilBunny/bunny_left.png similarity index 100% rename from Assets/Sprites/bunny_left.png rename to Assets/Sprites/EvilBunny/bunny_left.png diff --git a/Assets/Sprites/EvilBunny/bunny_left.png.import b/Assets/Sprites/EvilBunny/bunny_left.png.import new file mode 100644 index 0000000..61153c5 --- /dev/null +++ b/Assets/Sprites/EvilBunny/bunny_left.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dbelgiv204e2b" +path="res://.godot/imported/bunny_left.png-78242bd12e7c1e446aa544882eb0c11c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/EvilBunny/bunny_left.png" +dest_files=["res://.godot/imported/bunny_left.png-78242bd12e7c1e446aa544882eb0c11c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/bunny_righ.png b/Assets/Sprites/EvilBunny/bunny_righ.png similarity index 100% rename from Assets/Sprites/bunny_righ.png rename to Assets/Sprites/EvilBunny/bunny_righ.png diff --git a/Assets/Sprites/EvilBunny/bunny_righ.png.import b/Assets/Sprites/EvilBunny/bunny_righ.png.import new file mode 100644 index 0000000..ee53c8d --- /dev/null +++ b/Assets/Sprites/EvilBunny/bunny_righ.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cvji70p68eae8" +path="res://.godot/imported/bunny_righ.png-087dbfde3e26335391f6eb0d1a0f9a4a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/EvilBunny/bunny_righ.png" +dest_files=["res://.godot/imported/bunny_righ.png-087dbfde3e26335391f6eb0d1a0f9a4a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/bunny_up.png b/Assets/Sprites/EvilBunny/bunny_up.png similarity index 100% rename from Assets/Sprites/bunny_up.png rename to Assets/Sprites/EvilBunny/bunny_up.png diff --git a/Assets/Sprites/bunny_down.png.import b/Assets/Sprites/EvilBunny/bunny_up.png.import similarity index 62% rename from Assets/Sprites/bunny_down.png.import rename to Assets/Sprites/EvilBunny/bunny_up.png.import index 9d6d91d..2bbcfab 100644 --- a/Assets/Sprites/bunny_down.png.import +++ b/Assets/Sprites/EvilBunny/bunny_up.png.import @@ -2,20 +2,20 @@ importer="texture" type="CompressedTexture2D" -uid="uid://dyibsqvmfitux" -path="res://.godot/imported/bunny_down.png-6511b38862324c280c3e08af22b07ee9.ctex" +uid="uid://coyib2evn5o61" +path="res://.godot/imported/bunny_up.png-9db830aab18c79505e343895a04cf789.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Assets/Sprites/bunny_down.png" -dest_files=["res://.godot/imported/bunny_down.png-6511b38862324c280c3e08af22b07ee9.ctex"] +source_file="res://Assets/Sprites/EvilBunny/bunny_up.png" +dest_files=["res://.godot/imported/bunny_up.png-9db830aab18c79505e343895a04cf789.ctex"] [params] -compress/mode=4 +compress/mode=0 compress/high_quality=false compress/lossy_quality=0.7 compress/hdr_compression=1 @@ -31,4 +31,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/GoodBunny/bunny_down.png b/Assets/Sprites/GoodBunny/bunny_down.png new file mode 100644 index 0000000000000000000000000000000000000000..452b30036031f4b2d6d332d9a70793b5ba8f99c8 GIT binary patch literal 1311 zcmV+)1>pLLP)Z|hMyiJ=aqU7~02u|BU4EqTqSrhEtsE7V_v>Bj1w?B$eJ*$i%>4+s0b5>Y5~_9BBm61W_g#og~AQYP9@nr*s{xsb&yCW zjyB?wHmII;tH1$`#Doe(0`XHNu+vRNflM5&dP<@m85ase!4nXv$x$VX$NPrOq9RG8 z8wRGWxFsCR6e25RtVqe7EPSNmU<|6sq7EaoIVzV8QY!qFN0vbot5S+ zI3P#tUNRRSCkOhfA3K;P5+W$QWrl6qJ=;RrPR5Clb5i)bGe~6FC)`Qh&+TwD$q%ZN zIcwss16oZ?7b-;vSAGYrxW%0ZsXs~%%*4^kwds{TM&>XNpHNp2AHRLMe0cSyLB0LH zQ>i-y2TalkACBN~F2;$&#YX~;tu3>j)=@@gtS)w;0`aMYti9=0ii}{yz<^$}jC%-< zBGf1!2?D8vdKMfY=4xEf8phHZhJ-5hE8Dfi1r-+<7mfshR0}(<{Sg)q<&w28OYI9` zPwngv&tM>Np*{uv=i{$!4$t2`t3S@zOQ=>HqlIe0kt7f?VRpn3+7Y4_p@xcU+eanJ z?)818=fLigDAKAAD&sOc3s+3k-W_-@&CSZ5sO5Wy zg%v1PC@5PpWv1MOO0orj zHXrJGv)aTrC7$nd_}HEqa{;&-!N<`!s^e3KffSmooS215+Wg=iNEC@>we2V^-3fz} z7vZx8w%Qd=2IEloQI+1* zb8^`&)Fm4@5nD3F8=$i!%vNEhQ2&My@8trMP``dNtR>7stpc;Ei~HjW%jFRwCEE|= znz$V8ih~Q-Kxb!nASmGsz(JOOgFc3pey{V5ynin-N^_`Ag`lf)2OtL5h;Vim91-lE zXIzfz8Tj7s<(y<|g$M#hxcgafjE?sdY6ruTv+wEpXTi}yrTXX;s!Gwk;S3D?0sJ_f VZYFng#Q*>R07*qoM6N<$f&k9vSn&V= literal 0 HcmV?d00001 diff --git a/Assets/Sprites/GoodBunny/bunny_down.png.import b/Assets/Sprites/GoodBunny/bunny_down.png.import new file mode 100644 index 0000000..810354b --- /dev/null +++ b/Assets/Sprites/GoodBunny/bunny_down.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ep63wy3imw2d" +path="res://.godot/imported/bunny_down.png-ea09ce83bcf9875fa961a56145d1a045.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/GoodBunny/bunny_down.png" +dest_files=["res://.godot/imported/bunny_down.png-ea09ce83bcf9875fa961a56145d1a045.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/GoodBunny/bunny_left.png b/Assets/Sprites/GoodBunny/bunny_left.png new file mode 100644 index 0000000000000000000000000000000000000000..47dd716d57d19b9fbd9d47a7c37b7c27ef8f2d77 GIT binary patch literal 1179 zcmV;M1Z4Y(P)1a1(4ryFQo5?2Hs3)BU{Eh4Z$y+xXq$OYc}LeQ0~Fp01dALUe6%Upuuy0vwe3JsH2l~7ReUPXDEk(8j542hQZb+0PQ_p z>p>lqq^L*&sI;3N$AWM5=nT_n7;JqaNS(EqK^>i>sGE)iHL)6z^>8kh(G!gp|5aM* zKpmYV+RZQSrsv&-ff{D8K3O+)wqb3cZrO9>{ zppFD38~M(G;k@mX8ZK@Y8K@UcR~XchNn+RLKy|z=HG_s3Y=;P{bHPBMj!aTE>PnaK z;WiPuWz*xT->Sjuj>E`_md5dFEh?ziB&8c_O?jN;ke{%>u;|NR$=r6Ikk{9YX|}w zVquwRC0J@>Q1qpAe}G@D%|{W`Zb>@)q$N^mrO5K@;VoA>Boxc)Cus#?I=Z#c&-_1hqRT#wsdyb?%2CXdxLotD6R; zv${+)V>b_{duu@&hwf1~wOnVd1;tQB+tSf(kmH9BdjMOy{R|qE&gyDAY8pmMyh{xP z%msGU9~SBe3Q|RMe;Kf7_ms{vbk(f0v=&NgN0=XbyV{Omm%tdfY5|Kz1+{yUj6up^ z?NQm48m=CJSJ)1;VYq1la{+@I0ow@{G)Qh<$h9h)0eSL)G$j@||; zy~sLD@u@-jVKD$n8l()G^idtNQO#48#>{!eE#0H7*n{fzmG2Z|AWf7cCdFbgbW;vs zNLwQheL+oOO+h|BNBodF@&SJrb^p|^6p|Bx%KTl;M1ZD)0IQ}4jVF7{tD)$i9C3w| zG#W&|8PsCXq^?S!vL?AlClI@<0ISx)k-%!B6Ycm&ye)b-OJn(acG{J0TT)O3Z;!0s z2CDEc7(FXj^ooG5i7LJ!NK^w7R1MN%r%$F%(S|gRY(%Ga4x+CI4`xuaAd{WYB=)Xc tEnwQ`v*|(OXgN=df!F6!GwI30e+MUnU!v-a?*IS*07*qoM6N<$f&d@`A$R}) literal 0 HcmV?d00001 diff --git a/Assets/Sprites/GoodBunny/bunny_left.png.import b/Assets/Sprites/GoodBunny/bunny_left.png.import new file mode 100644 index 0000000..432e875 --- /dev/null +++ b/Assets/Sprites/GoodBunny/bunny_left.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b0x834s5l1qot" +path="res://.godot/imported/bunny_left.png-91e2fa49ed65451bd7003fe4ee0265af.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/GoodBunny/bunny_left.png" +dest_files=["res://.godot/imported/bunny_left.png-91e2fa49ed65451bd7003fe4ee0265af.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/GoodBunny/bunny_righ.png b/Assets/Sprites/GoodBunny/bunny_righ.png new file mode 100644 index 0000000000000000000000000000000000000000..0c14cabfa0a0e28310c74b22aee6af670b5d90f7 GIT binary patch literal 1182 zcmV;P1Y!G$P)Iqt;UZv0Vj1Ajqz!e*6Jc|W& zRx?1`>uHDxjDcFjdODwQvY-kodn~B%GLc~M$deniz0`UJX_`rk2-eP^MrbgBO3pqf zfB`Rklr#NS1_;`WH-XR!f*o{#mRUw4??@yDbq7QaItFHKNGCIjp88@xqUrOmAGc3$ z-aRV|svu}g(kl6K&_FFP>>{s{FC9Bzv<4Q`X2rrbdyiNzFiLfx5(Uwdw4~P#RObjF zs^WvRkboi(?!Y9x^WGp)@uJYs1eI-JgUw*|XnMAx(xX*evnKUfgO>VGY-}hf0y|(& z4J4@SqFRHTW`yfeR@H8h<~TaW5wW(89Z>9#Q3DF9c;g0GEtiMXdK%T^@0V{y^~(=0 zMAr|+CQv6##4K;oqOPRy3!OTk${(W!8dS-N5~v2$8MoIAGbHdSDo1-$nZUGmG)9h2 z6QV6(95H*u6*>@`1E}WB2Z4c}9B7h;fD%6Tmp&q??BNC=k0465V4jBSLt@9p$;=A} zX*Ckzpq>PVtF5&*o&ga8nh#Y#ke-N0f^XD9#>S#8a5OR}i&Dc5)G%WL%m~xsI9V~9 zzya%M_lG3n*6KKpxII#IVH{NJ<{eOUtETC|4lu%D1xcLu%(Yi^97=C`Iv?=r@gsO< zRXUD@#YQj^#e?dA;$Vox2*mgjcmSydiu4_J2BX%8o53!=BgKFNb_WJrS8#W(S$m8f zFa%U#;@VH9uo)u=(p`JwDhF7TgsO)T!ebUq^*#u|Td=aNwmv5D>;-n~v|A#>%1tCJ zm!RnoGEgCuSSD8ik}NEpF37AUk^+U*ppQF_WslA3oMU|dR|G2zAdxh?B&h>l{i#kU zs2zBbT}Q>TAN$MCZMPN^F>nu%YN{C1Zdn)_70|Q4W&&(;qFUQF;z)IoaTTnu^{IT` z$&2pJ6g3yYSx4pXd(u8AdQA-|2V(A>+w%dRlA10 zfj__A{vLzBeEabV@3;@_-TydV?>xQxv*(>Lo(^`#LD@Na1KYcQ0m#?y|3Ciz`NF{Z zp&_`hj#tlIJ^QkG%N+kWpazqinV4cO0jpjJ=I29y0P-fNH|od)(VMFYYOfRZ?r%C7 zk?0y&UQlY=FZ1nMKE{iMRQxWt9TSso?1Flyj$Is6T_P=v59*3e2EbZ_DiY93V3j*k zpuR)8{d^i7llZ_v1>op)z^0RFXKEz;baDfz9zZq;uB&dkw&U*lPIpam(`t;ht4`1n ztyq!$I8XstM>v@ah()-B6wr;f1Lh)-kjRM)4ZUvKboa?RBDs$2vz?X?>Pk+gwM4=tVokZo02e#s zafq`@ycYh6L7l}11nMeIRzR`>Ac%$o+5wA(TC@Xo%-{nCl@c?+NohzQJTa|qMs72E z#L2CYdktY!7`6q1L8Vsj0QY!;YSXt0sH6GdKqX5ZyJ|cap@K2PQOS#`?0C?N_kj%r z0(BKYPWL#Tx_D%Zr!(1*P%#+<$P-ir0F{)1PPQbdo~sVJ;xGC_a6m-rHn*&)&Oe-FQsWak+JgUf4-}d(gd@_@!TG4{?)#5D${&0kQ6O z41CMK8jp!OE{>`}tu2`2d*TlReNff?uHwDZL?INYG8wJJsBzw^^)ytStX6HT??+ac z$vR9>We}~u*0r_+G2uZSB!q&*D{Xo^5D4V>CaB(GHC$%Mg1J-2`#EmsI(G6_F4zZo8jkIk$A-v`#N$F_x?<57tyXo80Xp=tst*Eo zpwaV_<6Ka!Nk<6r#JgptHUZHGc^Yb=^-8BpHgJRX%!t_-mIqP)Px%4@pEpRA@u(m_10uFcg4$=&T?j2>vXNf(TB6LU9yVZxLN}5ae)ha8wYKLvU~w zTyzyjDd^xRf}_(p2rh0eDwS7wlBUUfFKv&OBVCSO)4VTVUSHBSf{Kqu#qk3V;0<^K z-hh*Vv#q6=D_q;>cTRnZ8cPD}U{a9!1LPS!+K^Zv4HOA3h4290fH&X`^tOS*r5MU- zk#g(|aM+y7toH*$gWMLtdOa7w=ht_p!^yE>X9!7f=romtU;qG4Zl06>@w{>X0HShX zdUZcB^m2WW{7Og98c@AQQIyIL2!?^xc2gV8n>{!hONpQHYFaQQulQC~_?2EHtROAYvjvV!u0fL$jlV{+_&S0-&ryNsnJsg zL;&3Ax!|=2&@E)9fHEK%Jyi=#kE8K1v_agqcSOYr8c|hLElOelm*8CiaMACQh++d} z0xa}B1^tVyB(?~^H8^LW{s6EcQJ3Sg4X{sv3Xmr_R|`CVHy}1pBmt#6BXUnzDZu(; zN4)Y;4Y@74)j-bz=r1U&0esJg%_^vVUpx9YZh8fOn;3~lFZWWjf-9eCs@RuPylHo3 jCiQ_r{dS;t?9%oRlFpn^sg!$G00000NkvXXu0mjfcGvmr literal 0 HcmV?d00001 diff --git a/Assets/Sprites/Jesus/Jesus Back.png.import b/Assets/Sprites/Jesus/Jesus Back.png.import new file mode 100644 index 0000000..b6bde28 --- /dev/null +++ b/Assets/Sprites/Jesus/Jesus Back.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ct2del6b6jorm" +path="res://.godot/imported/Jesus Back.png-6132a4979edf4d1442fefae322c4ce7c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/Jesus/Jesus Back.png" +dest_files=["res://.godot/imported/Jesus Back.png-6132a4979edf4d1442fefae322c4ce7c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/Jesus/Jesus Front.png b/Assets/Sprites/Jesus/Jesus Front.png new file mode 100644 index 0000000000000000000000000000000000000000..2f4f5ffb46945897a9fc9a68d043ab8fde1ad7c4 GIT binary patch literal 714 zcmV;*0yX`KP)Px%gh@m}RA@u(m_10tP!PvcbXJfe2%?LlB7&m+@7|*uIwoSo1>&|LV(PD{V4kiT|et;z2qZ$$wViibZTnb?gP}?j==3(oyqkLyl zK@1RQm|LYFP5^9-BMd^M2H?hVWBOe83_##{4v<;_kkTY~Tv(g~m}Y_VB;*QY4xno` z2*pEXk{{kP4kKvCx*X6cks9Erx~$Cmv59fTmaZ`+X~T*F0Pz0tsTiD{E=ofmtdqze z32<`T^FxC`nF9cj&1jZ-Z&ZNl{yH-`xG66fLovT`;IAo_O2z~?<^YBQ76Jf##zCNQ zq?AB}C}|ZyG9o~?+a1hpRRix|+E?E5^< zND7e(pjl96vPPtZ20iKq&O&1fdaq=R0XjDE&yN;Qy7#GK@(&a0LLyS4N&f5TmPg-}bKpP!$pZ=&AtSunj}z091c*61q@8m&E@AAZae}gNbz` z;%(428FPTl6rk1MqzY`4FjD|N%n~WUTPYsbbX72Q(Fhd_J=z(MWbh{aZHPPJVHNLj wn(0m_HfxPPPSL>L`eNu0Ec)L8hp<`u1AIzHUvk$q!vFvP07*qoM6N<$f^x_$LjV8( literal 0 HcmV?d00001 diff --git a/Assets/Sprites/Jesus/Jesus Front.png.import b/Assets/Sprites/Jesus/Jesus Front.png.import new file mode 100644 index 0000000..f35491f --- /dev/null +++ b/Assets/Sprites/Jesus/Jesus Front.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c03lntytfivr1" +path="res://.godot/imported/Jesus Front.png-b78bfa6c3ed674009555f7ab3f93e778.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/Jesus/Jesus Front.png" +dest_files=["res://.godot/imported/Jesus Front.png-b78bfa6c3ed674009555f7ab3f93e778.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/Jesus/Jesus Left.png b/Assets/Sprites/Jesus/Jesus Left.png new file mode 100644 index 0000000000000000000000000000000000000000..fba652ff02c4ec1a41ac63f83d84a9e677ab9b9c GIT binary patch literal 665 zcmV;K0%rY*P)Px%Q%OWYRA@u(nK4TPK@f%S&_7|JRXPmF@kpimsmCYhse~s(5@qkS? zfNAIIwmBtYDS!aDI0aHaGg(0)oN6F30Fd|Rz8*|IsRH@sd2cp1DJ8a&9OF=OAf(C09;MyJPVoDw1h zxZO)_Fj+BL00-M!L0{7uZX0d3LKG=L@BQ#VzX3Riz=Ajc?fR}wr0(~{>O~~ZSOd1= z!_`~>RwkZ85Y7PTx7t>cI)KbmS2a0+=>Qrk00oJwfLe^AIiOQQS9MYwsCrHSkknL| zsR5uiB%;8;09+0ygy^dRsRNjP|L_x4!1+>YYeQEH#v1_q?@0l82<{HGv!-{tUk*)V z-Oq4ataB0K#YF-jiFF3pTU%iNtWtkjOJe^4{OyQ-dp8co00000NkvXXu0mjf$}|)k literal 0 HcmV?d00001 diff --git a/Assets/Sprites/Jesus/Jesus Left.png.import b/Assets/Sprites/Jesus/Jesus Left.png.import new file mode 100644 index 0000000..34a5751 --- /dev/null +++ b/Assets/Sprites/Jesus/Jesus Left.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cn4kqa1p845wl" +path="res://.godot/imported/Jesus Left.png-2949c2879ed5f5e8def57f2eb1498de4.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Sprites/Jesus/Jesus Left.png" +dest_files=["res://.godot/imported/Jesus Left.png-2949c2879ed5f5e8def57f2eb1498de4.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/Jesus/Jesus Spritesheet.png b/Assets/Sprites/Jesus/Jesus Spritesheet.png new file mode 100644 index 0000000000000000000000000000000000000000..3d67761e0ea3f162fe9265323c092315313bd96b GIT binary patch literal 7347 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 literal 0 HcmV?d00001 diff --git a/Assets/Sprites/bunny_left.png.import b/Assets/Sprites/Jesus/Shadow.png.import similarity index 65% rename from Assets/Sprites/bunny_left.png.import rename to Assets/Sprites/Jesus/Shadow.png.import index 79013f4..dbfe369 100644 --- a/Assets/Sprites/bunny_left.png.import +++ b/Assets/Sprites/Jesus/Shadow.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://dynqs8dq175ty" -path="res://.godot/imported/bunny_left.png-b0a65864e50a1d10579cf71a4bd59148.ctex" +uid="uid://cubc3m81pdyvq" +path="res://.godot/imported/Shadow.png-e182ddfbb5e0bd7753fe3ec1e6b362c7.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Assets/Sprites/bunny_left.png" -dest_files=["res://.godot/imported/bunny_left.png-b0a65864e50a1d10579cf71a4bd59148.ctex"] +source_file="res://Assets/Sprites/Jesus/Shadow.png" +dest_files=["res://.godot/imported/Shadow.png-e182ddfbb5e0bd7753fe3ec1e6b362c7.ctex"] [params] @@ -31,4 +31,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=0 +detect_3d/compress_to=1 diff --git a/Assets/Sprites/TileMap.png b/Assets/Sprites/TileMap.png new file mode 100644 index 0000000000000000000000000000000000000000..33988e175dc93dd9eb56a9b2f915a180f8ac8c2a GIT binary patch literal 1509 zcmbtU{Z~?V82>72s5DzU2eizWcARZHYRoLBL#-@lZeeA1)D)9Bmy$FsDGA|Z*;+4j z%3P^QtPHgT%Rmj~dTQa?DPJ;WY6@kWY0}jc&%a?0EXg0zv3X z>%LX1xQ?IIR5$b$75VcT3GQAayFOq2!A<7ky89C??28WrA)gqeF4BYU)KyWzIL+)S z-Q$v8pF~&Jn0yo4ceGj4LK0gvjBt3YfYeto3}1mV8361j0zs^;plh7ceXCryaUcij zKG|Z;Wfx^blcp_j!JqPFdHRa7rFoZBsOJ<(_nm@vGWm@#mN^NB5?pi9Q$6U_NzEE8 zlz;Hfq-LmiTLwRfn7utbnSp7D;C0jvaDgurvr*2FB}qFYD{qyAJGqFjWA+gW1z3rB z&@~p016VY+9+1wXzj(CHOjAhdZgMX%_YAXHL*(TBSdy3?nTOd`&JfrMcH8fW1}+N4dqqIUx~6(V$#fQ z@k*VTds~7;H4*=^N-*Wk$ zrL~G@6ZBAVtXBk6x_?5>j1OAOwCf!2^Q#6tDWG02X63z#9)L^I_q*qRC{6Y}d#MBB z7r>{3WErdxy|CXFVNLo~7C*|SjUxL{qQN^sYvJzOqZi_GpTqfM28g(Z-=KmV02?hB zZy8LyyvOu|w_y^#c~S@u0ZR z7`s|&xC(0*ZVw-P$^%x0@k+5jBppe;bkikt!56n3B0gn1 zt9N^&QrQ2ih8odp4+<*vQx(@i65|?~PbF6NctGn0eC3og{f4I6j`rpFbq`HPA7Ja* zDKYCXQ4AXj1RJ|Ki>xmhpwVR1NEu0KX8U;;)R;&>w}nQ7n$2e)sCtjaJ$L+<`WbCb z*tkY#Jh3~WU5QDVFA;f9HlM+JGhJb`Gc;9d^?+=+xS`ob*!2WlK-F7@RZ%GxdS(OG ztb*zv^tu7b(P#Z@4=!Obmi>Sum&&lLX*NQu9Yi?>jzL<8BocHb!e1p=MnZgB%z9l{ zgROe{?b5*nfO8LukZIniO)(w2w-*r0r{0<1KYKXLuJ!wd3S5tj~XM{+*PYK*O_g-9(9^@L+ZB- rb7_PUlF-)WRHl-E$2W-HusKq?F7@y~VxO#i literal 0 HcmV?d00001 diff --git a/Assets/Sprites/bunny_up.png.import b/Assets/Sprites/TileMap.png.import similarity index 65% rename from Assets/Sprites/bunny_up.png.import rename to Assets/Sprites/TileMap.png.import index 52a2089..b55c6da 100644 --- a/Assets/Sprites/bunny_up.png.import +++ b/Assets/Sprites/TileMap.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://xbx6qrjbu5h7" -path="res://.godot/imported/bunny_up.png-d9c6d22cb180401f29d7e9a4fd388bb1.ctex" +uid="uid://bqi3ddjrcj2bh" +path="res://.godot/imported/TileMap.png-5a8ebee45e38c1e4c53b5e5cf69bfe18.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Assets/Sprites/bunny_up.png" -dest_files=["res://.godot/imported/bunny_up.png-d9c6d22cb180401f29d7e9a4fd388bb1.ctex"] +source_file="res://Assets/Sprites/TileMap.png" +dest_files=["res://.godot/imported/TileMap.png-5a8ebee45e38c1e4c53b5e5cf69bfe18.ctex"] [params] @@ -31,4 +31,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=0 +detect_3d/compress_to=1 diff --git a/Assets/Tileset.tres b/Assets/Tileset.tres new file mode 100644 index 0000000..571b83b --- /dev/null +++ b/Assets/Tileset.tres @@ -0,0 +1,496 @@ +[gd_resource type="TileSet" load_steps=3 format=3 uid="uid://bj7uu2180mie3"] + +[ext_resource type="Texture2D" uid="uid://bqi3ddjrcj2bh" path="res://Assets/Sprites/TileMap.png" id="1_cl3se"] + +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_mgef5"] +texture = ExtResource("1_cl3se") +texture_region_size = Vector2i(32, 32) +0:0/0 = 0 +0:0/0/terrain_set = 0 +0:0/0/terrain = 0 +0:0/0/probability = 2.0 +0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:0/0/physics_layer_0/angular_velocity = 0.0 +0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -12, 16, -12, -8, -8.5, -12, 8.5, -12, 12, -8) +0:0/0/terrains_peering_bit/bottom_side = 0 +1:0/0 = 0 +1:0/0/terrain_set = 0 +1:0/0/terrain = 0 +1:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:0/0/physics_layer_0/angular_velocity = 0.0 +1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -12, 16, -12, -8, -8, -12, 16, -12, 16, 12) +1:0/0/terrains_peering_bit/right_side = 0 +1:0/0/terrains_peering_bit/bottom_side = 0 +2:0/0 = 0 +2:0/0/terrain_set = 0 +2:0/0/terrain = 0 +2:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:0/0/physics_layer_0/angular_velocity = 0.0 +2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, 16, -12, 16, 12, 12.5, 12.5, 12, 16, -12, 16, -12.5, 12.5) +2:0/0/terrains_peering_bit/right_side = 0 +2:0/0/terrains_peering_bit/bottom_side = 0 +2:0/0/terrains_peering_bit/left_side = 0 +3:0/0 = 0 +3:0/0/terrain_set = 0 +3:0/0/terrain = 0 +3:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:0/0/physics_layer_0/angular_velocity = 0.0 +3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -12, 8, -12, 12, -8, 12, 16, -12, 16) +3:0/0/terrains_peering_bit/bottom_side = 0 +3:0/0/terrains_peering_bit/left_side = 0 +4:0/0 = 0 +4:0/0/terrain_set = 0 +4:0/0/terrain = 0 +4:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:0/0/physics_layer_0/angular_velocity = 0.0 +4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12, 12.5, 12.5) +4:0/0/terrains_peering_bit/right_side = 0 +4:0/0/terrains_peering_bit/bottom_side = 0 +4:0/0/terrains_peering_bit/left_side = 0 +4:0/0/terrains_peering_bit/top_left_corner = 0 +4:0/0/terrains_peering_bit/top_side = 0 +5:0/0 = 0 +5:0/0/terrain_set = 0 +5:0/0/terrain = 0 +5:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:0/0/physics_layer_0/angular_velocity = 0.0 +5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -12, 16, -12, 16, 16, -12, 16) +5:0/0/terrains_peering_bit/right_side = 0 +5:0/0/terrains_peering_bit/bottom_right_corner = 0 +5:0/0/terrains_peering_bit/bottom_side = 0 +5:0/0/terrains_peering_bit/left_side = 0 +6:0/0 = 0 +6:0/0/terrain_set = 0 +6:0/0/terrain = 0 +6:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:0/0/physics_layer_0/angular_velocity = 0.0 +6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 16, 12, 16, -12, -16, -12, -16, 16, 12, 16) +6:0/0/terrains_peering_bit/right_side = 0 +6:0/0/terrains_peering_bit/bottom_side = 0 +6:0/0/terrains_peering_bit/bottom_left_corner = 0 +6:0/0/terrains_peering_bit/left_side = 0 +7:0/0 = 0 +7:0/0/terrain_set = 0 +7:0/0/terrain = 0 +7:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:0/0/physics_layer_0/angular_velocity = 0.0 +7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, -12.5, -12.5, -12, -16, 16, -16, 16, 12, 12.5, 12.5, 12, 16, -12, 16, -12.5, 12.5) +7:0/0/terrains_peering_bit/right_side = 0 +7:0/0/terrains_peering_bit/bottom_side = 0 +7:0/0/terrains_peering_bit/left_side = 0 +7:0/0/terrains_peering_bit/top_side = 0 +7:0/0/terrains_peering_bit/top_right_corner = 0 +8:0/0 = 0 +8:0/0/terrain_set = 0 +8:0/0/terrain = 0 +8:0/0/probability = 2.0 +8:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:0/0/physics_layer_0/angular_velocity = 0.0 +8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, 16, -12, 16, -12, -8, -8, -12, 16, -12) +8:0/0/terrains_peering_bit/right_side = 0 +8:0/0/terrains_peering_bit/bottom_right_corner = 0 +8:0/0/terrains_peering_bit/bottom_side = 0 +9:0/0 = 0 +9:0/0/terrain_set = 0 +9:0/0/terrain = 0 +9:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:0/0/physics_layer_0/angular_velocity = 0.0 +9:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 16, -16, 16, -16, -12, -12.5, -12.5, -12, -16, 12, -16) +9:0/0/terrains_peering_bit/right_side = 0 +9:0/0/terrains_peering_bit/bottom_right_corner = 0 +9:0/0/terrains_peering_bit/bottom_side = 0 +9:0/0/terrains_peering_bit/bottom_left_corner = 0 +9:0/0/terrains_peering_bit/left_side = 0 +9:0/0/terrains_peering_bit/top_side = 0 +10:0/0 = 0 +10:0/0/terrain_set = 0 +10:0/0/terrain = 0 +10:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:0/0/physics_layer_0/angular_velocity = 0.0 +10:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 16, -16, 16, -16, -12) +10:0/0/terrains_peering_bit/right_side = 0 +10:0/0/terrains_peering_bit/bottom_right_corner = 0 +10:0/0/terrains_peering_bit/bottom_side = 0 +10:0/0/terrains_peering_bit/bottom_left_corner = 0 +10:0/0/terrains_peering_bit/left_side = 0 +11:0/0 = 0 +11:0/0/terrain_set = 0 +11:0/0/terrain = 0 +11:0/0/probability = 2.0 +11:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:0/0/physics_layer_0/angular_velocity = 0.0 +11:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 16, -16, -12, 8, -12, 12, -8, 12, 16) +11:0/0/terrains_peering_bit/bottom_side = 0 +11:0/0/terrains_peering_bit/bottom_left_corner = 0 +11:0/0/terrains_peering_bit/left_side = 0 +0:1/0 = 0 +0:1/0/terrain_set = 0 +0:1/0/terrain = 0 +0:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:1/0/physics_layer_0/angular_velocity = 0.0 +0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12, 16, -12, 16) +0:1/0/terrains_peering_bit/bottom_side = 0 +0:1/0/terrains_peering_bit/top_side = 0 +1:1/0 = 0 +1:1/0/terrain_set = 0 +1:1/0/terrain = 0 +1:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:1/0/physics_layer_0/angular_velocity = 0.0 +1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -12, 16, -12, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12, 12.5, 12.5) +1:1/0/terrains_peering_bit/right_side = 0 +1:1/0/terrains_peering_bit/bottom_side = 0 +1:1/0/terrains_peering_bit/top_side = 0 +2:1/0 = 0 +2:1/0/terrain_set = 0 +2:1/0/terrain = 0 +2:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:1/0/physics_layer_0/angular_velocity = 0.0 +2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, -12.5, -12.5, -12, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12, 12.5, 12.5, 12, 16, -12, 16, -12.5, 12.5) +2:1/0/terrains_peering_bit/right_side = 0 +2:1/0/terrains_peering_bit/bottom_side = 0 +2:1/0/terrains_peering_bit/left_side = 0 +2:1/0/terrains_peering_bit/top_side = 0 +3:1/0 = 0 +3:1/0/terrain_set = 0 +3:1/0/terrain = 0 +3:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:1/0/physics_layer_0/angular_velocity = 0.0 +3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -12, -12.5, -12.5) +3:1/0/terrains_peering_bit/bottom_side = 0 +3:1/0/terrains_peering_bit/left_side = 0 +3:1/0/terrains_peering_bit/top_side = 0 +4:1/0 = 0 +4:1/0/terrain_set = 0 +4:1/0/terrain = 0 +4:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:1/0/physics_layer_0/angular_velocity = 0.0 +4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 12, -16, -12, -16, -12, 16, 16, 16, 16, -12) +4:1/0/terrains_peering_bit/right_side = 0 +4:1/0/terrains_peering_bit/bottom_right_corner = 0 +4:1/0/terrains_peering_bit/bottom_side = 0 +4:1/0/terrains_peering_bit/top_side = 0 +5:1/0 = 0 +5:1/0/terrain_set = 0 +5:1/0/terrain = 0 +5:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:1/0/physics_layer_0/angular_velocity = 0.0 +5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 16, -16, 16, 16, -16, 16, -16, -12) +5:1/0/terrains_peering_bit/right_side = 0 +5:1/0/terrains_peering_bit/bottom_right_corner = 0 +5:1/0/terrains_peering_bit/bottom_side = 0 +5:1/0/terrains_peering_bit/bottom_left_corner = 0 +5:1/0/terrains_peering_bit/left_side = 0 +5:1/0/terrains_peering_bit/top_side = 0 +5:1/0/terrains_peering_bit/top_right_corner = 0 +6:1/0 = 0 +6:1/0/terrain_set = 0 +6:1/0/terrain = 0 +6:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:1/0/physics_layer_0/angular_velocity = 0.0 +6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 16, -16, 16, -16, -16, 12, -16) +6:1/0/terrains_peering_bit/right_side = 0 +6:1/0/terrains_peering_bit/bottom_right_corner = 0 +6:1/0/terrains_peering_bit/bottom_side = 0 +6:1/0/terrains_peering_bit/bottom_left_corner = 0 +6:1/0/terrains_peering_bit/left_side = 0 +6:1/0/terrains_peering_bit/top_left_corner = 0 +6:1/0/terrains_peering_bit/top_side = 0 +7:1/0 = 0 +7:1/0/terrain_set = 0 +7:1/0/terrain = 0 +7:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:1/0/physics_layer_0/angular_velocity = 0.0 +7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 12, -16, 12, 16, -16, 16, -16, -12) +7:1/0/terrains_peering_bit/bottom_side = 0 +7:1/0/terrains_peering_bit/bottom_left_corner = 0 +7:1/0/terrains_peering_bit/left_side = 0 +7:1/0/terrains_peering_bit/top_side = 0 +8:1/0 = 0 +8:1/0/terrain_set = 0 +8:1/0/terrain = 0 +8:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:1/0/physics_layer_0/angular_velocity = 0.0 +8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 16, -16, 16, 16, -12, 16) +8:1/0/terrains_peering_bit/right_side = 0 +8:1/0/terrains_peering_bit/bottom_right_corner = 0 +8:1/0/terrains_peering_bit/bottom_side = 0 +8:1/0/terrains_peering_bit/top_side = 0 +8:1/0/terrains_peering_bit/top_right_corner = 0 +9:1/0 = 0 +9:1/0/terrain_set = 0 +9:1/0/terrain = 0 +9:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:1/0/physics_layer_0/angular_velocity = 0.0 +9:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -16, 16, 12, 12.5, 12.5, 12, 16, -16, 16, -16, -12, -12.5, -12.5, -12, -16) +9:1/0/terrains_peering_bit/right_side = 0 +9:1/0/terrains_peering_bit/bottom_side = 0 +9:1/0/terrains_peering_bit/bottom_left_corner = 0 +9:1/0/terrains_peering_bit/left_side = 0 +9:1/0/terrains_peering_bit/top_side = 0 +9:1/0/terrains_peering_bit/top_right_corner = 0 +11:1/0 = 0 +11:1/0/terrain_set = 0 +11:1/0/terrain = 0 +11:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:1/0/physics_layer_0/angular_velocity = 0.0 +11:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -16, 16, -16, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12) +11:1/0/terrains_peering_bit/right_side = 0 +11:1/0/terrains_peering_bit/bottom_side = 0 +11:1/0/terrains_peering_bit/bottom_left_corner = 0 +11:1/0/terrains_peering_bit/left_side = 0 +11:1/0/terrains_peering_bit/top_left_corner = 0 +11:1/0/terrains_peering_bit/top_side = 0 +0:2/0 = 0 +0:2/0/terrain_set = 0 +0:2/0/terrain = 0 +0:2/0/probability = 2.0 +0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:2/0/physics_layer_0/angular_velocity = 0.0 +0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12, 8, 8.5, 12, -8.5, 12, -12, 8) +0:2/0/terrains_peering_bit/top_side = 0 +1:2/0 = 0 +1:2/0/terrain_set = 0 +1:2/0/terrain = 0 +1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:2/0/physics_layer_0/angular_velocity = 0.0 +1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 12, -8, 12, -12, 8, -12, -16, 12, -16) +1:2/0/terrains_peering_bit/right_side = 0 +1:2/0/terrains_peering_bit/top_side = 0 +2:2/0 = 0 +2:2/0/terrain_set = 0 +2:2/0/terrain = 0 +2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:2/0/physics_layer_0/angular_velocity = 0.0 +2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, -16, 12, -16, -12, -12.5, -12.5, -12, -16, 12, -16, 12.5, -12.5) +2:2/0/terrains_peering_bit/right_side = 0 +2:2/0/terrains_peering_bit/left_side = 0 +2:2/0/terrains_peering_bit/top_side = 0 +3:2/0 = 0 +3:2/0/terrain_set = 0 +3:2/0/terrain = 0 +3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:2/0/physics_layer_0/angular_velocity = 0.0 +3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 12, -16, 12, 8, 8, 12, -16, 12, -16, -12) +3:2/0/terrains_peering_bit/left_side = 0 +3:2/0/terrains_peering_bit/top_side = 0 +4:2/0 = 0 +4:2/0/terrain_set = 0 +4:2/0/terrain = 0 +4:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:2/0/physics_layer_0/angular_velocity = 0.0 +4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -12, 16, -12, -16, 16, -16, 16, 12) +4:2/0/terrains_peering_bit/right_side = 0 +4:2/0/terrains_peering_bit/bottom_side = 0 +4:2/0/terrains_peering_bit/top_side = 0 +4:2/0/terrains_peering_bit/top_right_corner = 0 +5:2/0 = 0 +5:2/0/terrain_set = 0 +5:2/0/terrain = 0 +5:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:2/0/physics_layer_0/angular_velocity = 0.0 +5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -16, 16, -16, 16, 16, -12, 16) +5:2/0/terrains_peering_bit/right_side = 0 +5:2/0/terrains_peering_bit/bottom_right_corner = 0 +5:2/0/terrains_peering_bit/bottom_side = 0 +5:2/0/terrains_peering_bit/left_side = 0 +5:2/0/terrains_peering_bit/top_left_corner = 0 +5:2/0/terrains_peering_bit/top_side = 0 +5:2/0/terrains_peering_bit/top_right_corner = 0 +6:2/0 = 0 +6:2/0/terrain_set = 0 +6:2/0/terrain = 0 +6:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:2/0/physics_layer_0/angular_velocity = 0.0 +6:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -16, 16, -16, -16, 16, -16, 16, 12) +6:2/0/terrains_peering_bit/right_side = 0 +6:2/0/terrains_peering_bit/bottom_side = 0 +6:2/0/terrains_peering_bit/bottom_left_corner = 0 +6:2/0/terrains_peering_bit/left_side = 0 +6:2/0/terrains_peering_bit/top_left_corner = 0 +6:2/0/terrains_peering_bit/top_side = 0 +6:2/0/terrains_peering_bit/top_right_corner = 0 +7:2/0 = 0 +7:2/0/terrain_set = 0 +7:2/0/terrain = 0 +7:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:2/0/physics_layer_0/angular_velocity = 0.0 +7:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -12, 16, 12, 16, 12, -16, -16, -16, -16, 12) +7:2/0/terrains_peering_bit/bottom_side = 0 +7:2/0/terrains_peering_bit/left_side = 0 +7:2/0/terrains_peering_bit/top_left_corner = 0 +7:2/0/terrains_peering_bit/top_side = 0 +8:2/0 = 0 +8:2/0/terrain_set = 0 +8:2/0/terrain = 0 +8:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:2/0/physics_layer_0/angular_velocity = 0.0 +8:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 16, -16, 16, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -12) +8:2/0/terrains_peering_bit/right_side = 0 +8:2/0/terrains_peering_bit/bottom_right_corner = 0 +8:2/0/terrains_peering_bit/bottom_side = 0 +8:2/0/terrains_peering_bit/left_side = 0 +8:2/0/terrains_peering_bit/top_side = 0 +8:2/0/terrains_peering_bit/top_right_corner = 0 +9:2/0 = 0 +9:2/0/terrain_set = 0 +9:2/0/terrain = 0 +9:2/0/probability = 2.0 +9:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:2/0/physics_layer_0/angular_velocity = 0.0 +9:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:2/0/terrains_peering_bit/right_side = 0 +9:2/0/terrains_peering_bit/bottom_right_corner = 0 +9:2/0/terrains_peering_bit/bottom_side = 0 +9:2/0/terrains_peering_bit/bottom_left_corner = 0 +9:2/0/terrains_peering_bit/left_side = 0 +9:2/0/terrains_peering_bit/top_left_corner = 0 +9:2/0/terrains_peering_bit/top_side = 0 +9:2/0/terrains_peering_bit/top_right_corner = 0 +10:2/0 = 0 +10:2/0/terrain_set = 0 +10:2/0/terrain = 0 +10:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:2/0/physics_layer_0/angular_velocity = 0.0 +10:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 16, -12, 16, -12.5, 12.5, -16, 12) +10:2/0/terrains_peering_bit/right_side = 0 +10:2/0/terrains_peering_bit/bottom_right_corner = 0 +10:2/0/terrains_peering_bit/bottom_side = 0 +10:2/0/terrains_peering_bit/left_side = 0 +10:2/0/terrains_peering_bit/top_left_corner = 0 +10:2/0/terrains_peering_bit/top_side = 0 +11:2/0 = 0 +11:2/0/terrain_set = 0 +11:2/0/terrain = 0 +11:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:2/0/physics_layer_0/angular_velocity = 0.0 +11:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -16, 16, -16, -16, 12, -16) +11:2/0/terrains_peering_bit/bottom_side = 0 +11:2/0/terrains_peering_bit/bottom_left_corner = 0 +11:2/0/terrains_peering_bit/left_side = 0 +11:2/0/terrains_peering_bit/top_left_corner = 0 +11:2/0/terrains_peering_bit/top_side = 0 +0:3/0 = 0 +0:3/0/terrain_set = 0 +0:3/0/terrain = 0 +0:3/0/probability = 2.0 +0:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:3/0/physics_layer_0/angular_velocity = 0.0 +0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 12, -12, 8, -12, -8, -8, -12, 8, -12, 12, -8.5, 12, 8.5, 8, 12) +1:3/0 = 0 +1:3/0/terrain_set = 0 +1:3/0/terrain = 0 +1:3/0/probability = 2.0 +1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:3/0/physics_layer_0/angular_velocity = 0.0 +1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, -8, 12, -12, 8.5, -12, -8.5, -8, -12) +1:3/0/terrains_peering_bit/right_side = 0 +2:3/0 = 0 +2:3/0/terrain_set = 0 +2:3/0/terrain = 0 +2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:3/0/physics_layer_0/angular_velocity = 0.0 +2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, -16, 12, -16, -12) +2:3/0/terrains_peering_bit/right_side = 0 +2:3/0/terrains_peering_bit/left_side = 0 +3:3/0 = 0 +3:3/0/terrain_set = 0 +3:3/0/terrain = 0 +3:3/0/probability = 2.0 +3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:3/0/physics_layer_0/angular_velocity = 0.0 +3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, 8, -12, 12, -8.5, 12, 8.5, 8, 12) +3:3/0/terrains_peering_bit/left_side = 0 +4:3/0 = 0 +4:3/0/terrain_set = 0 +4:3/0/terrain = 0 +4:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:3/0/physics_layer_0/angular_velocity = 0.0 +4:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, 12.5, 12.5, 12, 16, -16, 16, -16, -12, -12.5, -12.5, -12, -16, 12, -16, 12.5, -12.5) +4:3/0/terrains_peering_bit/right_side = 0 +4:3/0/terrains_peering_bit/bottom_side = 0 +4:3/0/terrains_peering_bit/bottom_left_corner = 0 +4:3/0/terrains_peering_bit/left_side = 0 +4:3/0/terrains_peering_bit/top_side = 0 +5:3/0 = 0 +5:3/0/terrain_set = 0 +5:3/0/terrain = 0 +5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:3/0/physics_layer_0/angular_velocity = 0.0 +5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -16, -12, -16, 12, 16, 12, 16, -16, -12, -16) +5:3/0/terrains_peering_bit/right_side = 0 +5:3/0/terrains_peering_bit/left_side = 0 +5:3/0/terrains_peering_bit/top_side = 0 +5:3/0/terrains_peering_bit/top_right_corner = 0 +6:3/0 = 0 +6:3/0/terrain_set = 0 +6:3/0/terrain = 0 +6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:3/0/physics_layer_0/angular_velocity = 0.0 +6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 12, -16, 12, -16, -16, 12, -16) +6:3/0/terrains_peering_bit/right_side = 0 +6:3/0/terrains_peering_bit/left_side = 0 +6:3/0/terrains_peering_bit/top_left_corner = 0 +6:3/0/terrains_peering_bit/top_side = 0 +7:3/0 = 0 +7:3/0/terrain_set = 0 +7:3/0/terrain = 0 +7:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:3/0/physics_layer_0/angular_velocity = 0.0 +7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -12, -12.5, -12.5) +7:3/0/terrains_peering_bit/right_side = 0 +7:3/0/terrains_peering_bit/bottom_right_corner = 0 +7:3/0/terrains_peering_bit/bottom_side = 0 +7:3/0/terrains_peering_bit/left_side = 0 +7:3/0/terrains_peering_bit/top_side = 0 +8:3/0 = 0 +8:3/0/terrain_set = 0 +8:3/0/terrain = 0 +8:3/0/probability = 2.0 +8:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:3/0/physics_layer_0/angular_velocity = 0.0 +8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -16, 16, 12, -8, 12, -12, 8, -12, -16) +8:3/0/terrains_peering_bit/right_side = 0 +8:3/0/terrains_peering_bit/top_side = 0 +8:3/0/terrains_peering_bit/top_right_corner = 0 +9:3/0 = 0 +9:3/0/terrain_set = 0 +9:3/0/terrain = 0 +9:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:3/0/physics_layer_0/angular_velocity = 0.0 +9:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -16, 16, -16, 16, 12) +9:3/0/terrains_peering_bit/right_side = 0 +9:3/0/terrains_peering_bit/left_side = 0 +9:3/0/terrains_peering_bit/top_left_corner = 0 +9:3/0/terrains_peering_bit/top_side = 0 +9:3/0/terrains_peering_bit/top_right_corner = 0 +10:3/0 = 0 +10:3/0/terrain_set = 0 +10:3/0/terrain = 0 +10:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:3/0/physics_layer_0/angular_velocity = 0.0 +10:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -16, 16, -16, 16, 12, 12.5, 12.5, 12, 16, -12, 16) +10:3/0/terrains_peering_bit/right_side = 0 +10:3/0/terrains_peering_bit/bottom_side = 0 +10:3/0/terrains_peering_bit/left_side = 0 +10:3/0/terrains_peering_bit/top_left_corner = 0 +10:3/0/terrains_peering_bit/top_side = 0 +10:3/0/terrains_peering_bit/top_right_corner = 0 +11:3/0 = 0 +11:3/0/terrain_set = 0 +11:3/0/terrain = 0 +11:3/0/probability = 2.0 +11:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:3/0/physics_layer_0/angular_velocity = 0.0 +11:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 12, -16, 12, 8, 8, 12, -16, 12) +11:3/0/terrains_peering_bit/left_side = 0 +11:3/0/terrains_peering_bit/top_left_corner = 0 +11:3/0/terrains_peering_bit/top_side = 0 + +[resource] +tile_size = Vector2i(32, 32) +physics_layer_0/collision_layer = 1 +physics_layer_0/collision_mask = 0 +terrain_set_0/mode = 0 +terrain_set_0/terrain_0/name = "Walls" +terrain_set_0/terrain_0/color = Color(1, 0.301961, 0.329412, 1) +sources/1 = SubResource("TileSetAtlasSource_mgef5") diff --git a/Scenes/Cave.tscn b/Scenes/Cave.tscn new file mode 100644 index 0000000..d3e9115 --- /dev/null +++ b/Scenes/Cave.tscn @@ -0,0 +1,14 @@ +[gd_scene load_steps=3 format=3 uid="uid://chfp8mm3vwh2e"] + +[ext_resource type="TileSet" uid="uid://bj7uu2180mie3" path="res://Assets/Tileset.tres" id="1_a2htf"] +[ext_resource type="Script" path="res://Scripts/MapGenerator.gd" id="2_qvwn8"] + +[node name="Node2D" type="Node2D"] + +[node name="TileMap" type="TileMap" parent="."] +tile_set = ExtResource("1_a2htf") +cell_quadrant_size = 8 +collision_visibility_mode = 1 +format = 2 +script = ExtResource("2_qvwn8") +height = 33 diff --git a/Scenes/PlayerMovement.tscn b/Scenes/PlayerMovement.tscn new file mode 100644 index 0000000..47d5733 --- /dev/null +++ b/Scenes/PlayerMovement.tscn @@ -0,0 +1,154 @@ +[gd_scene load_steps=12 format=3 uid="uid://ccgpsim5nfxd6"] + +[ext_resource type="TileSet" uid="uid://bj7uu2180mie3" path="res://Assets/Tileset.tres" id="1_wkp62"] +[ext_resource type="Script" path="res://Scripts/PlayerController.gd" id="1_x3102"] +[ext_resource type="Script" path="res://Scripts/MapGenerator.gd" id="4_8st0q"] +[ext_resource type="Texture2D" uid="uid://bl7vfn05ul1vu" path="res://Assets/Sprites/Jesus/Jesus Spritesheet.png" id="4_e5cec"] + +[sub_resource type="Animation" id="Animation_kdxam"] +resource_name = "Idle" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="Animation" id="Animation_dwpep"] +resource_name = "MoveDown" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2, 0.4, 0.6), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 1, +"values": [0, 1, 2, 3] +} + +[sub_resource type="Animation" id="Animation_2jvl5"] +resource_name = "MoveLeft" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2, 0.4, 0.6), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 1, +"values": [12, 13, 14, 15] +} + +[sub_resource type="Animation" id="Animation_4ig1u"] +resource_name = "MoveRight" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2, 0.4, 0.6), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 1, +"values": [4, 5, 6, 7] +} + +[sub_resource type="Animation" id="Animation_pswkh"] +resource_name = "MoveUp" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2, 0.4, 0.6), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 1, +"values": [8, 9, 10, 11] +} + +[sub_resource type="Animation" id="Animation_o3hln"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_bi1h3"] +_data = { +"Idle": SubResource("Animation_kdxam"), +"MoveDown": SubResource("Animation_dwpep"), +"MoveLeft": SubResource("Animation_2jvl5"), +"MoveRight": SubResource("Animation_4ig1u"), +"MoveUp": SubResource("Animation_pswkh"), +"RESET": SubResource("Animation_o3hln") +} + +[node name="Player Movement" type="Node2D"] + +[node name="Map Generator" type="TileMap" parent="."] +tile_set = ExtResource("1_wkp62") +cell_quadrant_size = 32 +collision_visibility_mode = 1 +format = 2 +script = ExtResource("4_8st0q") +start_area_size = 3 +start_area_corner_size = 1 + +[node name="Player" type="CharacterBody2D" parent="." node_paths=PackedStringArray("animation_player")] +position = Vector2(960, 512) +scale = Vector2(0.5, 0.5) +collision_layer = 0 +script = ExtResource("1_x3102") +speed = 60 +animation_player = NodePath("Player Animator") + +[node name="Player Sprite" type="Sprite2D" parent="Player"] +position = Vector2(0, -20) +texture = ExtResource("4_e5cec") +hframes = 4 +vframes = 4 + +[node name="Player Collider" type="CollisionPolygon2D" parent="Player"] +polygon = PackedVector2Array(12, 32, -16, 32, -16, -24, 12, -24) + +[node name="Player Camera" type="Camera2D" parent="Player"] +zoom = Vector2(3, 3) +position_smoothing_enabled = true +drag_horizontal_enabled = true +drag_vertical_enabled = true +editor_draw_drag_margin = true + +[node name="Player Animator" type="AnimationPlayer" parent="Player"] +libraries = { +"": SubResource("AnimationLibrary_bi1h3") +} diff --git a/Scripts/MapGenerator.gd b/Scripts/MapGenerator.gd new file mode 100644 index 0000000..d93c357 --- /dev/null +++ b/Scripts/MapGenerator.gd @@ -0,0 +1,269 @@ +extends TileMap + +@export var width := 60 +@export var height := 32 +@export var fill_percentage := 0.65 + +@export var solid_threshold := 7 +@export var nonsolid_threshold := 4 + +@export var start_area_size := 5 +@export var start_area_corner_size := 2 + +@export var cave_gen_iterations := 3 +@export var cave_mine_size_threshold := 80 + +var tile_array : Array + +func _ready(): + var time = generate() + print("time for generation: " + str(time)) + + pass + + +func generate() -> float: + var start_time = Time.get_unix_time_from_system() + + randomize() + setup_tile_data_array() + fill_random_noise() + + for i in cave_gen_iterations: + change_cells_by_neighbor_thresholds() + set_borders_solid() + prepare_player_start_area() + connect_caves(get_caves()) + for i in cave_gen_iterations: + change_cells_by_neighbor_thresholds() + set_borders_solid() + + tile_array_to_terrain() + return Time.get_unix_time_from_system() - start_time + +func setup_tile_data_array(): + tile_array.clear() + tile_array = [] + for x in width: + tile_array.append([]) + for y in height: + tile_array[x].append([]) + +func fill_random_noise(): + for x in width: + for y in height: + if randf() < fill_percentage: + set_tile_solid(x,y) + else: + set_tile_non_solid(x,y) + pass + +func set_borders_solid(): + for x in width: + set_tile_solid(x,0) + set_tile_solid(x,height-1) + for y in height: + set_tile_solid(0,y) + set_tile_solid(width-1,y) + pass + +func prepare_player_start_area(): + var center = Vector2i(width/2, height/2) + for x in range(center.x - start_area_size, center.x + start_area_size): + + # Getting a P factor for the corner "radius" Decission + var p := 0 + if x <= center.x - start_area_size + start_area_corner_size: + p = center.x - start_area_size + start_area_corner_size - x + if x >= center.x + start_area_size - start_area_corner_size: + p = x - ( center.x + start_area_size) + start_area_corner_size + 1 + var p2 = p + + for y in range(center.y - start_area_size, center.y + start_area_size): + # Decide if the tile is part of the Corner or not + if !(p2 > 0 or p2 <= - (start_area_size*2 - p*2)): + set_tile_non_solid(x,y) + p2 -= 1 + pass + +func change_cells_by_neighbor_thresholds(): + for x in range(1, width-1): + for y in range(1, height-1): + # Count Solid Neighbor Cells + var count := 0 + #y-1 + if get_tile_solid(x-1, y-1): count +=1 + if get_tile_solid(x, y-1): count +=1 + if get_tile_solid(x+1, y-1): count +=1 + #y + if get_tile_solid(x-1, y): count +=1 + if get_tile_solid(x+1, y): count +=1 + #y+1 + if get_tile_solid(x-1, y+1): count +=1 + if get_tile_solid(x, y+1): count +=1 + if get_tile_solid(x+1, y+1): count +=1 + + # Check Threshold + if count < nonsolid_threshold: + set_tile_non_solid(x,y) + if count >= solid_threshold: + set_tile_solid(x,y) + pass + +func get_caves() -> Array: + # get caves + var caves := [] + + for x in range (2, width-2): + for y in range (2, height-2): + if get_tile_non_solid(x, y): + flood_fill(x,y, caves) + + for cave in caves: + for tile in cave: + set_tile_non_solid(tile.x,tile.y) + return caves + +func flood_fill(tilex, tiley, caves) -> Array: + var cave := [] + var to_fill := [Vector2i(tilex, tiley)] + while to_fill: + var tile = to_fill.pop_back() + + if !cave.has(tile): + cave.append(tile) + set_tile_solid(tile.x,tile.y) + + #check adjacent cells + var north = Vector2i(tile.x, tile.y+1) + var south = Vector2i(tile.x, tile.y-1) + var east = Vector2i(tile.x+1, tile.y) + var west = Vector2i(tile.x-1, tile.y) + + for dir in [north,south,east,west]: + if get_tile_non_solid(dir.x, dir.y): + if !to_fill.has(dir) and !cave.has(dir): + to_fill.append(dir) + if cave.size() >= cave_mine_size_threshold: + caves.append(cave) + return caves + +func choose_rand(choices): + randomize() + + var rand_index = randi() % choices.size() + return choices[rand_index] + +func connect_caves(caves): + var prev_cave = null + var tunnel_caves = caves.duplicate() + + for cave in tunnel_caves: + if prev_cave: + var new_point = choose_rand(cave) + var prev_point = choose_rand(prev_cave) + + # ensure not the same point + if new_point != prev_point: + create_tunnel(new_point, prev_point, cave) + + prev_cave = cave + pass + +func create_tunnel(point1, point2, cave): + randomize() # for randf + var max_steps = 500 # so game won't hang if walk fails + var steps = 0 + var drunk_x = point2[0] + var drunk_y = point2[1] + + while steps < max_steps and !cave.has(Vector2i(drunk_x, drunk_y)): + steps += 1 + + # set initial dir weights + var n = 1.0 + var s = 1.0 + var e = 1.0 + var w = 1.0 + var weight = 1 + + # weight the random walk against edges + if drunk_x < point1.x: + e += weight + elif drunk_x > point1.x: + w += weight + if drunk_y < point1.y: + s += weight + elif drunk_y > point1.y: + n += weight + + # normalize probabilities so they form a range from 0 to 1 + var total = n + s + e + w + n /= total + s /= total + e /= total + w /= total + + var dx + var dy + + # choose_rand the direction + var choice = randf() + + if 0 <= choice and choice < n: + dx = 0 + dy = -1 + elif n <= choice and choice < (n+s): + dx = 0 + dy = 1 + elif (n+s) <= choice and choice < (n+s+e): + dx = 1 + dy = 0 + else: + dx = -1 + dy = 0 + + # ensure not to walk past edge of map + if (2 < drunk_x + dx and drunk_x + dx < width-2) and \ + (2 < drunk_y + dy and drunk_y + dy < height-2): + drunk_x += dx + drunk_y += dy + + if get_tile_solid(drunk_x, drunk_y): + set_tile_non_solid(drunk_x, drunk_y) + #make tunnel wider + set_tile_non_solid(drunk_x+1, drunk_y) + set_tile_non_solid(drunk_x+1, drunk_y+1) + pass + +func tile_array_to_terrain(): + for x in width: + for y in height: + match tile_array[x][y]: + 0: set_terrain_tile_non_solid(x,y) + 1: set_terrain_tile_solid(x,y) + pass + +# Getter +func get_tile_solid(x : int, y : int) -> bool: + return tile_array[x][y] == 1 + +func get_tile_non_solid(x : int, y : int) -> bool: + return tile_array[x][y] == 0 + +# Setter +func set_tile_solid(x : int, y : int): + tile_array[x][y] = 1 + pass + +func set_tile_non_solid(x : int, y : int): + tile_array[x][y] = 0 + pass + +func set_terrain_tile_solid(x : int, y : int): + self.set_cells_terrain_connect(0, [Vector2i(x,y)], 0, 0, false) + pass + +func set_terrain_tile_non_solid(x : int, y : int): + self.set_cell(0, Vector2i(x,y), -1) + pass diff --git a/Scripts/PlayerController.gd b/Scripts/PlayerController.gd new file mode 100644 index 0000000..584f977 --- /dev/null +++ b/Scripts/PlayerController.gd @@ -0,0 +1,43 @@ +extends CharacterBody2D + +@export var speed = 20 +@export_range(0, 1) var damping_factor = 0.6 +@export var animation_player : AnimationPlayer + +func _physics_process(delta : float): + update_player_movement(delta) + pass + +func get_move_input_vector() -> Vector2: + var input_direction = Input.get_vector("move_left", "move_right", "move_up", "move_down").normalized() + return input_direction + +func update_player_movement(delta : float): + var input = get_move_input_vector() + + # Damp Movement if not moving, Accelerate if Moving + var is_moving = input != Vector2.ZERO + self.velocity = input * speed * delta * 60 if is_moving else self.velocity * (1 - min(1, damping_factor * 60 * delta)) + + update_player_animation() + + # Update Objects Physics calculations + self.move_and_slide() + pass + +func update_player_animation(): + var move_vector = get_move_input_vector() + match move_vector: + Vector2.ZERO: animation_player.play("Idle") + Vector2.LEFT: animation_player.play("MoveLeft") + Vector2.RIGHT: animation_player.play("MoveRight") + Vector2.UP: animation_player.play("MoveUp") + Vector2.DOWN: animation_player.play("MoveDown") + _: handle_diagonal_animations(move_vector) + pass + +func handle_diagonal_animations(dir : Vector2): + if (dir.y > 0 and dir.x < 0) or (dir.y < 0 and dir.x < 0): animation_player.play("MoveLeft") + elif (dir.y > 0 and dir.x > 0) or (dir.y < 0 and dir.x > 0): animation_player.play("MoveRight") + else: animation_player.play("Idle") + pass diff --git a/project.godot b/project.godot index 7d4e427..4d58277 100644 --- a/project.godot +++ b/project.godot @@ -11,10 +11,50 @@ config_version=5 [application] config/name="HoppyEaster" -run/main_scene="res://Scenes/Test.tscn" +run/main_scene="res://Scenes/PlayerMovement.tscn" config/features=PackedStringArray("4.0", "GL Compatibility") config/icon="res://icon.svg" +[dotnet] + +project/assembly_name="HoppyEaster" + +[input] + +move_left={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null) +] +} +move_right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null) +] +} +move_up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":-1.0,"script":null) +] +} +move_down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null) +] +} + +[layer_names] + +2d_physics/layer_1="Map" +2d_physics/layer_2="Player" + [rendering] renderer/rendering_method="gl_compatibility" From 35b69a05e08fe263e8adf5307d86242a75f90152 Mon Sep 17 00:00:00 2001 From: Snoweuph Date: Sat, 8 Apr 2023 20:47:40 +0000 Subject: [PATCH 2/4] =?UTF-8?q?=E2=80=9Eproject.godot=E2=80=9C=20=C3=A4nde?= =?UTF-8?q?rn?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- project.godot | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/project.godot b/project.godot index 4d58277..99b8929 100644 --- a/project.godot +++ b/project.godot @@ -11,7 +11,7 @@ config_version=5 [application] config/name="HoppyEaster" -run/main_scene="res://Scenes/PlayerMovement.tscn" +run/main_scene="res://Scenes/Test.tscn" config/features=PackedStringArray("4.0", "GL Compatibility") config/icon="res://icon.svg" @@ -49,11 +49,20 @@ move_down={ , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null) ] } +attack={ +"deadzone": 0.5, +"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(139, 6),"global_position":Vector2(143, 49),"factor":1.0,"button_index":1,"pressed":true,"double_click":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":false,"script":null) +] +} [layer_names] 2d_physics/layer_1="Map" 2d_physics/layer_2="Player" +2d_physics/layer_3="Bunny" +2d_physics/layer_4="Projectile" +2d_physics/layer_5="Layer 5" [rendering] From 235aa27dfcffcece1dfd68e80a8c694585a8fba4 Mon Sep 17 00:00:00 2001 From: Snoweuph Date: Tue, 11 Apr 2023 20:54:12 +0000 Subject: [PATCH 3/4] Making Workflow Builds Verbose --- .gitea/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index f37e067..c821a78 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -34,7 +34,7 @@ jobs: - name: Export for Web run: | mkdir -p ./builds/web/ - /root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -q --headless --export-release "Web" ./builds/web/Game.html + /root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -v --headless --export-release "Web" ./builds/web/Game.html - name: Package for Web run: | cd builds @@ -42,7 +42,7 @@ jobs: - name: Export for Linux run: | mkdir -p ./builds/linux/ - /root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -q --headless --export-release "Linux/X11" ./builds/linux/Game.x86_64 + /root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -v --headless --export-release "Linux/X11" ./builds/linux/Game.x86_64 - name: Package for Linux run: | cd builds @@ -50,7 +50,7 @@ jobs: - name: Export for Windows run: | mkdir -p ./builds/windows/ - /root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -q --headless --export-release "Windows Desktop" ./builds/windows/Game.exe + /root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -v --headless --export-release "Windows Desktop" ./builds/windows/Game.exe - name: Package for Windows run: | cd builds From a26e37d301e2e614498658ee5773f0c796f02782 Mon Sep 17 00:00:00 2001 From: khushmmehta <130106727+khushmmehta@users.noreply.github.com> Date: Wed, 12 Apr 2023 12:56:44 +0530 Subject: [PATCH 4/4] Audio And Stuff --- Assets/SFX/Bunnies/Evil Bunny.wav | Bin 0 -> 4741 bytes Assets/SFX/Bunnies/Evil Bunny.wav.import | 24 +++ .../Jesus/Footsteps/Footstep Variation 1.wav | Bin 0 -> 29064 bytes .../Footsteps/Footstep Variation 1.wav.import | 24 +++ .../Jesus/Footsteps/Footstep Variation 2.wav | Bin 0 -> 2040 bytes .../Footsteps/Footstep Variation 2.wav.import | 24 +++ .../Jesus/Footsteps/Footstep Variation 3.wav | Bin 0 -> 2040 bytes .../Footsteps/Footstep Variation 3.wav.import | 24 +++ .../Jesus/Projectile/Throw Variation 1.wav | Bin 0 -> 4516 bytes .../Projectile/Throw Variation 1.wav.import | 24 +++ .../Jesus/Projectile/Throw Variation 2.wav | Bin 0 -> 5424 bytes .../Projectile/Throw Variation 2.wav.import | 24 +++ .../Jesus/Projectile/Throw Variation 3.wav | Bin 0 -> 7566 bytes .../Projectile/Throw Variation 3.wav.import | 24 +++ Assets/UI/Theme.tres | 4 +- Prefabs/projectile.tscn | 17 +- Scenes/GameSFX.tscn | 193 ++++++++++++++++++ Scripts/SFX/PlayerAudioManager.gd | 22 ++ Scripts/WeaponSystem/Projectile.gd | 1 + Scripts/WeaponSystem/WeaponController.gd | 2 + 20 files changed, 404 insertions(+), 3 deletions(-) create mode 100644 Assets/SFX/Bunnies/Evil Bunny.wav create mode 100644 Assets/SFX/Bunnies/Evil Bunny.wav.import create mode 100644 Assets/SFX/Jesus/Footsteps/Footstep Variation 1.wav create mode 100644 Assets/SFX/Jesus/Footsteps/Footstep Variation 1.wav.import create mode 100644 Assets/SFX/Jesus/Footsteps/Footstep Variation 2.wav create mode 100644 Assets/SFX/Jesus/Footsteps/Footstep Variation 2.wav.import create mode 100644 Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav create mode 100644 Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav.import create mode 100644 Assets/SFX/Jesus/Projectile/Throw Variation 1.wav create mode 100644 Assets/SFX/Jesus/Projectile/Throw Variation 1.wav.import create mode 100644 Assets/SFX/Jesus/Projectile/Throw Variation 2.wav create mode 100644 Assets/SFX/Jesus/Projectile/Throw Variation 2.wav.import create mode 100644 Assets/SFX/Jesus/Projectile/Throw Variation 3.wav create mode 100644 Assets/SFX/Jesus/Projectile/Throw Variation 3.wav.import create mode 100644 Scenes/GameSFX.tscn create mode 100644 Scripts/SFX/PlayerAudioManager.gd diff --git a/Assets/SFX/Bunnies/Evil Bunny.wav b/Assets/SFX/Bunnies/Evil Bunny.wav new file mode 100644 index 0000000000000000000000000000000000000000..91d9fb7c8977e6ce5cc51f2090bc1addd31783b1 GIT binary patch literal 4741 zcmbVP$xc*J5Pj@i8o$8!CoUv$>jLAFNFYeJ&;x@qbT=&u-OXe(M1%io4fj^no!$eE z0Xv~nb-`tE&3=cIn+}yZ`!SRaFb{@6A$0KMU21YGt{<{0Y7@RE!*s z8Dqu|!U^Cf;1}TZ^z`g(GMP?iv-69K%d6}8&E5Uqhkt+v!e_zC+WMDP`|IXbr`zlG zx3_n8c6N7n_xAR_0lowF2?vBjha-o9Ksb7eBggSL=IBW($8%)(dwzTWN3bebTi<9g zyFRfKa>$LzF}H)5+>wwQ2)m)si};Nb6U9QJH^03TtP3{U>`cunCbCq~xwv!y1OmJ=Hp#!;Cn6=Blxb7Ehf&m>3090z=00TB#MhKF&)$0baQ32!(Y-FNt8 zSokx^97+u&I$f7p^`gijm`M|b*ax1+bSBC0;~)l{(%`^Lj=OM!?ZJ}ufCykVB@ZwL z-IJg_E-gI`Gz$&w3-bK{R6Y668OSupB!c$H{Iqw`dL4ey+Udr}C7fAsKE$@u4m`E9 z6`eHBNH%@NZc=RArnJ=yHf@uxoOF?kMrXQW$VseASiY$>+4R%}%UJ9kPG;Nf>0~ig zwx#a1X<64%yp=SiA|KVz^s@^jwmOA&cU*)-pqnHF2%mM7+@e0y&d4iuGvfT?Oq+q5 zoSLYac=?=OxErxB%E~iZ)vL0xbfRcrx(OyA8BJyT{H)l$TptX-2zqiG6A4~3d<93} zE*KpK#KCQt9}q8fMvF;aWSZ5IX@V;SLU@T$$YWY0>x)h3v4F|OCo`eT02S0B+}L^% z=JCU3Nrw~aFk|!xD1jBI0DbW>AvP|R8=wTZ1|j+kF7N1<{R!WxWDM^8*9)NX6T&tD z7alJq$~|XISiHae_tJ=eVxg;R_>U0vy$RTDz)J zG$EVPjeSPGaNr>D)fF$Qyp2*cVVW@k$%_#YDHr Snt#`F(mysA!f)vJ`O|;9Xe-?S literal 0 HcmV?d00001 diff --git a/Assets/SFX/Bunnies/Evil Bunny.wav.import b/Assets/SFX/Bunnies/Evil Bunny.wav.import new file mode 100644 index 0000000..e9f79b4 --- /dev/null +++ b/Assets/SFX/Bunnies/Evil Bunny.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://u3g25xyorgbr" +path="res://.godot/imported/Evil Bunny.wav-55d1f7efb7dcde9eb6a304b8c08e67e6.sample" + +[deps] + +source_file="res://Assets/SFX/Bunnies/Evil Bunny.wav" +dest_files=["res://.godot/imported/Evil Bunny.wav-55d1f7efb7dcde9eb6a304b8c08e67e6.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/Assets/SFX/Jesus/Footsteps/Footstep Variation 1.wav b/Assets/SFX/Jesus/Footsteps/Footstep Variation 1.wav new file mode 100644 index 0000000000000000000000000000000000000000..ece67ba354e8505fc50d28e8630611c2bddd71d8 GIT binary patch literal 29064 zcmbVT$&%wra!e#Z)?U57epi|PL}rrAbk$*W(PhkJy6GUZ`2c;8{%d-zu6-c^q}ve>o0%zHl@_z{r7)L=^y_$ zrJUZT|M>G?{`~J4<5!pFl5uo(>{R;QdEpgK&Z#eb9_FE6Ppf=1uk-PIl#dJE{mF=< z9H--S)D81Xewy#|eYs7y>8AY5Kj*7_HUH?Yx*zlR{C)n0<7@wI{4#u3b(ifihU#GA6d->5_mz(t1t;%V4Q7+TF?tOXReJmfkkMoE8F@2cd_3y?v!<*?m zpO$rc=^p31{&u>~*X64FS+3I0?g~~)2a;JDh)(r>id4q8Aq3a((YY4Tro_(@A&MolU3xc{wX*`FuW0=lOg(8_vhm{%k(&@SaWv;5i(RM?JI- z&|1$=aQ&2{F!MZL%;()@x-1v@&3wtDdz18ji{Rqjy`A6WdXzUE$6S`PblM%w&;7%A zJKT&{tE=tz;rsM0e=A?R-I2a`-{59wq2 zt$gf0rBCIz{QLB&|9$?He(!!S^>fDW=~KopUio!=nt#g}-{HIeG=3a@n<1scCn8#7 zTi&M+`Tg{^e>-2Mi|(u(cYS&)_uXB(E!X`uEc-eA$c!vF)n85Z;O}(Bc;l0NL%hMf z>-jq0%s1U_x+}NceYwks^zb-7_1m&ah($S1Z@QgF=_Bl*bvyfMJN$vQu<+yjK7UB> zXV^7e<_lnX)}4SOeR%>$!FA{W*TFC7Pqgkw`JR5{ALF;x_wBd9dH%Y<8|aT;*WX^g zt-m80^ycRTyUTTVJKt1p-cR@WVSeZzr-%HAcsxSiWBa>%ERWrD+JKSA1wN&Vf;b`S zZ_~SitU;c9nBMcqALxay<#+Jq-Hdo<5R{5amP9>%-= ze!lA-5D8cTeJ^E;+(ee76O0ExGWiQ!z!ZGqeOgZP>3p0|m`AJ)=?F~1c)ZD{^K_mr z%wbsjwt%q(mV?i*q@1SXZaY8ZJ4EohL)3fJkM4V_Tuoo=8#ROP^11)K{p%V>|GE6N z{I#pqBz-MkDzg!Z%9X1gjHt-oPB+8tc$04uB9^P{2~iqRm!>bMK=sJbf!sjF>VJ$s zRzJs|s2O+V4hTGTQ&|D;3BEXO}F_DRS|3}*XgFa!I*l?*Qk8A%-8N^9`XsW zJFoVRNzaJ2J;R!Hgf;7Ub+W~pH4|eZThT>z;_8LG&u^wn zu;en=%&%4W9XZzFNbgXUPzSK?SH_}FAUcTO>3jkkXx%yuY3yE*iBIqkb%{ALaXrT| zGiz=WnXQWTSmUzkySd-3?nlVqRmt535#s!cDc2bF2(^y?On9R{0A;Kr=osc3OphHbm>=^~c}zS5)~wO(ySQ>cCA`a1en#F^hD^@`nAC$w$ioNJ`MX^% z*4~Mk(%+2NSc{<>{@fvl;0Y@4nrkw+eAb_%6ChXF4V?EEBaRtZy8@H9sJZmEXJ-aq zcb!?f#``C75G&}2+RF8cYv}X?D=e}zq0WG3_u%d$?0YF2@MF!s4;(l}FM$kNoo!)3 z?PXv?jVyH|XYv`c?_@#`GZW{o+ZJR7qXh(j*7Vrp8)whc6a42r9xvTCjdRzpP@Rrv z=-Jg*R-*F+A1fa&x=YqtTsdcEBSVf+vAX;+J|QB&kx@^Ks+bSk(Wh03z~cnAA^*2H z3fC=kT&Pk<=xJAZHFtRnoM0)ViI`%wty1pm+6T$=J^ICZAX9l2I%@o%5^`!x!!Qo3 z^+=qML&y_GfSl!d?InRBig~8fIL9Ibk`vd$XQe!R12;e_+9e?l^B-8lgIJFm8;gR zP1&Z7RRBFMGaDT~4re{0&WNy%@?cKS=wewlSuJO958XH;by3&D+TrqkIb+QQTiCxs z1~Et14qV_JtDHJ+AW|zVDoGm9fAqPZa^H`6mB%ilvj&f_7b#OWr7-~mykA&j@vhNg zXT&ZEG26vU-<1pUm>3~@2gH!^6KVsl4!{HXg*PMZGpvsIh0NT^tM#N_nJ{C^&Inv! z)9WYZRb;v^H;~TPR-!yH}Ib-zz z_gJ-RHqVbkt%Rz46??>>{sJDXj?>fdJaTvSf-ZHF#~FJptT3n}{pl907|+ltoDUZh za~d5-Mt1j?=pQb56$f@mm2s&4%!^vj)){Lt>i3A60m*e8fVT9jH|E){W3F`r#KoZa87*gifCw6TauVgTkE))YjT1)ULrjf!JH~8GFK2 z!77TQ$9@@%?K(smT%BH4FI)BuvgJutg%+Z|if_nC>`?Btc5(fx{hzwMx`*Lzb;hcO zb#B2q@{OzdxLHkO?gy^J+`*z=9I=YB0-@hK=Dsqs`^M^BceT~>#5%Oz)gfdZvL8Fz z2|HS#%Z%F{fO=X@+wE$*eOYZb&udg$u3TLGdd0hD9#$xH8mQ)5c#jKcW8Lai#SF^KH02C@>c3al!Yu&7$&J$Bd4^A>e_lQ*^3s&%knMH#VA z;vPvmB-A$8RVz4b!kWWzsM1_(n3*$H8|*MP=!Eb_m%1%uo@N~AhnS&=9Ce^uLN-sx z>)lGf+lB2kVGRTSHn4P!8htWz4~Dg{Lk%RC!J5m7m60{@cy+uTRvTmkDimrkceU*L zZqUDDN3uoFw!K45!Se_(g{xu4QwBV1z$!7!6FPI`6LxTo+K*xb~h(1q# zykQ5B=Ij-eJ4USxb-lz2i7s>Edg%lGCUaOj%U`?8x?+;&Tw!>S?RE97()a|Ya;u^` z;TaB?Uh`F4uj@?4I)kN<$FH+m6ZwQ}UeruJAlt8;9EG{LWON?GutI-~)wE_Js+jg8 zd;)~Z#(qg>%n+=L*t;MPYIjuwr#tky8Zov~+U&Dy4G+;#J5k*;H}cqwk6&*D0+t{YZi-6xXl1{jlF?*e8rH-TRQ ze&`SDGcR;}=o{)YLF`2Nl&j{#xpE<%RXICQ^U*aRM>tYg=xG>w1@78i5e3WEJCo`~R?6W<;7 zwEc(i{ZOBk=xV+8etb6o)4C$y*+k7}L{3laP`!YRpMh$(#Jbuj^~u9Ca9{+r21qLsIi}~_VSZ^&E0;FeHpt}?(sOD^tyZGYJXN&8gvy~a1Z?|Yy~&K3U;U9k#_a?#2%l|R_hZfMguDiD@#VV z-Q&C9bGu%VLABe}Zg(FO?05ql(J7ONSb|LwXP;EAUVV2L<_UUM_P3`88=8PMRm z#q~_9n7Ykfr%8tN=rc1|!On7dfGJ>3Weh%h^o`=sT+h25tIAw{aqG1+@{JXdpRAN~ z^P5*Q99`j2JC6aqCp%0qw2~Bmg+R?s=ssAN(M=(f86`bK#7boxceP#F#rj@jS0l>o z#|{Qu#eNRm7}%=k^F1qj22XkLHKSy0kq#5+JO8TUL$z&$B`ISu>d`1-rAX*Fu{&em z`s=xj*BA9y_!|hGaMF(Y`~)=;Gj=N#ns3%h*ulP#>kKnSI~uPu1(!xxLu8;GsKmNL z4Arai?=R{Yd9a zo1`;r*Wa3Gqy4pPYiU{1`fpS;Q?ujmRsJg$y{)V84zGe2@5#FYT*iuzFrqcxFI>YH zVMAFQPc4*jcrFG9dPYQAg(n^vH;fk^?F{Ooo-G;(abJ^eMj&L-Z*1~!6jNkG^F(k6iYkL^q@_8=Ie@GXi%mo zLs~xBPkAMK#Q|X}E=aF-!OSS~PO-N4lJAIFTX-b@!_tVN*d>oSk8_N&X3;9Xl&!=q z?zeJvRi03j_w1IUNQ7-3<8g7{ydr+;WDhgmo+}37`Cvci7vCNM^MbQ(c zw367-8?7MWm+Ymcq4CyNRbz;OeX*5Z>y^80OueQv_Ku(9!RUIuH&)CpBd0krN)c#L zmgUu;y^r9WW5#*TH$_A!nAx(x*R0jpv_47FYp8?~$_Qt+aB(a-N?vGPP_^+~%5`jB z%VN$Xf7*Nv&QOYMWnK1}5OuU{hiqu^v1ek4t+aH?wsk!BeQIeLmhgLpN2f>pBma&^ z8msxsj8JCDXG;$|T#aO7{rHaHTFnNTw8XMjH-quJ{#F8fyfEsUJm_Sm^go$}i(Fw4RR<-5GpczNk4F72fC z^x6496xG>jRSSQ_x8h84=Eb4MuI#clEIMSO(3NfWp5ui`)CB9$J^r#4j=qNd94o3x2=Jls(Fv0y2mOaZ&^>Z&b5de!6go!!x+RI z*`_$?JU(fgJhWx*TKqfVVVZm;wtUgQ5j^ET3v$mw%#1omP=iJi5n3y`QB~@IdPla3 z1D+XkeP+}{OK4bT24xUMJuiq{Qsi78oVSu^3(0Fmv-L<;@zaO+@3l^=mi$!KD^~I` zJQXUG5?LX%Layx5Zy_UlJi=c1H!ZP@!x+mOu|*sf9=aksBA1Pt_h+h=exkC!54LsA zf6k&+ExYBb?Xuszs@Y}@f74HU6&`WilKJg(lU7$?Dk;_~gzRP8V=yvCLb_Wtbwxbc zUo&{m@@?~>PaI)S?3?{|_0Wi=_aU41$j4-+sq@TE;u{NHs+<5Eqm`lH2B>`aW}AcT}TXsiMv(*3M4z zN1hm4v)0d?U3sY?SY;IVS5M>RHP6xIcf>+x!jBS^9~_~V{B{gDju=QnpwW&N3m8Ai zc6KNxinJN#O5#{+<<=PDOE1L)@<^SdbenNuaqAz?%@)N&8dV=$1u5Tot62Y0AKU5_ zV`yW{F(QGR5cOE$V=Sd}iFrFd(58iEy!?|SbJ@S_tI<-OBC7OoiIHuQ2d)1a7n~Hs zg`^{8WHqnts?-JWx{+ZWZ)-wCh&DuoB%8COQFnRHF}~{Y?s#IX$BDnH3!zuP!_U{w zI8*X$MeDU~m7V-0+k}M>*3Plj8rkHUMl^Jof#Qq2l&9@EaWH2jSzQhp5v*WFY88|Z zWF_m3qCo4^W#}(7vR)qeT)ClaUb2if2^&dMeo`hSnC+SqSM^&XEYH7;9)07v7|OYh zv#+)uE5F*gijPt7Y{^q3?c=^4ViR$4X3GwH6u6tuW}D-|2pR*Qgx7L)P>-eP z?tZ4WVh*#0 zymq8Q7HxQKzHnh>;fRoAzo^66AV16@X%Fj^QH+sSHKVUF%4j_oaxN{UxAAqnj9KfG z?2J!wZs`G;s4UT$tR)8gTc~#B)S)V2Eyh5yTfCHm+^>4i>OCPxNk?17g_V&DdAwo- zm)cr?h=l5etCZFVb5Aj$H*K8S-{P>U?=o)EN-I>g{QXDPyoOEq#o5dH=*$xb!`rBc z!oW3Ck(D3BKxbwhV`wiT9)IjL@uCcRv)rZWn*6qnM)!~KbWE0-jmT@9T>7gx>RLoZ z{Vsi2_8s)oy|DQz3#8x3@R}mvjG?c}VKHL4x^OnNyDxLx&3)<6r)&+zh!y+(w=f$_tSGm?X->K2oS+8d<$1GzMxCbkZzmSqNS=9bpAo0-I zD5)IV9>znKnRWc-SJfb!ctR z!a_wy-h|h(Tz!ZtkYY-YHA*AIP2%SxDxcOo{nbiH(GPVW{7rk>YND0FC@&>?Y*;97 zEJ3;`TT+ClapYLvVcuKQ{ux)YkVM(G)0t(IRdd8w+QhsQlJtmr<(W~@w>Zr4e%UT+ zw&!NLBuZ9f3`e=b5hKm?Y@?!Y#Y!kd1-4vY_ixLfuISC$XAa?08)avEph54&4|^<` ze%4LzThASvh?=pG)v_?6W%NQyMEy{frFyh_PO)0{@s2rS1Z{uoiAHIJDy{kKSxbb> z8l$z(3R)%!v|oIa9gHlmIcn;ZJzA0CFLhmv)@yz%hg{h;OTG$0Uuomvh{+?ZBkkWR zL~uD@=y=>R0_K;vw)Bzq z@)cRPWV7^ZOnhpzd>40u$&tmvSDu*D)*czDy!C3=c5vS3agODiJBLU(GssILuPD(1 z$2HF6nf=x*dKhbi+2S$Q;Am=OTRCNw{8mJk=V6Kcr)I zkJn7wA!Z1hK;Kt6mMEIJ!iv{8-#!>mX$U=Hw)(oI2Hx@WD)}G0ltyb+427fXU93rF zeeCOLXDkW=_j-BjJ0pP)HeZ<05Qm3mN3qS*w6Ol~o?8arT24 z>b~Pd$$ELD<;b2k9%9GRPX5~0=$Wc5=8-sN?bhj7+ZQ8ipU4#Z!a34LDTjw-IEvB~ zF%#QjzBNmda1f)z7J1ilOsM-W%DUrxP|SEO4rK-Ji1Wfz9`V!M)|q*st1Zv9Pvd>s z>sk6Ogb%Md11y#DWQE2mxA|{2Xo=!(JBW3wE9!vjs=Z`fiI}*~wLw`J{}M=%qE5d; zvTb9O)!i$T!Xn$@h+7UVwVbfpXS_oTnU5_poO2k1_8Ld%ptT{-*L*kR#%zsuwE4>w z$-8Xnr{tE2@*^TEwAEMcTW|X$!Aw*1IIpcaw%^Y{{O@yKt1Gle(il-|vDdGyZp<{V z9MsRTwm`qc;E<}AgnS`nT`}6y!X{-kCCO9Hk(K^zHB&Cf1+HdKeCuv-#PV#7G}z*} zYD~=o{WcpoUaS3KeUjyhJ+Zu-3$ciTBe5Sb z<4Lc=Uh%=vXzyv1eKUF*5v#iOYBUj&?fPszQ1tceAlR&G=5e+rVkgAgm94cX;z7F( z87VA;pxI~Hij>hcjz)r`Xq7l8$wFUD)s^rybOZ;4m91KS8!zeQ$QBv#ffjQX@A~D) zwVIcnan6#3`yO*VeOub#QHp`rSo_~zwJrKKM#A6soQ3)wvIAe*KrM>BuJcORuCv3P zMC>NqsR%D+m@5MzXARiMVGhTTjHAR$4q!G#c`_UE3TZqiCD?|0i5K>9M`0e0!;L%XUm0 z7ok8O=(%-E6%$+9va9t@`dn9A z&N+(VfzHfXO7?0`gkwC~l5hK@%UqEhTdZ&9#cP#8bEuDJ zM9P&yHB5KJTWS%i5d+RUjGXXYW}-1QZmL&iyKuFwin1as%dENm)*NG?3aR{7B&^Zn z=!@oyo1Uq4z#P#C`K7Ed-_0mt!g0cZ-KYO`x$3J&@LLs$|MQOj2BobyysMWjwRN$6 zSSP=2O~gUt11)NEL^xWOkwZKqo|Z?wZH5XN`{RhpTFT$g6A~hz3IJ5mX^V2j%)@R04Bri-;;W{XBslgchB}r?Sr;DE6uh(kMPLU&IY%qOgn1 zGsA>{=18j%rj^beVuJ^Pi9ILbpICm)qD%X@)P*z2=aYUGDvWZztYji>7(qpKCW<$Bm8D-@~l)@zQ~ zMxC}7}h?V~p38gy{Vs_LCX>*OwBFZf zn=v?y4ee`R9ufa)x{av!Lc-4ZE#G4$lGS0S(Q(z}cvmt%VnQPN|28-o|yo`c+NMW!WZ~!qY5}^^PWS;{MPpxN&nF#UPEQ zG)Ylhm*=Y`jnN{A#9YVdQuq~ zE5?vpwBKt9B?w_!CY!`yU6-A)T~uizv+>z5h9AetQUuTrHyp3fp-;m>sxwiG=z?|n^(GPRF=3I1L0`o z`Ato{tMS&(@4#Fg6=N*TAx((6qWM{mGCM}oGSAtU;OmZoM~2R&%^I(qHRFY?Y?mkY za39ZV$giAJRneZu`J}w@ILRS4!c~k_Mth{LDPkVCkG`ySC5W|miAMY~8WESMfAab; z`nu9u)yCBJ%T9XBk*>4+<%4{*pORp<@;YB}-{b!O-);OUJJwdBCAqw=>g-xV&dV0w z<4a7IcmAdMzAprH&yjC)$9E{%dO1f=rrFb|o+&oAy)Aq?DMSfAo>NJMWh{Ze+M59YXWU?HknIHTZOaij&oXOEL1Io znC#}bh_cT(&ifuePciD2B@NE}b_Jy8ylW)lti{Ak;oa6R&zAg%l%Rk{EEErQ)OKPS}SJNdU+3#i|`y@B+8(&>fX7L)mFn{Q`&lNdgrYa>&%}vT_*&p_q#mbY`*A^$^E4#&z2fpv`8PE2{hm)Y~&jR3x0uimEuI*a#EV3FU*7+L z@0|aK%vRfWy&&v#d;R`k5Jf{)6h(u6zt`<{!Z7fC&vRYJvF&!-vaD9iY}9p4Rcf_r zRhH#SELpDB6jiG?E!*+@u-h9%qw&S%)zxG=oz7-BOs+03#=~gP>ja)%rxVm_3VxzD zthVitaEX>dCs!2(ALD>e>n45dLLNlV{7tIHY&;aQT83t{9oO^yAPAw(6QcLg8+G1~ zMi*C;+5Bd4dw2KkJL%iq-R5o;5%wX%4IX@gD-o#JD;|cCRV9-fo10tP+n;uJc6UGT?R_~&r87szIjO9AoqjYN!JEl+HlJVL+$)l(Re(*fUs}z)`x-T zSk%iS7 z#2AUAK68Z0!4DGWCEda}E*-5}DIqd)m`3(UD0?gnr`)L4G!u6$x)l%!OHp!AaID?` b)>eGE;eSyw1pwbPMMUyo%1;TSq5=H^k1FrF literal 0 HcmV?d00001 diff --git a/Assets/SFX/Jesus/Footsteps/Footstep Variation 2.wav.import b/Assets/SFX/Jesus/Footsteps/Footstep Variation 2.wav.import new file mode 100644 index 0000000..a5b9b99 --- /dev/null +++ b/Assets/SFX/Jesus/Footsteps/Footstep Variation 2.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://bwgri4cpbrmjk" +path="res://.godot/imported/Footstep Variation 2.wav-2a7a23042ee87e2b16ebe21f93bcab40.sample" + +[deps] + +source_file="res://Assets/SFX/Jesus/Footsteps/Footstep Variation 2.wav" +dest_files=["res://.godot/imported/Footstep Variation 2.wav-2a7a23042ee87e2b16ebe21f93bcab40.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav b/Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav new file mode 100644 index 0000000000000000000000000000000000000000..ac45b22a16e0e18f62103d01728d46af5b0bf380 GIT binary patch literal 2040 zcmb_dOLEgd6jWBQ}ky`|zL}Z{KK|c7vaHcbfd(Xs@*|_s0EitoeR{%_fSI zB+ars-)^^sV4EkNZ5qqP{Q2o=Hk;|XJ|(`LG1X^J&kNJd%iZC4`XM--j)(oOEb`cM zEYmcM<#M^`0XGc8G%d@v9mjE9&+~lWUjac7qK-7nQ9@Z(RkZ{5z=1e+a5(JuyIob4 zWl^AFDZ2c}7Oby|%(V=%5ia_SwJ%L4-j)>(IG#>q@Dup;61-VMk;E0tPe)R%iac^D zR7Z^!Sw+)AU7l08UZJy_ufQwaUcq~wr+Y~0D zM<{FK5wJJ|d?+>OEYNp?O3k^W2A+YdVOqB1h0^_QCwDld$UMtfiVl1J)mm)xbmc0IPzKI(18jz{jm1RJ+Esa$#=cuiN*60|qj;C*wdG~f z`MCl}nwGQ5U@EaLjoPy+wM^4ANs<_dHo?mGJlEyBY#62i{=)$-fbqap4(lx7LqBL5 zh#qB0!2ZK=GIA(ZDjga#%oz|iSPy}LkiM8i)pE)sQzx$IP>G05jf;rkjdd7;u0KE* zS)jszbcgsdE$S5%1#*GvnJW{8?Myi+Dmf4zO{GwWy=Winc44db4Mn?Vt;-&{lG zE3Tr-ZRm;{2EG9<$bbrxNalrU%m_pVB8MFSl@ZyO7vzFY<)(R5Dp&X}S7F^ZU`t?k9w? literal 0 HcmV?d00001 diff --git a/Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav.import b/Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav.import new file mode 100644 index 0000000..c71e94f --- /dev/null +++ b/Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://dnkv3mvbiyppb" +path="res://.godot/imported/Footstep Variation 3.wav-631e7c0b24f25d0d8a725b8163b9732a.sample" + +[deps] + +source_file="res://Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav" +dest_files=["res://.godot/imported/Footstep Variation 3.wav-631e7c0b24f25d0d8a725b8163b9732a.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/Assets/SFX/Jesus/Projectile/Throw Variation 1.wav b/Assets/SFX/Jesus/Projectile/Throw Variation 1.wav new file mode 100644 index 0000000000000000000000000000000000000000..476a4e809e356488b67848be9046d56da126ef05 GIT binary patch literal 4516 zcmbtW$*vnm43uvF27;XYo}|$>`@WB)k=|k-^0TQTyGNtv05%XB z){|zs*<`Vb>_2{g|Nft!7K=ZB{qWo058I!ATr3vv@b8xo3;F+U@x$V;kK2z2tVxX} zNfN`7G|P*sZn}Or9*4ebo4P8CJhQ9fC=7hha}WF7ZcjV7p6>@?7)9KjSa)<&!cSe- zRaF`*iXw*|H=8YNckuiWp6NIaefNMD&U&?6E?29y z<81d{5U2DAmnDKep2o}ND)t1sUQS(Iq;QFi&f3{*cL*5aYM$7WCs6>md=|w~6ox_I z`$*99NI1O!8q^JZ8Xy{ASJ4nk0VO*|H&#)(?S0g

a=s!M|BdkQ~_BKZhKSWtcIvOE%fR<=X| zFlcelZ6163&3cUlaWwe>=4=ruSP5Esu2@`l=j+SsmoJ}RU!JZbc7^VCy?j{ez9sS_uI?cehzDmyeIj^&!kaWMR+wbUZeBgjynqJs`_+90Em&q_QMLf`SM{<8tM=N!6W5jO!7giaRz77~_HoB}hB< z)(qp*^UKT2*p(@WgLZbn;i7j^Pns5F!XThtHR*6kNV?NDURrgK!{vGz&!?epDa)AD zl9;Ff;e}RAB#WXET9_B*HQLqr+*dXkR)rBz_$^aKvZ6$m2-^<3&Bj4KDnxSRbnJ`B z-HFs!jxXT=>B~^Vr}k)4m$a#BTWTuW@)1%)|6tQLG(efbCKx+9Te=#`SoY)7%PS=G zd>yL92cy`%_F+~*l#I2{gT1qS`1I)$l(iw8Y_oYwTA^E9FXur70YFWgC2zr&j9syV z0YJz>hyYbf^ID^M1!(~}^;Bk4WYC}O&*T}x=S*Q5nutyyVIKQ!-OzN1ky1M4phoRA zk~fCk}6CcAz?V!08a6^w6Tzz)S1le33>pp4tLxG&4Y0XS9%%?I7GA&&M7_ zLk-zENJtef^Jlxzwt#V|2{J>31Ue`mB*j^hY%qkZ#e6PpF&qbk>`x=d-(>_hgpd?c z9Qi5+9_@M);@DmxC>ggp8_n30ZY4P*Yau^aq{4wX3XWR2A7FqJS{;ij6bw3=um|Or z$;>@aG};hn_iE)FLW~lYl#}gt$B^=%twA9&fdPO_Q?^VNu?P>F6~qO_gBS-$2*c`h zrcU5xsxn2Z?L<)wO`no>CevTXw;AA2hv}&dQY&p!NHBwyn}7;=vb~Fu4PrJ`p`x&m zM4X?GEU<-KH=0tXeNV;6yLn2qiho`h*T7Wcwr$SM5@4zF+Kh{>UH6h4hd zoM}4@FwwiGxo6pE6ZUo5Y?C2|xd*es6l`mtC9$DGY%(?%dNVW5M9Wn zCMlUhFrXCI|Oq?t_<3Pj#6b1r5ntu;5QM)DY@y;yZsUMeU}hlgCu&dv}-3Xd@!;3 zHivcH>z%;~p3^S8HP^xNF$-S=6P5~_YMKAe3If?Qv;U%-V@WcE3^y*qmz)cm{3i$IuT z`4t9-JlKG5fCleqim{$EJJ@Jep5L8)|6_{pd%w(&xH|)RNIWJi!+>u9{k^Ah-4wWP zl0e?DB-L@-G)^ By7~YB literal 0 HcmV?d00001 diff --git a/Assets/SFX/Jesus/Projectile/Throw Variation 1.wav.import b/Assets/SFX/Jesus/Projectile/Throw Variation 1.wav.import new file mode 100644 index 0000000..0d48150 --- /dev/null +++ b/Assets/SFX/Jesus/Projectile/Throw Variation 1.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://dornq2kwau6bg" +path="res://.godot/imported/Throw Variation 1.wav-cb6e200c1a7508bd3b1eaae71204fc57.sample" + +[deps] + +source_file="res://Assets/SFX/Jesus/Projectile/Throw Variation 1.wav" +dest_files=["res://.godot/imported/Throw Variation 1.wav-cb6e200c1a7508bd3b1eaae71204fc57.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/Assets/SFX/Jesus/Projectile/Throw Variation 2.wav b/Assets/SFX/Jesus/Projectile/Throw Variation 2.wav new file mode 100644 index 0000000000000000000000000000000000000000..376c8014d368bb7e7924b37641608fde554861c9 GIT binary patch literal 5424 zcmbtX$#UD+6;)R@S!R=cDw}*q7U`;NouoVIbcXK8vMf=gNP+`E5(G$q0|aI1?BeE7{NL(`^3qqk83k{(3INveF&DOtNJ6@eE5eA%!7UdCJ~W zCgb9c?3q=4RF4)X`S$F(uKE5*$sdDt7(((Cr1C9uvk`&`&ku*gfe>CumV=0wJHm*3 zNKq8W@oW~yQG_pJTyCy>QyeH5`=jB&^E_9`^9BRq?nAkf;XEq-5p|#dj`=}2fu!j~ zl~hkqRVq3f2iSxT^95->i=oLR6lvHVjwnDxyKdhbjQlYKh~^RbVJEj3dyq82qO8Jp zQO;;5n!zI8;U(o9gwsf5FOwu$t&(IBPXeEYifEb)xgc1LHEaJcn8u6cDqXMFX_~H* zMHG&Qp4;oY^veiF87=AE`Fsu+!+t1C*5KE3#S*9^J`pikwbXavHS(a}X^yW>0wZ-J zd?;S06oha_6P7}YStKS7y?(djwA*c`Hy8yIc-WknO@q2hW~<96E3^F{+=TeMUinnt63`&`7e2b1}VvAMiR;$Y~~^j6n1NSec8 zK(b_pG9Fw;p?Nfr}d_T_#z)>+2zgM{{H^%_U3YvE@+C6(y++ganQn zVD$Rv=opNg0VQNxxMIDS1`;M9433gyGv!XqV1+k?`Zk>{6XZEFoiNp;MewvPGfg%9 zC4c+<4kOCE=ycs+w#w*61U2`*+peF!JwAp?XALJh+t_V94OzrD_)QLk06ot~VW5~z)Hi0Pp+1}4mia+*Zrp^F5S4C(_n zT7f0cwa`Q3$s(2H+g)t3bm}%w-yDAb{eKRde*14)y1RXR`uOqb!^8gl z^*eH*tt``sp<&W?y3N{K8uy0rYB{bSicV-2P>P5J0Z}Ou*49=QIM*G<>)rMHySuyh zH}A4#3~yN5x(+L63w5)LmSH=jRN+ZDV(9V`qYc-TWZ$36maFv|2p22@L?$nrm}YJg z2M}ZI+33Am5cn;v7>&Wydv!0z8FCQaI9kXwz}m!ejA?|!2uNolOd_M98G4kzwqo`V z8JaLqpq=)*B$_94L#ZyXHiT%P>OhPEG6$e=0q7u(I2=^Mc%jn-lS8_^2DW6EmQSOm zXm3o_(3@g!iTWAZ8raR^+ zG`&K-Us47WOb_kaYFW^b>?0%dJtJ1|Wh03Knc>S!X>aps(rl}Bme6ScWN!L-jLEAS@g^(sc=9A9Qd9-@xnTV6Ns zMpqtqVK)eo5(H;eq`k{p#7;;|7q^Wtu7JBHLTS4=$he#R@?z;7V+72t2+wy#O!X^Y zvMOj378%u(`In@Dz_z&a8D*J)KT9RXKlNJSgM$!G#AqXCAfJ(~cfwV#Yhr!!x8Pin zU$RalQQGGTr%Q5jX$5cdRuWMbP&%X+`FT6cJ UUa3eg-1tA1UJ_Pa`&s7y1%w}e2><{9 literal 0 HcmV?d00001 diff --git a/Assets/SFX/Jesus/Projectile/Throw Variation 2.wav.import b/Assets/SFX/Jesus/Projectile/Throw Variation 2.wav.import new file mode 100644 index 0000000..265bcb0 --- /dev/null +++ b/Assets/SFX/Jesus/Projectile/Throw Variation 2.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://b2pd7efb2r7g5" +path="res://.godot/imported/Throw Variation 2.wav-29a6debbe12d45d7a1d5ed60acdd2d8f.sample" + +[deps] + +source_file="res://Assets/SFX/Jesus/Projectile/Throw Variation 2.wav" +dest_files=["res://.godot/imported/Throw Variation 2.wav-29a6debbe12d45d7a1d5ed60acdd2d8f.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/Assets/SFX/Jesus/Projectile/Throw Variation 3.wav b/Assets/SFX/Jesus/Projectile/Throw Variation 3.wav new file mode 100644 index 0000000000000000000000000000000000000000..a151acdb43d69bd0f7d5e82633e4108624dbe0bb GIT binary patch literal 7566 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 DyMn8i literal 0 HcmV?d00001 diff --git a/Assets/SFX/Jesus/Projectile/Throw Variation 3.wav.import b/Assets/SFX/Jesus/Projectile/Throw Variation 3.wav.import new file mode 100644 index 0000000..6dc72aa --- /dev/null +++ b/Assets/SFX/Jesus/Projectile/Throw Variation 3.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://cqxnclejfbmvb" +path="res://.godot/imported/Throw Variation 3.wav-6149b642d398d05b4c6ebfab8846c3e5.sample" + +[deps] + +source_file="res://Assets/SFX/Jesus/Projectile/Throw Variation 3.wav" +dest_files=["res://.godot/imported/Throw Variation 3.wav-6149b642d398d05b4c6ebfab8846c3e5.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/Assets/UI/Theme.tres b/Assets/UI/Theme.tres index ebcdebb..089b3ba 100644 --- a/Assets/UI/Theme.tres +++ b/Assets/UI/Theme.tres @@ -41,7 +41,7 @@ [ext_resource type="StyleBox" uid="uid://0jfr1uwuog0s" path="res://Assets/UI/Slider/v/background.tres" id="39_dl1e4"] [ext_resource type="FontFile" uid="uid://dqdeftjkwxe64" path="res://Assets/Fonts/Dogica/dogicapixel.ttf" id="40_bmcvq"] -[sub_resource type="Image" id="Image_fjlcl"] +[sub_resource type="Image" id="Image_48lf4"] data = { "data": PackedByteArray(255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0), "format": "RGBA8", @@ -51,7 +51,7 @@ data = { } [sub_resource type="ImageTexture" id="ImageTexture_g5bup"] -image = SubResource("Image_fjlcl") +image = SubResource("Image_48lf4") [sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_sj7h5"] diff --git a/Prefabs/projectile.tscn b/Prefabs/projectile.tscn index d8d5c72..edc2100 100644 --- a/Prefabs/projectile.tscn +++ b/Prefabs/projectile.tscn @@ -1,7 +1,10 @@ -[gd_scene load_steps=4 format=3 uid="uid://csxh42o8twxwn"] +[gd_scene load_steps=7 format=3 uid="uid://csxh42o8twxwn"] [ext_resource type="Script" path="res://Scripts/WeaponSystem/Projectile.gd" id="1_os652"] [ext_resource type="Texture2D" uid="uid://dlxjdb0tchrps" path="res://Assets/Sprites/crucefix.png" id="2_ibs3t"] +[ext_resource type="AudioStream" uid="uid://dornq2kwau6bg" path="res://Assets/SFX/Jesus/Projectile/Throw Variation 1.wav" id="4_11fc8"] +[ext_resource type="AudioStream" uid="uid://b2pd7efb2r7g5" path="res://Assets/SFX/Jesus/Projectile/Throw Variation 2.wav" id="5_njike"] +[ext_resource type="AudioStream" uid="uid://cqxnclejfbmvb" path="res://Assets/SFX/Jesus/Projectile/Throw Variation 3.wav" id="6_ky3xa"] [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_ki5cp"] radius = 8.57143 @@ -11,6 +14,7 @@ height = 22.8571 collision_layer = 8 collision_mask = 5 script = ExtResource("1_os652") +audio_pool = [NodePath("ProjectileAudioPool/Audio1"), NodePath("ProjectileAudioPool/Audio2"), NodePath("ProjectileAudioPool/Audio3")] map_collision_layer = 1 bunny_collision_layer = 4 @@ -20,4 +24,15 @@ texture = ExtResource("2_ibs3t") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource("CapsuleShape2D_ki5cp") +[node name="ProjectileAudioPool" type="Node" parent="."] + +[node name="Audio1" type="AudioStreamPlayer" parent="ProjectileAudioPool"] +stream = ExtResource("4_11fc8") + +[node name="Audio2" type="AudioStreamPlayer" parent="ProjectileAudioPool"] +stream = ExtResource("5_njike") + +[node name="Audio3" type="AudioStreamPlayer" parent="ProjectileAudioPool"] +stream = ExtResource("6_ky3xa") + [connection signal="body_entered" from="." to="." method="_on_collision"] diff --git a/Scenes/GameSFX.tscn b/Scenes/GameSFX.tscn new file mode 100644 index 0000000..4e0a935 --- /dev/null +++ b/Scenes/GameSFX.tscn @@ -0,0 +1,193 @@ +[gd_scene load_steps=21 format=3 uid="uid://dncnjerik3h11"] + +[ext_resource type="Script" path="res://Scripts/GameManager.gd" id="1_q3lug"] +[ext_resource type="TileSet" uid="uid://bj7uu2180mie3" path="res://Assets/Tileset.tres" id="2_qccqp"] +[ext_resource type="Script" path="res://Scripts/MapGenerator.gd" id="3_p1i7s"] +[ext_resource type="Script" path="res://Scripts/EntitySystem/BunnyGenerator.gd" id="4_pwecc"] +[ext_resource type="PackedScene" uid="uid://cpl4tllohhyel" path="res://Prefabs/bunny.tscn" id="5_k0p75"] +[ext_resource type="Script" path="res://Scripts/PlayerController.gd" id="6_7c8a5"] +[ext_resource type="Texture2D" uid="uid://ojlfqxj5bilo" path="res://Assets/Sprites/Jesus/jesus_spritesheet.png" id="7_2ag8c"] +[ext_resource type="Script" path="res://Scripts/WeaponSystem/WeaponController.gd" id="8_4fajh"] +[ext_resource type="PackedScene" uid="uid://csxh42o8twxwn" path="res://Prefabs/projectile.tscn" id="9_nh6rw"] +[ext_resource type="Script" path="res://Scripts/SFX/PlayerAudioManager.gd" id="10_6p662"] +[ext_resource type="AudioStream" uid="uid://c1tvxquysrs50" path="res://Assets/SFX/Jesus/Footsteps/Footstep Variation 1.wav" id="10_gfpg3"] +[ext_resource type="AudioStream" uid="uid://bwgri4cpbrmjk" path="res://Assets/SFX/Jesus/Footsteps/Footstep Variation 2.wav" id="11_rodhd"] +[ext_resource type="AudioStream" uid="uid://dnkv3mvbiyppb" path="res://Assets/SFX/Jesus/Footsteps/Footstep Variation 3.wav" id="12_88xxb"] + +[sub_resource type="Animation" id="Animation_kdxam"] +resource_name = "Idle" +length = 0.1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="Animation" id="Animation_dwpep"] +resource_name = "MoveDown" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [0, 1, 2, 3, 4, 5, 6, 7] +} + +[sub_resource type="Animation" id="Animation_2jvl5"] +resource_name = "MoveLeft" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [24, 25, 26, 27, 28, 29, 30, 31] +} + +[sub_resource type="Animation" id="Animation_4ig1u"] +resource_name = "MoveRight" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [8, 9, 10, 11, 12, 13, 14, 15] +} + +[sub_resource type="Animation" id="Animation_pswkh"] +resource_name = "MoveUp" +length = 0.8 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [16, 17, 18, 19, 20, 21, 22, 23] +} + +[sub_resource type="Animation" id="Animation_o3hln"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Player Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_bi1h3"] +_data = { +"Idle": SubResource("Animation_kdxam"), +"MoveDown": SubResource("Animation_dwpep"), +"MoveLeft": SubResource("Animation_2jvl5"), +"MoveRight": SubResource("Animation_4ig1u"), +"MoveUp": SubResource("Animation_pswkh"), +"RESET": SubResource("Animation_o3hln") +} + +[node name="GameManager" type="Node2D" node_paths=PackedStringArray("map_generator", "bunny_generator")] +script = ExtResource("1_q3lug") +map_generator = NodePath("Map Generator") +bunny_generator = NodePath("Bunny Generator") + +[node name="Map Generator" type="TileMap" parent="."] +scale = Vector2(1.5, 1.5) +tile_set = ExtResource("2_qccqp") +cell_quadrant_size = 32 +format = 2 +layer_0/tile_data = PackedInt32Array(2949194, 720897, 3, 2883658, 720897, 2, 2818122, 720897, 2, 2752586, 720897, 2, 2687050, 720897, 2, 2621514, 720897, 2, 2555978, 720897, 2, 2490442, 720897, 2, 2424906, 720897, 2, 2359370, 720897, 2, 2293834, 720897, 2, 2228298, 720897, 2, 2162762, 720897, 2, 2097226, 720897, 2, 2031690, 720897, 2, 1966154, 720897, 2, 1900618, 720897, 2, 1835082, 720897, 2, 1769546, 720897, 2, 1704010, 720897, 2, 1638474, 720897, 2, 1572938, 720897, 2, 1507402, 720897, 2, 1441866, 720897, 2, 1376330, 720897, 2, 1310794, 720897, 2, 1245258, 720897, 2, 1179722, 720897, 2, 1114186, 720897, 2, 1048650, 720897, 2, 983114, 720897, 2, 917578, 720897, 2, 852042, 720897, 2, 786506, 720897, 2, 720970, 720897, 2, 655434, 720897, 2, 589898, 720897, 2, 524362, 720897, 2, 458826, 720897, 2, 393290, 720897, 2, 327754, 720897, 2, 262218, 720897, 2, 196682, 720897, 2, 131146, 720897, 2, 65610, 720897, 2, 74, 720897, 2, -65462, 720897, 2, -130998, 720897, 2, -196534, 720897, 2, -262070, 720897, 2, -327606, 720897, 2, -393142, 720897, 2, -458678, 720897, 2, -524214, 720897, 2, -589750, 720897, 2, -655286, 720897, 0, 2949193, 589825, 3, 2883657, 589825, 2, 2818121, 589825, 2, 2752585, 589825, 2, 2687049, 589825, 2, 2621513, 589825, 2, 2555977, 589825, 2, 2490441, 589825, 2, 2424905, 589825, 2, 2359369, 589825, 2, 2293833, 589825, 2, 2228297, 589825, 2, 2162761, 589825, 2, 2097225, 589825, 2, 2031689, 589825, 2, 1966153, 589825, 2, 1900617, 589825, 2, 1835081, 589825, 2, 1769545, 589825, 2, 1704009, 589825, 2, 1638473, 589825, 2, 1572937, 589825, 2, 1507401, 589825, 2, 1441865, 589825, 2, 1376329, 589825, 2, 1310793, 589825, 2, 1245257, 589825, 2, 1179721, 589825, 2, 1114185, 589825, 2, 1048649, 589825, 2, 983113, 589825, 2, 917577, 589825, 2, 852041, 589825, 2, 786505, 589825, 2, 720969, 589825, 2, 655433, 589825, 2, 589897, 589825, 2, 524361, 589825, 2, 458825, 589825, 2, 393289, 589825, 2, 327753, 589825, 2, 262217, 589825, 2, 196681, 589825, 2, 131145, 589825, 2, 65609, 589825, 2, 73, 589825, 2, -65463, 589825, 2, -130999, 589825, 2, -196535, 589825, 2, -262071, 589825, 2, -327607, 589825, 2, -393143, 589825, 2, -458679, 589825, 2, -524215, 589825, 2, -589751, 589825, 2, -655287, 655361, 0, 2949192, 589825, 3, 2883656, 589825, 2, 2818120, 589825, 2, 2752584, 589825, 2, 2687048, 589825, 2, 2621512, 589825, 2, 2555976, 589825, 2, 2490440, 589825, 2, 2424904, 589825, 2, 2359368, 589825, 2, 2293832, 589825, 2, 2228296, 589825, 2, 2162760, 589825, 2, 2097224, 589825, 2, 2031688, 589825, 2, 1966152, 589825, 2, 1900616, 589825, 2, 1835080, 589825, 2, 1769544, 589825, 2, 1704008, 589825, 2, 1638472, 589825, 2, 1572936, 589825, 2, 1507400, 589825, 2, 1441864, 589825, 2, 1376328, 589825, 2, 1310792, 589825, 2, 1245256, 589825, 2, 1179720, 589825, 2, 1114184, 589825, 2, 1048648, 589825, 2, 983112, 589825, 2, 917576, 589825, 2, 852040, 589825, 2, 786504, 589825, 2, 720968, 589825, 2, 655432, 589825, 2, 589896, 589825, 2, 524360, 589825, 2, 458824, 589825, 2, 393288, 589825, 2, 327752, 589825, 2, 262216, 589825, 2, 196680, 589825, 2, 131144, 589825, 2, 65608, 589825, 2, 72, 589825, 2, -65464, 589825, 2, -131000, 589825, 2, -196536, 589825, 2, -262072, 589825, 2, -327608, 589825, 2, -393144, 589825, 2, -458680, 589825, 2, -524216, 589825, 2, -589752, 589825, 2, -655288, 655361, 0, 2949191, 589825, 3, 2883655, 589825, 2, 2818119, 589825, 2, 2752583, 589825, 2, 2687047, 589825, 2, 2621511, 589825, 2, 2555975, 589825, 2, 2490439, 589825, 2, 2424903, 589825, 2, 2359367, 589825, 2, 2293831, 589825, 2, 2228295, 589825, 2, 2162759, 589825, 2, 2097223, 589825, 2, 2031687, 589825, 2, 1966151, 589825, 2, 1900615, 589825, 2, 1835079, 589825, 2, 1769543, 589825, 2, 1704007, 589825, 2, 1638471, 589825, 2, 1572935, 589825, 2, 1507399, 589825, 2, 1441863, 589825, 2, 1376327, 589825, 2, 1310791, 589825, 2, 1245255, 589825, 2, 1179719, 589825, 2, 1114183, 589825, 2, 1048647, 589825, 2, 983111, 589825, 2, 917575, 589825, 2, 852039, 589825, 2, 786503, 589825, 2, 720967, 589825, 2, 655431, 589825, 2, 589895, 589825, 2, 524359, 589825, 2, 458823, 589825, 2, 393287, 589825, 2, 327751, 589825, 2, 262215, 589825, 2, 196679, 589825, 2, 131143, 589825, 2, 65607, 589825, 2, 71, 589825, 2, -65465, 589825, 2, -131001, 589825, 2, -196537, 589825, 2, -262073, 589825, 2, -327609, 589825, 2, -393145, 589825, 2, -458681, 589825, 2, -524217, 589825, 2, -589753, 589825, 2, -655289, 655361, 0, 2949190, 589825, 3, 2883654, 589825, 2, 2818118, 589825, 2, 2752582, 589825, 2, 2687046, 589825, 2, 2621510, 589825, 2, 2555974, 589825, 2, 2490438, 589825, 2, 2424902, 589825, 2, 2359366, 589825, 2, 2293830, 589825, 2, 2228294, 589825, 2, 2162758, 589825, 2, 2097222, 589825, 2, 2031686, 589825, 2, 1966150, 589825, 2, 1900614, 589825, 2, 1835078, 589825, 2, 1769542, 589825, 2, 1704006, 589825, 2, 1638470, 589825, 2, 1572934, 589825, 2, 1507398, 589825, 2, 1441862, 589825, 2, 1376326, 589825, 2, 1310790, 589825, 2, 1245254, 589825, 2, 1179718, 589825, 2, 1114182, 589825, 2, 1048646, 589825, 2, 983110, 589825, 2, 917574, 589825, 2, 852038, 589825, 2, 786502, 589825, 2, 720966, 589825, 2, 655430, 589825, 2, 589894, 589825, 2, 524358, 589825, 2, 458822, 589825, 2, 393286, 589825, 2, 327750, 589825, 2, 262214, 589825, 2, 196678, 589825, 2, 131142, 589825, 2, 65606, 589825, 2, 70, 589825, 2, -65466, 589825, 2, -131002, 589825, 2, -196538, 589825, 2, -262074, 589825, 2, -327610, 589825, 2, -393146, 589825, 2, -458682, 589825, 2, -524218, 589825, 2, -589754, 589825, 2, -655290, 655361, 0, 2949189, 589825, 3, 2883653, 589825, 2, 2818117, 589825, 2, 2752581, 589825, 2, 2687045, 589825, 2, 2621509, 589825, 2, 2555973, 589825, 2, 2490437, 589825, 2, 2424901, 589825, 2, 2359365, 589825, 2, 2293829, 589825, 2, 2228293, 589825, 2, 2162757, 589825, 2, 2097221, 589825, 2, 2031685, 589825, 2, 1966149, 589825, 2, 1900613, 589825, 2, 1835077, 589825, 2, 1769541, 589825, 2, 1704005, 589825, 2, 1638469, 589825, 2, 1572933, 589825, 2, 1507397, 589825, 2, 1441861, 589825, 2, 1376325, 589825, 2, 1310789, 589825, 2, 1245253, 589825, 2, 1179717, 589825, 2, 1114181, 589825, 2, 1048645, 589825, 2, 983109, 589825, 2, 917573, 589825, 2, 852037, 589825, 2, 786501, 589825, 2, 720965, 589825, 2, 655429, 589825, 2, 589893, 589825, 2, 524357, 589825, 2, 458821, 589825, 2, 393285, 589825, 2, 327749, 589825, 2, 262213, 589825, 2, 196677, 589825, 2, 131141, 589825, 2, 65605, 589825, 2, 69, 589825, 2, -65467, 589825, 2, -131003, 589825, 2, -196539, 589825, 2, -262075, 589825, 2, -327611, 589825, 2, -393147, 589825, 2, -458683, 589825, 2, -524219, 589825, 2, -589755, 589825, 2, -655291, 655361, 0, 2949188, 589825, 3, 2883652, 589825, 2, 2818116, 589825, 2, 2752580, 589825, 2, 2687044, 589825, 2, 2621508, 589825, 2, 2555972, 589825, 2, 2490436, 589825, 2, 2424900, 589825, 2, 2359364, 589825, 2, 2293828, 589825, 2, 2228292, 589825, 2, 2162756, 589825, 2, 2097220, 589825, 2, 2031684, 589825, 2, 1966148, 589825, 2, 1900612, 589825, 2, 1835076, 589825, 2, 1769540, 589825, 2, 1704004, 589825, 2, 1638468, 589825, 2, 1572932, 589825, 2, 1507396, 589825, 2, 1441860, 589825, 2, 1376324, 589825, 2, 1310788, 589825, 2, 1245252, 589825, 2, 1179716, 589825, 2, 1114180, 589825, 2, 1048644, 589825, 2, 983108, 589825, 2, 917572, 589825, 2, 852036, 589825, 2, 786500, 589825, 2, 720964, 589825, 2, 655428, 589825, 2, 589892, 589825, 2, 524356, 589825, 2, 458820, 589825, 2, 393284, 589825, 2, 327748, 589825, 2, 262212, 589825, 2, 196676, 589825, 2, 131140, 589825, 2, 65604, 589825, 2, 68, 589825, 2, -65468, 589825, 2, -131004, 589825, 2, -196540, 589825, 2, -262076, 589825, 2, -327612, 589825, 2, -393148, 589825, 2, -458684, 589825, 2, -524220, 589825, 2, -589756, 589825, 2, -655292, 655361, 0, 2949187, 589825, 3, 2883651, 589825, 2, 2818115, 589825, 2, 2752579, 589825, 2, 2687043, 589825, 2, 2621507, 589825, 2, 2555971, 589825, 2, 2490435, 589825, 2, 2424899, 589825, 2, 2359363, 589825, 2, 2293827, 589825, 2, 2228291, 589825, 2, 2162755, 589825, 2, 2097219, 589825, 2, 2031683, 589825, 2, 1966147, 589825, 2, 1900611, 589825, 2, 1835075, 589825, 2, 1769539, 589825, 2, 1704003, 589825, 2, 1638467, 589825, 2, 1572931, 589825, 2, 1507395, 589825, 2, 1441859, 589825, 2, 1376323, 589825, 2, 1310787, 589825, 2, 1245251, 589825, 2, 1179715, 589825, 2, 1114179, 589825, 2, 1048643, 589825, 2, 983107, 589825, 2, 917571, 589825, 2, 852035, 589825, 2, 786499, 589825, 2, 720963, 589825, 2, 655427, 589825, 2, 589891, 589825, 2, 524355, 589825, 2, 458819, 589825, 2, 393283, 589825, 2, 327747, 589825, 2, 262211, 589825, 2, 196675, 589825, 2, 131139, 589825, 2, 65603, 589825, 2, 67, 589825, 2, -65469, 589825, 2, -131005, 589825, 2, -196541, 589825, 2, -262077, 589825, 2, -327613, 589825, 2, -393149, 589825, 2, -458685, 589825, 2, -524221, 589825, 2, -589757, 589825, 2, -655293, 655361, 0, 2949186, 589825, 3, 2883650, 589825, 2, 2818114, 589825, 2, 2752578, 589825, 2, 2687042, 589825, 2, 2621506, 589825, 2, 2555970, 589825, 2, 2490434, 589825, 2, 2424898, 589825, 2, 2359362, 589825, 2, 2293826, 589825, 2, 2228290, 589825, 2, 2162754, 589825, 2, 2097218, 589825, 2, 2031682, 589825, 2, 1966146, 589825, 2, 1900610, 589825, 2, 1835074, 589825, 2, 1769538, 589825, 2, 1704002, 589825, 2, 1638466, 589825, 2, 1572930, 589825, 2, 1507394, 589825, 2, 1441858, 589825, 2, 1376322, 589825, 2, 1310786, 589825, 2, 1245250, 589825, 2, 1179714, 589825, 2, 1114178, 589825, 2, 1048642, 589825, 2, 983106, 589825, 2, 917570, 589825, 2, 852034, 589825, 2, 786498, 589825, 2, 720962, 589825, 2, 655426, 589825, 2, 589890, 589825, 2, 524354, 589825, 2, 458818, 589825, 2, 393282, 589825, 2, 327746, 589825, 2, 262210, 589825, 2, 196674, 589825, 2, 131138, 589825, 2, 65602, 589825, 2, 66, 589825, 2, -65470, 589825, 2, -131006, 589825, 2, -196542, 589825, 2, -262078, 589825, 2, -327614, 589825, 2, -393150, 589825, 2, -458686, 589825, 2, -524222, 589825, 2, -589758, 589825, 2, -655294, 655361, 0, 2949185, 589825, 3, 2883649, 589825, 2, 2818113, 589825, 2, 2752577, 589825, 2, 2687041, 589825, 2, 2621505, 589825, 2, 2555969, 589825, 2, 2490433, 589825, 2, 2424897, 589825, 2, 2359361, 589825, 2, 2293825, 589825, 2, 2228289, 589825, 2, 2162753, 589825, 2, 2097217, 589825, 2, 2031681, 589825, 2, 1966145, 589825, 2, 1900609, 589825, 2, 1835073, 589825, 2, 1769537, 589825, 2, 1704001, 589825, 2, 1638465, 589825, 2, 1572929, 589825, 2, 1507393, 589825, 2, 1441857, 589825, 2, 1376321, 589825, 2, 1310785, 589825, 2, 1245249, 589825, 2, 1179713, 589825, 2, 1114177, 589825, 2, 1048641, 589825, 2, 983105, 589825, 2, 917569, 589825, 2, 852033, 589825, 2, 786497, 589825, 2, 720961, 589825, 2, 655425, 589825, 2, 589889, 589825, 2, 524353, 589825, 2, 458817, 589825, 2, 393281, 589825, 2, 327745, 589825, 2, 262209, 589825, 2, 196673, 589825, 2, 131137, 589825, 2, 65601, 589825, 2, 65, 589825, 2, -65471, 589825, 2, -131007, 589825, 2, -196543, 589825, 2, -262079, 589825, 2, -327615, 589825, 2, -393151, 589825, 2, -458687, 589825, 2, -524223, 589825, 2, -589759, 589825, 2, -655295, 655361, 0, 2949184, 589825, 3, 2883648, 589825, 2, 2818112, 589825, 2, 2752576, 589825, 2, 2687040, 589825, 2, 2621504, 589825, 2, 2555968, 589825, 2, 2490432, 589825, 2, 2424896, 589825, 2, 2359360, 589825, 2, 2293824, 589825, 2, 2228288, 589825, 2, 2162752, 589825, 2, 2097216, 589825, 2, 2031680, 589825, 2, 1966144, 589825, 2, 1900608, 589825, 2, 1835072, 589825, 2, 1769536, 589825, 2, 1704000, 589825, 2, 1638464, 589825, 2, 1572928, 589825, 2, 1507392, 589825, 2, 1441856, 589825, 2, 1376320, 589825, 2, 1310784, 589825, 2, 1245248, 589825, 2, 1179712, 589825, 2, 1114176, 589825, 2, 1048640, 589825, 2, 983104, 589825, 2, 917568, 589825, 2, 852032, 589825, 2, 786496, 589825, 2, 720960, 589825, 2, 655424, 589825, 2, 589888, 589825, 2, 524352, 589825, 2, 458816, 589825, 2, 393280, 589825, 2, 327744, 589825, 2, 262208, 589825, 2, 196672, 589825, 2, 131136, 589825, 2, 65600, 589825, 2, 64, 589825, 2, -65472, 589825, 2, -131008, 589825, 2, -196544, 589825, 2, -262080, 589825, 2, -327616, 589825, 2, -393152, 589825, 2, -458688, 589825, 2, -524224, 589825, 2, -589760, 589825, 2, -655296, 655361, 0, 2949183, 589825, 3, 2883647, 589825, 2, 2818111, 589825, 2, 2752575, 589825, 2, 2687039, 589825, 2, 2621503, 589825, 2, 2555967, 589825, 2, 2490431, 589825, 2, 2424895, 589825, 2, 2359359, 589825, 2, 2293823, 589825, 2, 2228287, 589825, 2, 2162751, 589825, 2, 2097215, 589825, 2, 2031679, 589825, 2, 1966143, 589825, 2, 1900607, 589825, 2, 1835071, 589825, 2, 1769535, 589825, 2, 1703999, 589825, 2, 1638463, 589825, 2, 1572927, 589825, 2, 1507391, 589825, 2, 1441855, 589825, 2, 1376319, 589825, 2, 1310783, 589825, 2, 1245247, 589825, 2, 1179711, 589825, 2, 1114175, 589825, 2, 1048639, 589825, 2, 983103, 589825, 2, 917567, 589825, 2, 852031, 589825, 2, 786495, 589825, 2, 720959, 589825, 2, 655423, 589825, 2, 589887, 589825, 2, 524351, 589825, 2, 458815, 589825, 2, 393279, 589825, 2, 327743, 589825, 2, 262207, 589825, 2, 196671, 589825, 2, 131135, 589825, 2, 65599, 589825, 2, 63, 589825, 2, -65473, 589825, 2, -131009, 589825, 2, -196545, 589825, 2, -262081, 589825, 2, -327617, 589825, 2, -393153, 589825, 2, -458689, 589825, 2, -524225, 589825, 2, -589761, 589825, 2, -655297, 655361, 0, 2949182, 589825, 3, 2883646, 589825, 2, 2818110, 589825, 2, 2752574, 589825, 2, 2687038, 589825, 2, 2621502, 589825, 2, 2555966, 589825, 2, 2490430, 589825, 2, 2424894, 589825, 2, 2359358, 589825, 2, 2293822, 589825, 2, 2228286, 589825, 2, 2162750, 589825, 2, 2097214, 589825, 2, 2031678, 589825, 2, 1966142, 589825, 2, 1900606, 589825, 2, 1835070, 589825, 2, 1769534, 589825, 2, 1703998, 589825, 2, 1638462, 589825, 2, 1572926, 589825, 2, 1507390, 589825, 2, 1441854, 589825, 2, 1376318, 589825, 2, 1310782, 589825, 2, 1245246, 589825, 2, 1179710, 589825, 2, 1114174, 589825, 2, 1048638, 589825, 2, 983102, 589825, 2, 917566, 589825, 2, 852030, 589825, 2, 786494, 589825, 2, 720958, 589825, 2, 655422, 589825, 2, 589886, 589825, 2, 524350, 589825, 2, 458814, 589825, 2, 393278, 589825, 2, 327742, 589825, 2, 262206, 589825, 2, 196670, 589825, 2, 131134, 589825, 2, 65598, 589825, 2, 62, 589825, 2, -65474, 589825, 2, -131010, 589825, 2, -196546, 589825, 2, -262082, 589825, 2, -327618, 589825, 2, -393154, 589825, 2, -458690, 589825, 2, -524226, 589825, 2, -589762, 589825, 2, -655298, 655361, 0, 2949181, 589825, 3, 2883645, 589825, 2, 2818109, 589825, 2, 2752573, 589825, 2, 2687037, 589825, 2, 2621501, 589825, 2, 2555965, 589825, 2, 2490429, 589825, 2, 2424893, 589825, 2, 2359357, 589825, 2, 2293821, 589825, 2, 2228285, 589825, 2, 2162749, 589825, 2, 2097213, 589825, 2, 2031677, 589825, 2, 1966141, 589825, 2, 1900605, 589825, 2, 1835069, 589825, 2, 1769533, 589825, 2, 1703997, 589825, 2, 1638461, 589825, 2, 1572925, 589825, 2, 1507389, 589825, 2, 1441853, 589825, 2, 1376317, 589825, 2, 1310781, 589825, 2, 1245245, 589825, 2, 1179709, 589825, 2, 1114173, 589825, 2, 1048637, 589825, 2, 983101, 589825, 2, 917565, 589825, 2, 852029, 589825, 2, 786493, 589825, 2, 720957, 589825, 2, 655421, 589825, 2, 589885, 589825, 2, 524349, 589825, 2, 458813, 589825, 2, 393277, 589825, 2, 327741, 589825, 2, 262205, 589825, 2, 196669, 589825, 2, 131133, 589825, 2, 65597, 589825, 2, 61, 589825, 2, -65475, 589825, 2, -131011, 589825, 2, -196547, 589825, 2, -262083, 589825, 2, -327619, 589825, 2, -393155, 589825, 2, -458691, 589825, 2, -524227, 589825, 2, -589763, 589825, 2, -655299, 655361, 0, 2949180, 589825, 3, 2883644, 589825, 2, 2818108, 589825, 2, 2752572, 589825, 2, 2687036, 589825, 2, 2621500, 589825, 2, 2555964, 589825, 2, 2490428, 589825, 2, 2424892, 589825, 2, 2359356, 589825, 2, 2293820, 589825, 2, 2228284, 589825, 2, 2162748, 589825, 2, 2097212, 589825, 2, 2031676, 589825, 2, 1966140, 589825, 2, 1900604, 589825, 2, 1835068, 589825, 2, 1769532, 589825, 2, 1703996, 589825, 2, 1638460, 589825, 2, 1572924, 589825, 2, 1507388, 589825, 2, 1441852, 589825, 2, 1376316, 589825, 2, 1310780, 589825, 2, 1245244, 589825, 2, 1179708, 589825, 2, 1114172, 589825, 2, 1048636, 589825, 2, 983100, 589825, 2, 917564, 589825, 2, 852028, 589825, 2, 786492, 589825, 2, 720956, 589825, 2, 655420, 589825, 2, 589884, 589825, 2, 524348, 589825, 2, 458812, 589825, 2, 393276, 589825, 2, 327740, 589825, 2, 262204, 589825, 2, 196668, 589825, 2, 131132, 589825, 2, 65596, 589825, 2, 60, 589825, 2, -65476, 589825, 2, -131012, 589825, 2, -196548, 589825, 2, -262084, 589825, 2, -327620, 589825, 2, -393156, 589825, 2, -458692, 589825, 2, -524228, 589825, 2, -589764, 589825, 2, -655300, 655361, 0, 2949179, 589825, 3, 2883643, 589825, 2, 2818107, 589825, 2, 2752571, 589825, 2, 2687035, 589825, 2, 2621499, 589825, 2, 2555963, 589825, 2, 2490427, 589825, 2, 2424891, 589825, 2, 2359355, 589825, 2, 2293819, 589825, 2, 2228283, 589825, 2, 2162747, 589825, 2, 2097211, 589825, 2, 2031675, 589825, 2, 1966139, 589825, 2, 1900603, 589825, 2, 1835067, 589825, 2, 1769531, 589825, 2, 1703995, 589825, 2, 1638459, 589825, 2, 1572923, 589825, 2, 1507387, 589825, 2, 1441851, 589825, 2, 1376315, 589825, 2, 1310779, 589825, 2, 1245243, 589825, 2, 1179707, 589825, 2, 1114171, 589825, 2, 1048635, 589825, 2, 983099, 589825, 2, 917563, 589825, 2, 852027, 589825, 2, 786491, 589825, 2, 720955, 589825, 2, 655419, 589825, 2, 589883, 589825, 2, 524347, 589825, 2, 458811, 589825, 2, 393275, 589825, 2, 327739, 589825, 2, 262203, 589825, 2, 196667, 589825, 2, 131131, 589825, 2, 65595, 589825, 2, 59, 589825, 2, -65477, 589825, 2, -131013, 589825, 2, -196549, 589825, 2, -262085, 589825, 2, -327621, 589825, 2, -393157, 589825, 2, -458693, 589825, 2, -524229, 589825, 2, -589765, 589825, 2, -655301, 655361, 0, 2949178, 589825, 3, 2883642, 589825, 2, 2818106, 589825, 2, 2752570, 589825, 2, 2687034, 589825, 2, 2621498, 589825, 2, 2555962, 589825, 2, 2490426, 589825, 2, 2424890, 589825, 2, 2359354, 589825, 2, 2293818, 589825, 2, 2228282, 589825, 2, 2162746, 589825, 2, 2097210, 589825, 2, 2031674, 589825, 2, 1966138, 589825, 2, 1900602, 589825, 2, 1835066, 589825, 2, 1769530, 589825, 2, 1703994, 589825, 2, 1638458, 589825, 2, 1572922, 589825, 2, 1507386, 589825, 2, 1441850, 589825, 2, 1376314, 589825, 2, 1310778, 589825, 2, 1245242, 589825, 2, 1179706, 589825, 2, 1114170, 589825, 2, 1048634, 589825, 2, 983098, 589825, 2, 917562, 589825, 2, 852026, 589825, 2, 786490, 589825, 2, 720954, 589825, 2, 655418, 589825, 2, 589882, 589825, 2, 524346, 589825, 2, 458810, 589825, 2, 393274, 589825, 2, 327738, 589825, 2, 262202, 589825, 2, 196666, 589825, 2, 131130, 589825, 2, 65594, 589825, 2, 58, 589825, 2, -65478, 589825, 2, -131014, 589825, 2, -196550, 589825, 2, -262086, 589825, 2, -327622, 589825, 2, -393158, 589825, 2, -458694, 589825, 2, -524230, 589825, 2, -589766, 589825, 2, -655302, 655361, 0, 2949177, 589825, 3, 2883641, 589825, 2, 2818105, 589825, 2, 2752569, 589825, 2, 2687033, 589825, 2, 2621497, 589825, 2, 2555961, 589825, 2, 2490425, 589825, 2, 2424889, 589825, 2, 2359353, 589825, 2, 2293817, 589825, 2, 2228281, 589825, 2, 2162745, 589825, 2, 2097209, 589825, 2, 2031673, 589825, 2, 1966137, 589825, 2, 1900601, 589825, 2, 1835065, 589825, 2, 1769529, 589825, 2, 1703993, 589825, 2, 1638457, 589825, 2, 1572921, 589825, 2, 1507385, 589825, 2, 1441849, 589825, 2, 1376313, 589825, 2, 1310777, 589825, 2, 1245241, 589825, 2, 1179705, 589825, 2, 1114169, 589825, 2, 1048633, 589825, 2, 983097, 589825, 2, 917561, 589825, 2, 852025, 589825, 2, 786489, 589825, 2, 720953, 589825, 2, 655417, 589825, 2, 589881, 589825, 2, 524345, 589825, 2, 458809, 589825, 2, 393273, 589825, 2, 327737, 589825, 2, 262201, 589825, 2, 196665, 589825, 2, 131129, 589825, 2, 65593, 589825, 2, 57, 589825, 2, -65479, 589825, 2, -131015, 589825, 2, -196551, 589825, 2, -262087, 589825, 2, -327623, 589825, 2, -393159, 589825, 2, -458695, 589825, 2, -524231, 589825, 2, -589767, 589825, 2, -655303, 655361, 0, 2949176, 589825, 3, 2883640, 589825, 2, 2818104, 589825, 2, 2752568, 589825, 2, 2687032, 589825, 2, 2621496, 589825, 2, 2555960, 589825, 2, 2490424, 589825, 2, 2424888, 589825, 2, 2359352, 589825, 2, 2293816, 589825, 2, 2228280, 589825, 2, 2162744, 589825, 2, 2097208, 589825, 2, 2031672, 589825, 2, 1966136, 589825, 2, 1900600, 589825, 2, 1835064, 589825, 2, 1769528, 589825, 2, 1703992, 589825, 2, 1638456, 589825, 2, 1572920, 589825, 2, 1507384, 589825, 2, 1441848, 589825, 2, 1376312, 589825, 2, 1310776, 589825, 2, 1245240, 589825, 2, 1179704, 589825, 2, 1114168, 589825, 2, 1048632, 589825, 2, 983096, 589825, 2, 917560, 589825, 2, 852024, 589825, 2, 786488, 589825, 2, 720952, 589825, 2, 655416, 589825, 2, 589880, 589825, 2, 524344, 589825, 2, 458808, 589825, 2, 393272, 589825, 2, 327736, 589825, 2, 262200, 589825, 2, 196664, 589825, 2, 131128, 589825, 2, 65592, 589825, 2, 56, 589825, 2, -65480, 589825, 2, -131016, 589825, 2, -196552, 589825, 2, -262088, 589825, 2, -327624, 589825, 2, -393160, 589825, 2, -458696, 589825, 2, -524232, 589825, 2, -589768, 589825, 2, -655304, 655361, 0, 2949175, 589825, 3, 2883639, 589825, 2, 2818103, 589825, 2, 2752567, 589825, 2, 2687031, 589825, 2, 2621495, 589825, 2, 2555959, 589825, 2, 2490423, 589825, 2, 2424887, 589825, 2, 2359351, 589825, 2, 2293815, 589825, 2, 2228279, 589825, 2, 2162743, 589825, 2, 2097207, 589825, 2, 2031671, 589825, 2, 1966135, 589825, 2, 1900599, 589825, 2, 1835063, 589825, 2, 1769527, 589825, 2, 1703991, 589825, 2, 1638455, 589825, 2, 1572919, 589825, 2, 1507383, 589825, 2, 1441847, 589825, 2, 1376311, 589825, 2, 1310775, 589825, 2, 1245239, 589825, 2, 1179703, 589825, 2, 1114167, 589825, 2, 1048631, 589825, 2, 983095, 589825, 2, 917559, 589825, 2, 852023, 589825, 2, 786487, 589825, 2, 720951, 589825, 2, 655415, 589825, 2, 589879, 589825, 2, 524343, 589825, 2, 458807, 589825, 2, 393271, 589825, 2, 327735, 589825, 2, 262199, 589825, 2, 196663, 589825, 2, 131127, 589825, 2, 65591, 589825, 2, 55, 589825, 2, -65481, 589825, 2, -131017, 589825, 2, -196553, 589825, 2, -262089, 589825, 2, -327625, 589825, 2, -393161, 589825, 2, -458697, 589825, 2, -524233, 589825, 2, -589769, 589825, 2, -655305, 655361, 0, 2949174, 589825, 3, 2883638, 589825, 2, 2818102, 589825, 2, 2752566, 589825, 2, 2687030, 589825, 2, 2621494, 589825, 2, 2555958, 589825, 2, 2490422, 589825, 2, 2424886, 589825, 2, 2359350, 589825, 2, 2293814, 589825, 2, 2228278, 589825, 2, 2162742, 589825, 2, 2097206, 589825, 2, 2031670, 589825, 2, 1966134, 589825, 2, 1900598, 589825, 2, 1835062, 589825, 2, 1769526, 589825, 2, 1703990, 589825, 2, 1638454, 589825, 2, 1572918, 589825, 2, 1507382, 589825, 2, 1441846, 589825, 2, 1376310, 589825, 2, 1310774, 589825, 2, 1245238, 589825, 2, 1179702, 589825, 2, 1114166, 589825, 2, 1048630, 589825, 2, 983094, 589825, 2, 917558, 589825, 2, 852022, 589825, 2, 786486, 589825, 2, 720950, 589825, 2, 655414, 589825, 2, 589878, 589825, 2, 524342, 589825, 2, 458806, 589825, 2, 393270, 589825, 2, 327734, 589825, 2, 262198, 589825, 2, 196662, 589825, 2, 131126, 589825, 2, 65590, 589825, 2, 54, 589825, 2, -65482, 589825, 2, -131018, 589825, 2, -196554, 589825, 2, -262090, 589825, 2, -327626, 589825, 2, -393162, 589825, 2, -458698, 589825, 2, -524234, 589825, 2, -589770, 589825, 2, -655306, 655361, 0, 2949173, 589825, 3, 2883637, 589825, 2, 2818101, 589825, 2, 2752565, 589825, 2, 2687029, 589825, 2, 2621493, 589825, 2, 2555957, 589825, 2, 2490421, 589825, 2, 2424885, 589825, 2, 2359349, 589825, 2, 2293813, 589825, 2, 2228277, 589825, 2, 2162741, 589825, 2, 2097205, 589825, 2, 2031669, 589825, 2, 1966133, 589825, 2, 1900597, 589825, 2, 1835061, 589825, 2, 1769525, 589825, 2, 1703989, 589825, 2, 1638453, 589825, 2, 1572917, 589825, 2, 1507381, 589825, 2, 1441845, 589825, 2, 1376309, 589825, 2, 1310773, 589825, 2, 1245237, 589825, 2, 1179701, 589825, 2, 1114165, 589825, 2, 1048629, 589825, 2, 983093, 589825, 2, 917557, 589825, 2, 852021, 589825, 2, 786485, 589825, 2, 720949, 589825, 2, 655413, 589825, 2, 589877, 589825, 2, 524341, 589825, 2, 458805, 589825, 2, 393269, 589825, 2, 327733, 589825, 2, 262197, 589825, 2, 196661, 589825, 2, 131125, 589825, 2, 65589, 589825, 2, 53, 589825, 2, -65483, 589825, 2, -131019, 589825, 2, -196555, 589825, 2, -262091, 589825, 2, -327627, 589825, 2, -393163, 589825, 2, -458699, 589825, 2, -524235, 589825, 2, -589771, 589825, 2, -655307, 655361, 0, 2949172, 589825, 3, 2883636, 589825, 2, 2818100, 589825, 2, 2752564, 589825, 2, 2687028, 589825, 2, 2621492, 589825, 2, 2555956, 589825, 2, 2490420, 589825, 2, 2424884, 589825, 2, 2359348, 589825, 2, 2293812, 589825, 2, 2228276, 589825, 2, 2162740, 589825, 2, 2097204, 589825, 2, 2031668, 589825, 2, 1966132, 589825, 2, 1900596, 589825, 2, 1835060, 589825, 2, 1769524, 589825, 2, 1703988, 589825, 2, 1638452, 589825, 2, 1572916, 589825, 2, 1507380, 589825, 2, 1441844, 589825, 2, 1376308, 589825, 2, 1310772, 589825, 2, 1245236, 589825, 2, 1179700, 589825, 2, 1114164, 589825, 2, 1048628, 589825, 2, 983092, 589825, 2, 917556, 589825, 2, 852020, 589825, 2, 786484, 589825, 2, 720948, 589825, 2, 655412, 589825, 2, 589876, 589825, 2, 524340, 589825, 2, 458804, 589825, 2, 393268, 589825, 2, 327732, 589825, 2, 262196, 589825, 2, 196660, 589825, 2, 131124, 589825, 2, 65588, 589825, 2, 52, 589825, 2, -65484, 589825, 2, -131020, 589825, 2, -196556, 589825, 2, -262092, 589825, 2, -327628, 589825, 2, -393164, 589825, 2, -458700, 589825, 2, -524236, 589825, 2, -589772, 589825, 2, -655308, 655361, 0, 2949171, 589825, 3, 2883635, 589825, 2, 2818099, 589825, 2, 2752563, 589825, 2, 2687027, 589825, 2, 2621491, 589825, 2, 2555955, 589825, 2, 2490419, 589825, 2, 2424883, 589825, 2, 2359347, 589825, 2, 2293811, 589825, 2, 2228275, 589825, 2, 2162739, 589825, 2, 2097203, 589825, 2, 2031667, 589825, 2, 1966131, 589825, 2, 1900595, 589825, 2, 1835059, 589825, 2, 1769523, 589825, 2, 1703987, 589825, 2, 1638451, 589825, 2, 1572915, 589825, 2, 1507379, 589825, 2, 1441843, 589825, 2, 1376307, 589825, 2, 1310771, 589825, 2, 1245235, 589825, 2, 1179699, 589825, 2, 1114163, 589825, 2, 1048627, 589825, 2, 983091, 589825, 2, 917555, 589825, 2, 852019, 589825, 2, 786483, 589825, 2, 720947, 589825, 2, 655411, 589825, 2, 589875, 589825, 2, 524339, 589825, 2, 458803, 589825, 2, 393267, 589825, 2, 327731, 589825, 2, 262195, 589825, 2, 196659, 589825, 2, 131123, 589825, 2, 65587, 589825, 2, 51, 589825, 2, -65485, 589825, 2, -131021, 589825, 2, -196557, 589825, 2, -262093, 589825, 2, -327629, 589825, 2, -393165, 589825, 2, -458701, 589825, 2, -524237, 589825, 2, -589773, 589825, 2, -655309, 655361, 0, 2949170, 589825, 3, 2883634, 589825, 2, 2818098, 589825, 2, 2752562, 589825, 2, 2687026, 589825, 2, 2621490, 589825, 2, 2555954, 589825, 2, 2490418, 589825, 2, 2424882, 589825, 2, 2359346, 589825, 2, 2293810, 589825, 2, 2228274, 589825, 2, 2162738, 589825, 2, 2097202, 589825, 2, 2031666, 589825, 2, 1966130, 589825, 2, 1900594, 589825, 2, 1835058, 589825, 2, 1769522, 589825, 2, 1703986, 589825, 2, 1638450, 589825, 2, 1572914, 589825, 2, 1507378, 589825, 2, 1441842, 589825, 2, 1376306, 589825, 2, 1310770, 589825, 2, 1245234, 589825, 2, 1179698, 589825, 2, 1114162, 589825, 2, 1048626, 589825, 2, 983090, 589825, 2, 917554, 589825, 2, 852018, 589825, 2, 786482, 589825, 2, 720946, 589825, 2, 655410, 589825, 2, 589874, 589825, 2, 524338, 589825, 2, 458802, 589825, 2, 393266, 589825, 2, 327730, 589825, 2, 262194, 589825, 2, 196658, 589825, 2, 131122, 589825, 2, 65586, 589825, 2, 50, 589825, 2, -65486, 589825, 2, -131022, 589825, 2, -196558, 589825, 2, -262094, 589825, 2, -327630, 589825, 2, -393166, 589825, 2, -458702, 589825, 2, -524238, 589825, 2, -589774, 589825, 2, -655310, 655361, 0, 2949169, 589825, 3, 2883633, 589825, 2, 2818097, 589825, 2, 2752561, 589825, 2, 2687025, 589825, 2, 2621489, 589825, 2, 2555953, 589825, 2, 2490417, 589825, 2, 2424881, 589825, 2, 2359345, 589825, 2, 2293809, 589825, 2, 2228273, 589825, 2, 2162737, 589825, 2, 2097201, 589825, 2, 2031665, 589825, 2, 1966129, 589825, 2, 1900593, 589825, 2, 1835057, 589825, 2, 1769521, 589825, 2, 1703985, 589825, 2, 1638449, 589825, 2, 1572913, 589825, 2, 1507377, 589825, 2, 1441841, 589825, 2, 1376305, 589825, 2, 1310769, 589825, 2, 1245233, 589825, 2, 1179697, 589825, 2, 1114161, 589825, 2, 1048625, 589825, 2, 983089, 589825, 2, 917553, 589825, 2, 852017, 589825, 2, 786481, 589825, 2, 720945, 589825, 2, 655409, 589825, 2, 589873, 589825, 2, 524337, 589825, 2, 458801, 589825, 2, 393265, 589825, 2, 327729, 589825, 2, 262193, 589825, 2, 196657, 589825, 2, 131121, 589825, 2, 65585, 589825, 2, 49, 589825, 2, -65487, 589825, 2, -131023, 589825, 2, -196559, 589825, 2, -262095, 589825, 2, -327631, 589825, 2, -393167, 589825, 2, -458703, 589825, 2, -524239, 589825, 2, -589775, 589825, 2, -655311, 655361, 0, 2949168, 589825, 3, 2883632, 589825, 2, 2818096, 589825, 2, 2752560, 589825, 2, 2687024, 589825, 2, 2621488, 589825, 2, 2555952, 589825, 2, 2490416, 589825, 2, 2424880, 589825, 2, 2359344, 589825, 2, 2293808, 589825, 2, 2228272, 589825, 2, 2162736, 589825, 2, 2097200, 589825, 2, 2031664, 589825, 2, 1966128, 589825, 2, 1900592, 589825, 2, 1835056, 589825, 2, 1769520, 589825, 2, 1703984, 589825, 2, 1638448, 589825, 2, 1572912, 589825, 2, 1507376, 589825, 2, 1441840, 589825, 2, 1376304, 589825, 2, 1310768, 589825, 2, 1245232, 589825, 2, 1179696, 589825, 2, 1114160, 589825, 2, 1048624, 589825, 2, 983088, 589825, 2, 917552, 589825, 2, 852016, 589825, 2, 786480, 589825, 2, 720944, 589825, 2, 655408, 589825, 2, 589872, 589825, 2, 524336, 589825, 2, 458800, 589825, 2, 393264, 589825, 2, 327728, 589825, 2, 262192, 589825, 2, 196656, 589825, 2, 131120, 589825, 2, 65584, 589825, 2, 48, 589825, 2, -65488, 589825, 2, -131024, 589825, 2, -196560, 589825, 2, -262096, 589825, 2, -327632, 589825, 2, -393168, 589825, 2, -458704, 589825, 2, -524240, 589825, 2, -589776, 589825, 2, -655312, 655361, 0, 2949167, 589825, 3, 2883631, 589825, 2, 2818095, 589825, 2, 2752559, 589825, 2, 2687023, 589825, 2, 2621487, 589825, 2, 2555951, 589825, 2, 2490415, 589825, 2, 2424879, 589825, 2, 2359343, 589825, 2, 2293807, 589825, 2, 2228271, 589825, 2, 2162735, 589825, 2, 2097199, 589825, 2, 2031663, 589825, 2, 1966127, 589825, 2, 1900591, 589825, 2, 1835055, 589825, 2, 1769519, 589825, 2, 1703983, 589825, 2, 1638447, 589825, 2, 1572911, 589825, 2, 1507375, 589825, 2, 1441839, 589825, 2, 1376303, 589825, 2, 1310767, 589825, 2, 1245231, 589825, 2, 1179695, 589825, 2, 1114159, 589825, 2, 1048623, 589825, 2, 983087, 589825, 2, 917551, 589825, 2, 852015, 589825, 2, 786479, 589825, 2, 720943, 589825, 2, 655407, 589825, 2, 589871, 589825, 2, 524335, 589825, 2, 458799, 589825, 2, 393263, 589825, 2, 327727, 589825, 2, 262191, 589825, 2, 196655, 589825, 2, 131119, 589825, 2, 65583, 589825, 2, 47, 589825, 2, -65489, 589825, 2, -131025, 589825, 2, -196561, 589825, 2, -262097, 589825, 2, -327633, 589825, 2, -393169, 589825, 2, -458705, 589825, 2, -524241, 589825, 2, -589777, 589825, 2, -655313, 655361, 0, 2949166, 589825, 3, 2883630, 589825, 2, 2818094, 589825, 2, 2752558, 589825, 2, 2687022, 589825, 2, 2621486, 589825, 2, 2555950, 589825, 2, 2490414, 589825, 2, 2424878, 589825, 2, 2359342, 589825, 2, 2293806, 589825, 2, 2228270, 589825, 2, 2162734, 589825, 2, 2097198, 589825, 2, 2031662, 589825, 2, 1966126, 589825, 2, 1900590, 589825, 2, 1835054, 589825, 2, 1769518, 589825, 2, 1703982, 589825, 2, 1638446, 589825, 2, 1572910, 589825, 2, 1507374, 589825, 2, 1441838, 589825, 2, 1376302, 589825, 2, 1310766, 589825, 2, 1245230, 589825, 2, 1179694, 589825, 2, 1114158, 589825, 2, 1048622, 589825, 2, 983086, 589825, 2, 917550, 589825, 2, 852014, 589825, 2, 786478, 589825, 2, 720942, 589825, 2, 655406, 589825, 2, 589870, 589825, 2, 524334, 589825, 2, 458798, 589825, 2, 393262, 589825, 2, 327726, 589825, 2, 262190, 589825, 2, 196654, 589825, 2, 131118, 589825, 2, 65582, 589825, 2, 46, 589825, 2, -65490, 589825, 2, -131026, 589825, 2, -196562, 589825, 2, -262098, 589825, 2, -327634, 589825, 2, -393170, 589825, 2, -458706, 589825, 2, -524242, 589825, 2, -589778, 589825, 2, -655314, 655361, 0, 2949165, 589825, 3, 2883629, 589825, 2, 2818093, 589825, 2, 2752557, 589825, 2, 2687021, 589825, 2, 2621485, 589825, 2, 2555949, 589825, 2, 2490413, 589825, 2, 2424877, 589825, 2, 2359341, 589825, 2, 2293805, 589825, 2, 2228269, 589825, 2, 2162733, 589825, 2, 2097197, 589825, 2, 2031661, 589825, 2, 1966125, 589825, 2, 1900589, 589825, 2, 1835053, 589825, 2, 1769517, 589825, 2, 1703981, 589825, 2, 1638445, 589825, 2, 1572909, 589825, 2, 1507373, 589825, 2, 1441837, 589825, 2, 1376301, 589825, 2, 1310765, 589825, 2, 1245229, 589825, 2, 1179693, 589825, 2, 1114157, 589825, 2, 1048621, 589825, 2, 983085, 589825, 2, 917549, 589825, 2, 852013, 589825, 2, 786477, 589825, 2, 720941, 589825, 2, 655405, 589825, 2, 589869, 589825, 2, 524333, 589825, 2, 458797, 589825, 2, 393261, 589825, 2, 327725, 589825, 2, 262189, 589825, 2, 196653, 589825, 2, 131117, 589825, 2, 65581, 589825, 2, 45, 589825, 2, -65491, 589825, 2, -131027, 589825, 2, -196563, 589825, 2, -262099, 589825, 2, -327635, 589825, 2, -393171, 589825, 2, -458707, 589825, 2, -524243, 589825, 2, -589779, 589825, 2, -655315, 655361, 0, 2949164, 589825, 3, 2883628, 589825, 2, 2818092, 589825, 2, 2752556, 589825, 2, 2687020, 589825, 2, 2621484, 589825, 2, 2555948, 589825, 2, 2490412, 589825, 2, 2424876, 589825, 2, 2359340, 589825, 2, 2293804, 589825, 2, 2228268, 589825, 2, 2162732, 589825, 2, 2097196, 589825, 2, 2031660, 589825, 2, 1966124, 589825, 2, 1900588, 589825, 2, 1835052, 589825, 2, 1769516, 589825, 2, 1703980, 589825, 2, 1638444, 589825, 2, 1572908, 589825, 2, 1507372, 589825, 2, 1441836, 589825, 2, 1376300, 589825, 2, 1310764, 589825, 2, 1245228, 589825, 2, 1179692, 589825, 2, 1114156, 589825, 2, 1048620, 589825, 2, 983084, 589825, 2, 917548, 589825, 2, 852012, 589825, 2, 786476, 589825, 2, 720940, 589825, 2, 655404, 589825, 2, 589868, 589825, 2, 524332, 589825, 2, 458796, 589825, 2, 393260, 589825, 2, 327724, 589825, 2, 262188, 589825, 2, 196652, 589825, 2, 131116, 589825, 2, 65580, 589825, 2, 44, 589825, 2, -65492, 589825, 2, -131028, 589825, 2, -196564, 589825, 2, -262100, 589825, 2, -327636, 589825, 2, -393172, 589825, 2, -458708, 589825, 2, -524244, 589825, 2, -589780, 589825, 2, -655316, 655361, 0, 2949163, 589825, 3, 2883627, 589825, 2, 2818091, 589825, 2, 2752555, 589825, 2, 2687019, 589825, 2, 2621483, 589825, 2, 2555947, 589825, 2, 2490411, 589825, 2, 2424875, 589825, 2, 2359339, 589825, 2, 2293803, 589825, 2, 2228267, 589825, 2, 2162731, 589825, 2, 2097195, 589825, 2, 2031659, 589825, 2, 1966123, 589825, 2, 1900587, 589825, 2, 1835051, 589825, 2, 1769515, 589825, 2, 1703979, 589825, 2, 1638443, 589825, 2, 1572907, 589825, 2, 1507371, 589825, 2, 1441835, 589825, 2, 1376299, 589825, 2, 1310763, 589825, 2, 1245227, 589825, 2, 1179691, 589825, 2, 1114155, 589825, 2, 1048619, 589825, 2, 983083, 589825, 2, 917547, 589825, 2, 852011, 589825, 2, 786475, 589825, 2, 720939, 589825, 2, 655403, 589825, 2, 589867, 589825, 2, 524331, 589825, 2, 458795, 589825, 2, 393259, 589825, 2, 327723, 589825, 2, 262187, 589825, 2, 196651, 589825, 2, 131115, 589825, 2, 65579, 589825, 2, 43, 589825, 2, -65493, 589825, 2, -131029, 589825, 2, -196565, 589825, 2, -262101, 589825, 2, -327637, 589825, 2, -393173, 589825, 2, -458709, 589825, 2, -524245, 589825, 2, -589781, 589825, 2, -655317, 655361, 0, 2949162, 589825, 3, 2883626, 589825, 2, 2818090, 589825, 2, 2752554, 589825, 2, 2687018, 589825, 2, 2621482, 589825, 2, 2555946, 589825, 2, 2490410, 589825, 2, 2424874, 589825, 2, 2359338, 589825, 2, 2293802, 589825, 2, 2228266, 589825, 2, 2162730, 589825, 2, 2097194, 589825, 2, 2031658, 589825, 2, 1966122, 589825, 2, 1900586, 589825, 2, 1835050, 589825, 2, 1769514, 589825, 2, 1703978, 589825, 2, 1638442, 589825, 2, 1572906, 589825, 2, 1507370, 589825, 2, 1441834, 589825, 2, 1376298, 589825, 2, 1310762, 589825, 2, 1245226, 589825, 2, 1179690, 589825, 2, 1114154, 589825, 2, 1048618, 589825, 2, 983082, 589825, 2, 917546, 589825, 2, 852010, 589825, 2, 786474, 589825, 2, 720938, 589825, 2, 655402, 589825, 2, 589866, 589825, 2, 524330, 589825, 2, 458794, 589825, 2, 393258, 589825, 2, 327722, 589825, 2, 262186, 589825, 2, 196650, 589825, 2, 131114, 589825, 2, 65578, 589825, 2, 42, 589825, 2, -65494, 589825, 2, -131030, 589825, 2, -196566, 589825, 2, -262102, 589825, 2, -327638, 589825, 2, -393174, 589825, 2, -458710, 589825, 2, -524246, 589825, 2, -589782, 589825, 2, -655318, 655361, 0, 2949161, 589825, 3, 2883625, 589825, 2, 2818089, 589825, 2, 2752553, 589825, 2, 2687017, 589825, 2, 2621481, 589825, 2, 2555945, 589825, 2, 2490409, 589825, 2, 2424873, 589825, 2, 2359337, 589825, 2, 2293801, 589825, 2, 2228265, 589825, 2, 2162729, 589825, 2, 2097193, 589825, 2, 2031657, 589825, 2, 1966121, 589825, 2, 1900585, 589825, 2, 1835049, 589825, 2, 1769513, 589825, 2, 1703977, 589825, 2, 1638441, 589825, 2, 1572905, 589825, 2, 1507369, 589825, 2, 1441833, 589825, 2, 1376297, 589825, 2, 1310761, 589825, 2, 1245225, 589825, 2, 1179689, 589825, 2, 1114153, 589825, 2, 1048617, 589825, 2, 983081, 589825, 2, 917545, 589825, 2, 852009, 589825, 2, 786473, 589825, 2, 720937, 589825, 2, 655401, 589825, 2, 589865, 589825, 2, 524329, 589825, 2, 458793, 589825, 2, 393257, 589825, 2, 327721, 589825, 2, 262185, 589825, 2, 196649, 589825, 2, 131113, 589825, 2, 65577, 589825, 2, 41, 589825, 2, -65495, 589825, 2, -131031, 589825, 2, -196567, 589825, 2, -262103, 589825, 2, -327639, 589825, 2, -393175, 589825, 2, -458711, 589825, 2, -524247, 589825, 2, -589783, 589825, 2, -655319, 655361, 0, 2949160, 589825, 3, 2883624, 589825, 2, 2818088, 589825, 2, 2752552, 589825, 2, 2687016, 589825, 2, 2621480, 589825, 2, 2555944, 589825, 2, 2490408, 589825, 2, 2424872, 589825, 2, 2359336, 589825, 2, 2293800, 589825, 2, 2228264, 589825, 2, 2162728, 589825, 2, 2097192, 589825, 2, 2031656, 589825, 2, 1966120, 589825, 2, 1900584, 589825, 2, 1835048, 589825, 2, 1769512, 589825, 2, 1703976, 589825, 2, 1638440, 589825, 2, 1572904, 589825, 2, 1507368, 589825, 2, 1441832, 589825, 2, 1376296, 589825, 2, 1310760, 589825, 2, 1245224, 589825, 2, 1179688, 589825, 2, 1114152, 589825, 2, 1048616, 589825, 2, 983080, 589825, 2, 917544, 589825, 2, 852008, 589825, 2, 786472, 589825, 2, 720936, 589825, 2, 655400, 589825, 2, 589864, 589825, 2, 524328, 589825, 2, 458792, 589825, 2, 393256, 589825, 2, 327720, 589825, 2, 262184, 589825, 2, 196648, 589825, 2, 131112, 589825, 2, 65576, 589825, 2, 40, 589825, 2, -65496, 589825, 2, -131032, 589825, 2, -196568, 589825, 2, -262104, 589825, 2, -327640, 589825, 2, -393176, 589825, 2, -458712, 589825, 2, -524248, 589825, 2, -589784, 589825, 2, -655320, 655361, 0, 2949159, 589825, 3, 2883623, 589825, 2, 2818087, 589825, 2, 2752551, 589825, 2, 2687015, 589825, 2, 2621479, 589825, 2, 2555943, 589825, 2, 2490407, 589825, 2, 2424871, 589825, 2, 2359335, 589825, 2, 2293799, 589825, 2, 2228263, 589825, 2, 2162727, 589825, 2, 2097191, 589825, 2, 2031655, 589825, 2, 1966119, 589825, 2, 1900583, 589825, 2, 1835047, 589825, 2, 1769511, 589825, 2, 1703975, 589825, 2, 1638439, 589825, 2, 1572903, 589825, 2, 1507367, 589825, 2, 1441831, 589825, 2, 1376295, 589825, 2, 1310759, 589825, 2, 1245223, 589825, 2, 1179687, 589825, 2, 1114151, 589825, 2, 1048615, 589825, 2, 983079, 589825, 2, 917543, 589825, 2, 852007, 589825, 2, 786471, 589825, 2, 720935, 589825, 2, 655399, 589825, 2, 589863, 589825, 2, 524327, 589825, 2, 458791, 589825, 2, 393255, 589825, 2, 327719, 589825, 2, 262183, 589825, 2, 196647, 589825, 2, 131111, 589825, 2, 65575, 589825, 2, 39, 589825, 2, -65497, 589825, 2, -131033, 589825, 2, -196569, 589825, 2, -262105, 589825, 2, -327641, 589825, 2, -393177, 589825, 2, -458713, 589825, 2, -524249, 589825, 2, -589785, 589825, 2, -655321, 655361, 0, 2949158, 589825, 3, 2883622, 589825, 2, 2818086, 589825, 2, 2752550, 589825, 2, 2687014, 589825, 2, 2621478, 589825, 2, 2555942, 589825, 2, 2490406, 589825, 2, 2424870, 589825, 2, 2359334, 589825, 2, 2293798, 589825, 2, 2228262, 589825, 2, 2162726, 589825, 2, 2097190, 589825, 2, 2031654, 589825, 2, 1966118, 589825, 2, 1900582, 589825, 2, 1835046, 589825, 2, 1769510, 589825, 2, 1703974, 589825, 2, 1638438, 589825, 2, 1572902, 589825, 2, 1507366, 589825, 2, 1441830, 589825, 2, 1376294, 589825, 2, 1310758, 589825, 2, 1245222, 589825, 2, 1179686, 589825, 2, 1114150, 589825, 2, 1048614, 589825, 2, 983078, 589825, 2, 917542, 589825, 2, 852006, 589825, 2, 786470, 589825, 2, 720934, 589825, 2, 655398, 589825, 2, 589862, 589825, 2, 524326, 589825, 2, 458790, 589825, 2, 393254, 589825, 2, 327718, 589825, 2, 262182, 589825, 2, 196646, 589825, 2, 131110, 589825, 2, 65574, 589825, 2, 38, 589825, 2, -65498, 589825, 2, -131034, 589825, 2, -196570, 589825, 2, -262106, 589825, 2, -327642, 589825, 2, -393178, 589825, 2, -458714, 589825, 2, -524250, 589825, 2, -589786, 589825, 2, -655322, 655361, 0, 2949157, 589825, 3, 2883621, 589825, 2, 2818085, 589825, 2, 2752549, 589825, 2, 2687013, 589825, 2, 2621477, 589825, 2, 2555941, 589825, 2, 2490405, 589825, 2, 2424869, 589825, 2, 2359333, 589825, 2, 2293797, 589825, 2, 2228261, 589825, 2, 2162725, 589825, 2, 2097189, 589825, 2, 2031653, 589825, 2, 1966117, 589825, 2, 1900581, 589825, 2, 1835045, 589825, 2, 1769509, 589825, 2, 1703973, 589825, 2, 1638437, 589825, 2, 1572901, 589825, 2, 1507365, 589825, 2, 1441829, 589825, 2, 1376293, 589825, 2, 1310757, 589825, 2, 1245221, 589825, 2, 1179685, 589825, 2, 1114149, 589825, 2, 1048613, 589825, 2, 983077, 589825, 2, 917541, 589825, 2, 852005, 589825, 2, 786469, 589825, 2, 720933, 589825, 2, 655397, 589825, 2, 589861, 589825, 2, 524325, 589825, 2, 458789, 589825, 2, 393253, 589825, 2, 327717, 589825, 2, 262181, 589825, 2, 196645, 589825, 2, 131109, 589825, 2, 65573, 589825, 2, 37, 589825, 2, -65499, 589825, 2, -131035, 589825, 2, -196571, 589825, 2, -262107, 589825, 2, -327643, 589825, 2, -393179, 589825, 2, -458715, 589825, 2, -524251, 589825, 2, -589787, 589825, 2, -655323, 655361, 0, 2949156, 589825, 3, 2883620, 589825, 2, 2818084, 589825, 2, 2752548, 589825, 2, 2687012, 589825, 2, 2621476, 589825, 2, 2555940, 589825, 2, 2490404, 589825, 2, 2424868, 589825, 2, 2359332, 589825, 2, 2293796, 589825, 2, 2228260, 589825, 2, 2162724, 589825, 2, 2097188, 589825, 2, 2031652, 589825, 2, 1966116, 589825, 2, 1900580, 589825, 2, 1835044, 589825, 2, 1769508, 589825, 2, 1703972, 589825, 2, 1638436, 589825, 2, 1572900, 589825, 2, 1507364, 589825, 2, 1441828, 589825, 2, 1376292, 589825, 2, 1310756, 589825, 2, 1245220, 589825, 2, 1179684, 589825, 2, 1114148, 589825, 2, 1048612, 589825, 2, 983076, 589825, 2, 917540, 589825, 2, 852004, 589825, 2, 786468, 589825, 2, 720932, 589825, 2, 655396, 589825, 2, 589860, 589825, 2, 524324, 589825, 2, 458788, 589825, 2, 393252, 589825, 2, 327716, 589825, 2, 262180, 589825, 2, 196644, 589825, 2, 131108, 589825, 2, 65572, 589825, 2, 36, 589825, 2, -65500, 589825, 2, -131036, 589825, 2, -196572, 589825, 2, -262108, 589825, 2, -327644, 589825, 2, -393180, 589825, 2, -458716, 589825, 2, -524252, 589825, 2, -589788, 589825, 2, -655324, 655361, 0, 2949155, 589825, 3, 2883619, 589825, 2, 2818083, 589825, 2, 2752547, 589825, 2, 2687011, 589825, 2, 2621475, 589825, 2, 2555939, 589825, 2, 2490403, 589825, 2, 2424867, 589825, 2, 2359331, 589825, 2, 2293795, 589825, 2, 2228259, 589825, 2, 2162723, 589825, 2, 2097187, 589825, 2, 2031651, 589825, 2, 1966115, 589825, 2, 1900579, 589825, 2, 1835043, 589825, 2, 1769507, 589825, 2, 1703971, 589825, 2, 1638435, 589825, 2, 1572899, 589825, 2, 1507363, 589825, 2, 1441827, 589825, 2, 1376291, 589825, 2, 1310755, 589825, 2, 1245219, 589825, 2, 1179683, 589825, 2, 1114147, 589825, 2, 1048611, 589825, 2, 983075, 589825, 2, 917539, 589825, 2, 852003, 589825, 2, 786467, 589825, 2, 720931, 589825, 2, 655395, 589825, 2, 589859, 589825, 2, 524323, 589825, 2, 458787, 589825, 2, 393251, 589825, 2, 327715, 589825, 2, 262179, 589825, 2, 196643, 589825, 2, 131107, 589825, 2, 65571, 589825, 2, 35, 589825, 2, -65501, 589825, 2, -131037, 589825, 2, -196573, 589825, 2, -262109, 589825, 2, -327645, 589825, 2, -393181, 589825, 2, -458717, 589825, 2, -524253, 589825, 2, -589789, 589825, 2, -655325, 655361, 0, 2949154, 589825, 3, 2883618, 589825, 2, 2818082, 589825, 2, 2752546, 589825, 2, 2687010, 589825, 2, 2621474, 589825, 2, 2555938, 589825, 2, 2490402, 589825, 2, 2424866, 589825, 2, 2359330, 589825, 2, 2293794, 589825, 2, 2228258, 589825, 2, 2162722, 589825, 2, 2097186, 589825, 2, 2031650, 589825, 2, 1966114, 589825, 2, 1900578, 589825, 2, 1835042, 589825, 2, 1769506, 589825, 2, 1703970, 589825, 2, 1638434, 589825, 2, 1572898, 589825, 2, 1507362, 589825, 2, 1441826, 589825, 2, 1376290, 589825, 2, 1310754, 589825, 2, 1245218, 589825, 2, 1179682, 589825, 2, 1114146, 589825, 2, 1048610, 589825, 2, 983074, 589825, 2, 917538, 589825, 2, 852002, 589825, 2, 786466, 589825, 2, 720930, 589825, 2, 655394, 589825, 2, 589858, 589825, 2, 524322, 589825, 2, 458786, 589825, 2, 393250, 589825, 2, 327714, 589825, 2, 262178, 589825, 2, 196642, 589825, 2, 131106, 589825, 2, 65570, 589825, 2, 34, 589825, 2, -65502, 589825, 2, -131038, 589825, 2, -196574, 589825, 2, -262110, 589825, 2, -327646, 589825, 2, -393182, 589825, 2, -458718, 589825, 2, -524254, 589825, 2, -589790, 589825, 2, -655326, 655361, 0, 2949153, 589825, 3, 2883617, 589825, 2, 2818081, 589825, 2, 2752545, 589825, 2, 2687009, 589825, 2, 2621473, 589825, 2, 2555937, 589825, 2, 2490401, 589825, 2, 2424865, 589825, 2, 2359329, 589825, 2, 2293793, 589825, 2, 2228257, 589825, 2, 2162721, 589825, 2, 2097185, 589825, 2, 2031649, 589825, 2, 1966113, 589825, 2, 1900577, 589825, 2, 1835041, 589825, 2, 1769505, 589825, 2, 1703969, 589825, 2, 1638433, 589825, 2, 1572897, 589825, 2, 1507361, 589825, 2, 1441825, 589825, 2, 1376289, 589825, 2, 1310753, 589825, 2, 1245217, 589825, 2, 1179681, 589825, 2, 1114145, 589825, 2, 1048609, 589825, 2, 983073, 589825, 2, 917537, 589825, 2, 852001, 589825, 2, 786465, 589825, 2, 720929, 589825, 2, 655393, 589825, 2, 589857, 589825, 2, 524321, 589825, 2, 458785, 589825, 2, 393249, 589825, 2, 327713, 589825, 2, 262177, 589825, 2, 196641, 589825, 2, 131105, 589825, 2, 65569, 589825, 2, 33, 589825, 2, -65503, 589825, 2, -131039, 589825, 2, -196575, 589825, 2, -262111, 589825, 2, -327647, 589825, 2, -393183, 589825, 2, -458719, 589825, 2, -524255, 589825, 2, -589791, 589825, 2, -655327, 655361, 0, 2949152, 589825, 3, 2883616, 589825, 2, 2818080, 589825, 2, 2752544, 589825, 2, 2687008, 589825, 2, 2621472, 589825, 2, 2555936, 589825, 2, 2490400, 589825, 2, 2424864, 589825, 2, 2359328, 589825, 2, 2293792, 589825, 2, 2228256, 589825, 2, 2162720, 589825, 2, 2097184, 589825, 2, 2031648, 589825, 2, 1966112, 589825, 2, 1900576, 589825, 2, 1835040, 589825, 2, 1769504, 589825, 2, 1703968, 589825, 2, 1638432, 589825, 2, 1572896, 589825, 2, 1507360, 589825, 2, 1441824, 589825, 2, 1376288, 589825, 2, 1310752, 589825, 2, 1245216, 589825, 2, 1179680, 589825, 2, 1114144, 589825, 2, 1048608, 589825, 2, 983072, 589825, 2, 917536, 589825, 2, 852000, 589825, 2, 786464, 589825, 2, 720928, 589825, 2, 655392, 589825, 2, 589856, 589825, 2, 524320, 589825, 2, 458784, 589825, 2, 393248, 589825, 2, 327712, 589825, 2, 262176, 589825, 2, 196640, 589825, 2, 131104, 589825, 2, 65568, 589825, 2, 32, 589825, 2, -65504, 589825, 2, -131040, 589825, 2, -196576, 589825, 2, -262112, 589825, 2, -327648, 589825, 2, -393184, 589825, 2, -458720, 589825, 2, -524256, 589825, 2, -589792, 589825, 2, -655328, 655361, 0, 2949151, 589825, 3, 2883615, 589825, 2, 2818079, 589825, 2, 2752543, 589825, 2, 2687007, 589825, 2, 2621471, 589825, 2, 2555935, 589825, 2, 2490399, 589825, 2, 2424863, 589825, 2, 2359327, 589825, 2, 2293791, 589825, 2, 2228255, 589825, 2, 2162719, 589825, 2, 2097183, 589825, 2, 2031647, 589825, 2, 1966111, 589825, 2, 1900575, 589825, 2, 1835039, 589825, 2, 1769503, 589825, 2, 1703967, 589825, 2, 1638431, 589825, 2, 1572895, 589825, 2, 1507359, 589825, 2, 1441823, 589825, 2, 1376287, 589825, 2, 1310751, 589825, 2, 1245215, 589825, 2, 1179679, 589825, 2, 1114143, 589825, 2, 1048607, 589825, 2, 983071, 589825, 2, 917535, 589825, 2, 851999, 589825, 2, 786463, 589825, 2, 720927, 589825, 2, 655391, 589825, 2, 589855, 589825, 2, 524319, 589825, 2, 458783, 589825, 2, 393247, 589825, 2, 327711, 589825, 2, 262175, 589825, 2, 196639, 589825, 2, 131103, 589825, 2, 65567, 589825, 2, 31, 589825, 2, -65505, 589825, 2, -131041, 589825, 2, -196577, 589825, 2, -262113, 589825, 2, -327649, 589825, 2, -393185, 589825, 2, -458721, 589825, 2, -524257, 589825, 2, -589793, 589825, 2, -655329, 655361, 0, 2949150, 589825, 3, 2883614, 589825, 2, 2818078, 589825, 2, 2752542, 589825, 2, 2687006, 589825, 2, 2621470, 589825, 2, 2555934, 589825, 2, 2490398, 589825, 2, 2424862, 589825, 2, 2359326, 589825, 2, 2293790, 589825, 2, 2228254, 589825, 2, 2162718, 589825, 2, 2097182, 589825, 2, 2031646, 589825, 2, 1966110, 589825, 2, 1900574, 589825, 2, 1835038, 589825, 2, 1769502, 589825, 2, 1703966, 589825, 2, 1638430, 589825, 2, 1572894, 589825, 2, 1507358, 589825, 2, 1441822, 589825, 2, 1376286, 589825, 2, 1310750, 589825, 2, 1245214, 589825, 2, 1179678, 589825, 2, 1114142, 589825, 2, 1048606, 589825, 2, 983070, 589825, 2, 917534, 589825, 2, 851998, 589825, 2, 786462, 589825, 2, 720926, 589825, 2, 655390, 589825, 2, 589854, 589825, 2, 524318, 589825, 2, 458782, 589825, 2, 393246, 589825, 2, 327710, 589825, 2, 262174, 589825, 2, 196638, 589825, 2, 131102, 589825, 2, 65566, 589825, 2, 30, 589825, 2, -65506, 589825, 2, -131042, 589825, 2, -196578, 589825, 2, -262114, 589825, 2, -327650, 589825, 2, -393186, 589825, 2, -458722, 589825, 2, -524258, 589825, 2, -589794, 589825, 2, -655330, 655361, 0, 2949149, 589825, 3, 2883613, 589825, 2, 2818077, 589825, 2, 2752541, 589825, 2, 2687005, 589825, 2, 2621469, 589825, 2, 2555933, 589825, 2, 2490397, 589825, 2, 2424861, 589825, 2, 2359325, 589825, 2, 2293789, 589825, 2, 2228253, 589825, 2, 2162717, 589825, 2, 2097181, 589825, 2, 2031645, 589825, 2, 1966109, 589825, 2, 1900573, 589825, 2, 1835037, 589825, 2, 1769501, 589825, 2, 1703965, 589825, 2, 1638429, 589825, 2, 1572893, 589825, 2, 1507357, 589825, 2, 1441821, 589825, 2, 1376285, 589825, 2, 1310749, 589825, 2, 1245213, 589825, 2, 1179677, 589825, 2, 1114141, 589825, 2, 1048605, 589825, 2, 983069, 589825, 2, 917533, 589825, 2, 851997, 589825, 2, 786461, 589825, 2, 720925, 589825, 2, 655389, 589825, 2, 589853, 589825, 2, 524317, 589825, 2, 458781, 589825, 2, 393245, 589825, 2, 327709, 589825, 2, 262173, 589825, 2, 196637, 589825, 2, 131101, 589825, 2, 65565, 589825, 2, 29, 589825, 2, -65507, 589825, 2, -131043, 589825, 2, -196579, 589825, 2, -262115, 589825, 2, -327651, 589825, 2, -393187, 589825, 2, -458723, 589825, 2, -524259, 589825, 2, -589795, 589825, 2, -655331, 655361, 0, 2949148, 589825, 3, 2883612, 589825, 2, 2818076, 589825, 2, 2752540, 589825, 2, 2687004, 589825, 2, 2621468, 589825, 2, 2555932, 589825, 2, 2490396, 589825, 2, 2424860, 589825, 2, 2359324, 589825, 2, 2293788, 589825, 2, 2228252, 589825, 2, 2162716, 589825, 2, 2097180, 589825, 2, 2031644, 589825, 2, 1966108, 589825, 2, 1900572, 589825, 2, 1835036, 589825, 2, 1769500, 589825, 2, 1703964, 589825, 2, 1638428, 589825, 2, 1572892, 589825, 2, 1507356, 589825, 2, 1441820, 589825, 2, 1376284, 589825, 2, 1310748, 589825, 2, 1245212, 589825, 2, 1179676, 589825, 2, 1114140, 589825, 2, 1048604, 589825, 2, 983068, 589825, 2, 917532, 589825, 2, 851996, 589825, 2, 786460, 589825, 2, 720924, 589825, 2, 655388, 589825, 2, 589852, 589825, 2, 524316, 589825, 2, 458780, 589825, 2, 393244, 589825, 2, 327708, 589825, 2, 262172, 589825, 2, 196636, 589825, 2, 131100, 589825, 2, 65564, 589825, 2, 28, 589825, 2, -65508, 589825, 2, -131044, 589825, 2, -196580, 589825, 2, -262116, 589825, 2, -327652, 589825, 2, -393188, 589825, 2, -458724, 589825, 2, -524260, 589825, 2, -589796, 589825, 2, -655332, 655361, 0, 2949147, 589825, 3, 2883611, 589825, 2, 2818075, 589825, 2, 2752539, 589825, 2, 2687003, 589825, 2, 2621467, 589825, 2, 2555931, 589825, 2, 2490395, 589825, 2, 2424859, 589825, 2, 2359323, 589825, 2, 2293787, 589825, 2, 2228251, 589825, 2, 2162715, 589825, 2, 2097179, 589825, 2, 2031643, 589825, 2, 1966107, 589825, 2, 1900571, 589825, 2, 1835035, 589825, 2, 1769499, 589825, 2, 1703963, 589825, 2, 1638427, 589825, 2, 1572891, 589825, 2, 1507355, 589825, 2, 1441819, 589825, 2, 1376283, 589825, 2, 1310747, 589825, 2, 1245211, 589825, 2, 1179675, 589825, 2, 1114139, 589825, 2, 1048603, 589825, 2, 983067, 589825, 2, 917531, 589825, 2, 851995, 589825, 2, 786459, 589825, 2, 720923, 589825, 2, 655387, 589825, 2, 589851, 589825, 2, 524315, 589825, 2, 458779, 589825, 2, 393243, 589825, 2, 327707, 589825, 2, 262171, 589825, 2, 196635, 589825, 2, 131099, 589825, 2, 65563, 589825, 2, 27, 589825, 2, -65509, 589825, 2, -131045, 589825, 2, -196581, 589825, 2, -262117, 589825, 2, -327653, 589825, 2, -393189, 589825, 2, -458725, 589825, 2, -524261, 589825, 2, -589797, 589825, 2, -655333, 655361, 0, 2949146, 589825, 3, 2883610, 589825, 2, 2818074, 589825, 2, 2752538, 589825, 2, 2687002, 589825, 2, 2621466, 589825, 2, 2555930, 589825, 2, 2490394, 589825, 2, 2424858, 589825, 2, 2359322, 589825, 2, 2293786, 589825, 2, 2228250, 589825, 2, 2162714, 589825, 2, 2097178, 589825, 2, 2031642, 589825, 2, 1966106, 589825, 2, 1900570, 589825, 2, 1835034, 589825, 2, 1769498, 589825, 2, 1703962, 589825, 2, 1638426, 589825, 2, 1572890, 589825, 2, 1507354, 589825, 2, 1441818, 589825, 2, 1376282, 589825, 2, 1310746, 589825, 2, 1245210, 589825, 2, 1179674, 589825, 2, 1114138, 589825, 2, 1048602, 589825, 2, 983066, 589825, 2, 917530, 589825, 2, 851994, 589825, 2, 786458, 589825, 2, 720922, 589825, 2, 655386, 589825, 2, 589850, 589825, 2, 524314, 589825, 2, 458778, 589825, 2, 393242, 589825, 2, 327706, 589825, 2, 262170, 589825, 2, 196634, 589825, 2, 131098, 589825, 2, 65562, 589825, 2, 26, 589825, 2, -65510, 589825, 2, -131046, 589825, 2, -196582, 589825, 2, -262118, 589825, 2, -327654, 589825, 2, -393190, 589825, 2, -458726, 589825, 2, -524262, 589825, 2, -589798, 589825, 2, -655334, 655361, 0, 2949145, 589825, 3, 2883609, 589825, 2, 2818073, 589825, 2, 2752537, 589825, 2, 2687001, 589825, 2, 2621465, 589825, 2, 2555929, 589825, 2, 2490393, 589825, 2, 2424857, 589825, 2, 2359321, 589825, 2, 2293785, 589825, 2, 2228249, 589825, 2, 2162713, 589825, 2, 2097177, 589825, 2, 2031641, 589825, 2, 1966105, 589825, 2, 1900569, 589825, 2, 1835033, 589825, 2, 1769497, 589825, 2, 1703961, 589825, 2, 1638425, 589825, 2, 1572889, 589825, 2, 1507353, 589825, 2, 1441817, 589825, 2, 1376281, 589825, 2, 1310745, 589825, 2, 1245209, 589825, 2, 1179673, 589825, 2, 1114137, 589825, 2, 1048601, 589825, 2, 983065, 589825, 2, 917529, 589825, 2, 851993, 589825, 2, 786457, 589825, 2, 720921, 589825, 2, 655385, 589825, 2, 589849, 589825, 2, 524313, 589825, 2, 458777, 589825, 2, 393241, 589825, 2, 327705, 589825, 2, 262169, 589825, 2, 196633, 589825, 2, 131097, 589825, 2, 65561, 589825, 2, 25, 589825, 2, -65511, 589825, 2, -131047, 589825, 2, -196583, 589825, 2, -262119, 589825, 2, -327655, 589825, 2, -393191, 589825, 2, -458727, 589825, 2, -524263, 589825, 2, -589799, 589825, 2, -655335, 655361, 0, 2949144, 589825, 3, 2883608, 589825, 2, 2818072, 589825, 2, 2752536, 589825, 2, 2687000, 589825, 2, 2621464, 589825, 2, 2555928, 589825, 2, 2490392, 589825, 2, 2424856, 589825, 2, 2359320, 589825, 2, 2293784, 589825, 2, 2228248, 589825, 2, 2162712, 589825, 2, 2097176, 589825, 2, 2031640, 589825, 2, 1966104, 589825, 2, 1900568, 589825, 2, 1835032, 589825, 2, 1769496, 589825, 2, 1703960, 589825, 2, 1638424, 589825, 2, 1572888, 589825, 2, 1507352, 589825, 2, 1441816, 589825, 2, 1376280, 589825, 2, 1310744, 589825, 2, 1245208, 589825, 2, 1179672, 589825, 2, 1114136, 589825, 2, 1048600, 589825, 2, 983064, 589825, 2, 917528, 589825, 2, 851992, 589825, 2, 786456, 589825, 2, 720920, 589825, 2, 655384, 589825, 2, 589848, 589825, 2, 524312, 589825, 2, 458776, 589825, 2, 393240, 589825, 2, 327704, 589825, 2, 262168, 589825, 2, 196632, 589825, 2, 131096, 589825, 2, 65560, 589825, 2, 24, 589825, 2, -65512, 589825, 2, -131048, 589825, 2, -196584, 589825, 2, -262120, 589825, 2, -327656, 589825, 2, -393192, 589825, 2, -458728, 589825, 2, -524264, 589825, 2, -589800, 589825, 2, -655336, 655361, 0, 2949143, 589825, 3, 2883607, 589825, 2, 2818071, 589825, 2, 2752535, 589825, 2, 2686999, 589825, 2, 2621463, 589825, 2, 2555927, 589825, 2, 2490391, 589825, 2, 2424855, 589825, 2, 2359319, 589825, 2, 2293783, 589825, 2, 2228247, 589825, 2, 2162711, 589825, 2, 2097175, 589825, 2, 2031639, 589825, 2, 1966103, 589825, 2, 1900567, 589825, 2, 1835031, 589825, 2, 1769495, 589825, 2, 1703959, 589825, 2, 1638423, 589825, 2, 1572887, 589825, 2, 1507351, 589825, 2, 1441815, 589825, 2, 1376279, 589825, 2, 1310743, 589825, 2, 1245207, 589825, 2, 1179671, 589825, 2, 1114135, 589825, 2, 1048599, 589825, 2, 983063, 589825, 2, 917527, 589825, 2, 851991, 589825, 2, 786455, 589825, 2, 720919, 589825, 2, 655383, 589825, 2, 589847, 589825, 2, 524311, 589825, 2, 458775, 589825, 2, 393239, 589825, 2, 327703, 589825, 2, 262167, 589825, 2, 196631, 589825, 2, 131095, 589825, 2, 65559, 589825, 2, 23, 589825, 2, -65513, 589825, 2, -131049, 589825, 2, -196585, 589825, 2, -262121, 589825, 2, -327657, 589825, 2, -393193, 589825, 2, -458729, 589825, 2, -524265, 589825, 2, -589801, 589825, 2, -655337, 655361, 0, 2949142, 589825, 3, 2883606, 589825, 2, 2818070, 589825, 2, 2752534, 589825, 2, 2686998, 589825, 2, 2621462, 589825, 2, 2555926, 589825, 2, 2490390, 589825, 2, 2424854, 589825, 2, 2359318, 589825, 2, 2293782, 589825, 2, 2228246, 589825, 2, 2162710, 589825, 2, 2097174, 589825, 2, 2031638, 589825, 2, 1966102, 589825, 2, 1900566, 589825, 2, 1835030, 589825, 2, 1769494, 589825, 2, 1703958, 589825, 2, 1638422, 589825, 2, 1572886, 589825, 2, 1507350, 589825, 2, 1441814, 589825, 2, 1376278, 589825, 2, 1310742, 589825, 2, 1245206, 589825, 2, 1179670, 589825, 2, 1114134, 589825, 2, 1048598, 589825, 2, 983062, 589825, 2, 917526, 589825, 2, 851990, 589825, 2, 786454, 589825, 2, 720918, 589825, 2, 655382, 589825, 2, 589846, 589825, 2, 524310, 589825, 2, 458774, 589825, 2, 393238, 589825, 2, 327702, 589825, 2, 262166, 589825, 2, 196630, 589825, 2, 131094, 589825, 2, 65558, 589825, 2, 22, 589825, 2, -65514, 589825, 2, -131050, 589825, 2, -196586, 589825, 2, -262122, 589825, 2, -327658, 589825, 2, -393194, 589825, 2, -458730, 589825, 2, -524266, 589825, 2, -589802, 589825, 2, -655338, 655361, 0, 2949141, 589825, 3, 2883605, 589825, 2, 2818069, 589825, 2, 2752533, 589825, 2, 2686997, 589825, 2, 2621461, 589825, 2, 2555925, 589825, 2, 2490389, 589825, 2, 2424853, 589825, 2, 2359317, 589825, 2, 2293781, 589825, 2, 2228245, 589825, 2, 2162709, 589825, 2, 2097173, 589825, 2, 2031637, 589825, 2, 1966101, 589825, 2, 1900565, 589825, 2, 1835029, 589825, 2, 1769493, 589825, 2, 1703957, 589825, 2, 1638421, 589825, 2, 1572885, 589825, 2, 1507349, 589825, 2, 1441813, 589825, 2, 1376277, 589825, 2, 1310741, 589825, 2, 1245205, 589825, 2, 1179669, 589825, 2, 1114133, 589825, 2, 1048597, 589825, 2, 983061, 589825, 2, 917525, 589825, 2, 851989, 589825, 2, 786453, 589825, 2, 720917, 589825, 2, 655381, 589825, 2, 589845, 589825, 2, 524309, 589825, 2, 458773, 589825, 2, 393237, 589825, 2, 327701, 589825, 2, 262165, 589825, 2, 196629, 589825, 2, 131093, 589825, 2, 65557, 589825, 2, 21, 589825, 2, -65515, 589825, 2, -131051, 589825, 2, -196587, 589825, 2, -262123, 589825, 2, -327659, 589825, 2, -393195, 589825, 2, -458731, 589825, 2, -524267, 589825, 2, -589803, 589825, 2, -655339, 655361, 0, 2949140, 589825, 3, 2883604, 589825, 2, 2818068, 589825, 2, 2752532, 589825, 2, 2686996, 589825, 2, 2621460, 589825, 2, 2555924, 589825, 2, 2490388, 589825, 2, 2424852, 589825, 2, 2359316, 589825, 2, 2293780, 589825, 2, 2228244, 589825, 2, 2162708, 589825, 2, 2097172, 589825, 2, 2031636, 589825, 2, 1966100, 589825, 2, 1900564, 589825, 2, 1835028, 589825, 2, 1769492, 589825, 2, 1703956, 589825, 2, 1638420, 589825, 2, 1572884, 589825, 2, 1507348, 589825, 2, 1441812, 589825, 2, 1376276, 589825, 2, 1310740, 589825, 2, 1245204, 589825, 2, 1179668, 589825, 2, 1114132, 589825, 2, 1048596, 589825, 2, 983060, 589825, 2, 917524, 589825, 2, 851988, 589825, 2, 786452, 589825, 2, 720916, 589825, 2, 655380, 589825, 2, 589844, 589825, 2, 524308, 589825, 2, 458772, 589825, 2, 393236, 589825, 2, 327700, 589825, 2, 262164, 589825, 2, 196628, 589825, 2, 131092, 589825, 2, 65556, 589825, 2, 20, 589825, 2, -65516, 589825, 2, -131052, 589825, 2, -196588, 589825, 2, -262124, 589825, 2, -327660, 589825, 2, -393196, 589825, 2, -458732, 589825, 2, -524268, 589825, 2, -589804, 589825, 2, -655340, 655361, 0, 2949139, 589825, 3, 2883603, 589825, 2, 2818067, 589825, 2, 2752531, 589825, 2, 2686995, 589825, 2, 2621459, 589825, 2, 2555923, 589825, 2, 2490387, 589825, 2, 2424851, 589825, 2, 2359315, 589825, 2, 2293779, 589825, 2, 2228243, 589825, 2, 2162707, 589825, 2, 2097171, 589825, 2, 2031635, 589825, 2, 1966099, 589825, 2, 1900563, 589825, 2, 1835027, 589825, 2, 1769491, 589825, 2, 1703955, 589825, 2, 1638419, 589825, 2, 1572883, 589825, 2, 1507347, 589825, 2, 1441811, 589825, 2, 1376275, 589825, 2, 1310739, 589825, 2, 1245203, 589825, 2, 1179667, 589825, 2, 1114131, 589825, 2, 1048595, 589825, 2, 983059, 589825, 2, 917523, 589825, 2, 851987, 589825, 2, 786451, 589825, 2, 720915, 589825, 2, 655379, 589825, 2, 589843, 589825, 2, 524307, 589825, 2, 458771, 589825, 2, 393235, 589825, 2, 327699, 589825, 2, 262163, 589825, 2, 196627, 589825, 2, 131091, 589825, 2, 65555, 589825, 2, 19, 589825, 2, -65517, 589825, 2, -131053, 589825, 2, -196589, 589825, 2, -262125, 589825, 2, -327661, 589825, 2, -393197, 589825, 2, -458733, 589825, 2, -524269, 589825, 2, -589805, 589825, 2, -655341, 655361, 0, 2949138, 589825, 3, 2883602, 589825, 2, 2818066, 589825, 2, 2752530, 589825, 2, 2686994, 589825, 2, 2621458, 589825, 2, 2555922, 589825, 2, 2490386, 589825, 2, 2424850, 589825, 2, 2359314, 589825, 2, 2293778, 589825, 2, 2228242, 589825, 2, 2162706, 589825, 2, 2097170, 589825, 2, 2031634, 589825, 2, 1966098, 589825, 2, 1900562, 589825, 2, 1835026, 589825, 2, 1769490, 589825, 2, 1703954, 589825, 2, 1638418, 589825, 2, 1572882, 589825, 2, 1507346, 589825, 2, 1441810, 589825, 2, 1376274, 589825, 2, 1310738, 589825, 2, 1245202, 589825, 2, 1179666, 589825, 2, 1114130, 589825, 2, 1048594, 589825, 2, 983058, 589825, 2, 917522, 589825, 2, 851986, 589825, 2, 786450, 589825, 2, 720914, 589825, 2, 655378, 589825, 2, 589842, 589825, 2, 524306, 589825, 2, 458770, 589825, 2, 393234, 589825, 2, 327698, 589825, 2, 262162, 589825, 2, 196626, 589825, 2, 131090, 589825, 2, 65554, 589825, 2, 18, 589825, 2, -65518, 589825, 2, -131054, 589825, 2, -196590, 589825, 2, -262126, 589825, 2, -327662, 589825, 2, -393198, 589825, 2, -458734, 589825, 2, -524270, 589825, 2, -589806, 589825, 2, -655342, 655361, 0, 2949137, 589825, 3, 2883601, 589825, 2, 2818065, 589825, 2, 2752529, 589825, 2, 2686993, 589825, 2, 2621457, 589825, 2, 2555921, 589825, 2, 2490385, 589825, 2, 2424849, 589825, 2, 2359313, 589825, 2, 2293777, 589825, 2, 2228241, 589825, 2, 2162705, 589825, 2, 2097169, 589825, 2, 2031633, 589825, 2, 1966097, 589825, 2, 1900561, 589825, 2, 1835025, 589825, 2, 1769489, 589825, 2, 1703953, 589825, 2, 1638417, 589825, 2, 1572881, 589825, 2, 1507345, 589825, 2, 1441809, 589825, 2, 1376273, 589825, 2, 1310737, 589825, 2, 1245201, 589825, 2, 1179665, 589825, 2, 1114129, 589825, 2, 1048593, 589825, 2, 983057, 589825, 2, 917521, 589825, 2, 851985, 589825, 2, 786449, 589825, 2, 720913, 589825, 2, 655377, 589825, 2, 589841, 589825, 2, 524305, 589825, 2, 458769, 589825, 2, 393233, 589825, 2, 327697, 589825, 2, 262161, 589825, 2, 196625, 589825, 2, 131089, 589825, 2, 65553, 589825, 2, 17, 589825, 2, -65519, 589825, 2, -131055, 589825, 2, -196591, 589825, 2, -262127, 589825, 2, -327663, 589825, 2, -393199, 589825, 2, -458735, 589825, 2, -524271, 589825, 2, -589807, 589825, 2, -655343, 655361, 0, 2949136, 589825, 3, 2883600, 589825, 2, 2818064, 589825, 2, 2752528, 589825, 2, 2686992, 589825, 2, 2621456, 589825, 2, 2555920, 589825, 2, 2490384, 589825, 2, 2424848, 589825, 2, 2359312, 589825, 2, 2293776, 589825, 2, 2228240, 589825, 2, 2162704, 589825, 2, 2097168, 589825, 2, 2031632, 589825, 2, 1966096, 589825, 2, 1900560, 589825, 2, 1835024, 589825, 2, 1769488, 589825, 2, 1703952, 589825, 2, 1638416, 589825, 2, 1572880, 589825, 2, 1507344, 589825, 2, 1441808, 589825, 2, 1376272, 589825, 2, 1310736, 589825, 2, 1245200, 589825, 2, 1179664, 589825, 2, 1114128, 589825, 2, 1048592, 589825, 2, 983056, 589825, 2, 917520, 589825, 2, 851984, 589825, 2, 786448, 589825, 2, 720912, 589825, 2, 655376, 589825, 2, 589840, 589825, 2, 524304, 589825, 2, 458768, 589825, 2, 393232, 589825, 2, 327696, 589825, 2, 262160, 589825, 2, 196624, 589825, 2, 131088, 589825, 2, 65552, 589825, 2, 16, 589825, 2, -65520, 589825, 2, -131056, 589825, 2, -196592, 589825, 2, -262128, 589825, 2, -327664, 589825, 2, -393200, 589825, 2, -458736, 589825, 2, -524272, 589825, 2, -589808, 589825, 2, -655344, 655361, 0, 2949135, 589825, 3, 2883599, 589825, 2, 2818063, 589825, 2, 2752527, 589825, 2, 2686991, 589825, 2, 2621455, 589825, 2, 2555919, 589825, 2, 2490383, 589825, 2, 2424847, 589825, 2, 2359311, 589825, 2, 2293775, 589825, 2, 2228239, 589825, 2, 2162703, 589825, 2, 2097167, 589825, 2, 2031631, 589825, 2, 1966095, 589825, 2, 1900559, 589825, 2, 1835023, 589825, 2, 1769487, 589825, 2, 1703951, 589825, 2, 1638415, 589825, 2, 1572879, 589825, 2, 1507343, 589825, 2, 1441807, 589825, 2, 1376271, 589825, 2, 1310735, 589825, 2, 1245199, 589825, 2, 1179663, 589825, 2, 1114127, 589825, 2, 1048591, 589825, 2, 983055, 589825, 2, 917519, 589825, 2, 851983, 589825, 2, 786447, 589825, 2, 720911, 589825, 2, 655375, 589825, 2, 589839, 589825, 2, 524303, 589825, 2, 458767, 589825, 2, 393231, 589825, 2, 327695, 589825, 2, 262159, 589825, 2, 196623, 589825, 2, 131087, 589825, 2, 65551, 589825, 2, 15, 589825, 2, -65521, 589825, 2, -131057, 589825, 2, -196593, 589825, 2, -262129, 589825, 2, -327665, 589825, 2, -393201, 589825, 2, -458737, 589825, 2, -524273, 589825, 2, -589809, 589825, 2, -655345, 655361, 0, 2949134, 589825, 3, 2883598, 589825, 2, 2818062, 589825, 2, 2752526, 589825, 2, 2686990, 589825, 2, 2621454, 589825, 2, 2555918, 589825, 2, 2490382, 589825, 2, 2424846, 589825, 2, 2359310, 589825, 2, 2293774, 589825, 2, 2228238, 589825, 2, 2162702, 589825, 2, 2097166, 589825, 2, 2031630, 589825, 2, 1966094, 589825, 2, 1900558, 589825, 2, 1835022, 589825, 2, 1769486, 589825, 2, 1703950, 589825, 2, 1638414, 589825, 2, 1572878, 589825, 2, 1507342, 589825, 2, 1441806, 589825, 2, 1376270, 589825, 2, 1310734, 589825, 2, 1245198, 589825, 2, 1179662, 589825, 2, 1114126, 589825, 2, 1048590, 589825, 2, 983054, 589825, 2, 917518, 589825, 2, 851982, 589825, 2, 786446, 589825, 2, 720910, 589825, 2, 655374, 589825, 2, 589838, 589825, 2, 524302, 589825, 2, 458766, 589825, 2, 393230, 589825, 2, 327694, 589825, 2, 262158, 589825, 2, 196622, 589825, 2, 131086, 589825, 2, 65550, 589825, 2, 14, 589825, 2, -65522, 589825, 2, -131058, 589825, 2, -196594, 589825, 2, -262130, 589825, 2, -327666, 589825, 2, -393202, 589825, 2, -458738, 589825, 2, -524274, 589825, 2, -589810, 589825, 2, -655346, 655361, 0, 2949133, 589825, 3, 2883597, 589825, 2, 2818061, 589825, 2, 2752525, 589825, 2, 2686989, 589825, 2, 2621453, 589825, 2, 2555917, 589825, 2, 2490381, 589825, 2, 2424845, 589825, 2, 2359309, 589825, 2, 2293773, 589825, 2, 2228237, 589825, 2, 2162701, 589825, 2, 2097165, 589825, 2, 2031629, 589825, 2, 1966093, 589825, 2, 1900557, 589825, 2, 1835021, 589825, 2, 1769485, 589825, 2, 1703949, 589825, 2, 1638413, 589825, 2, 1572877, 589825, 2, 1507341, 589825, 2, 1441805, 589825, 2, 1376269, 589825, 2, 1310733, 589825, 2, 1245197, 589825, 2, 1179661, 589825, 2, 1114125, 589825, 2, 1048589, 589825, 2, 983053, 589825, 2, 917517, 589825, 2, 851981, 589825, 2, 786445, 589825, 2, 720909, 589825, 2, 655373, 589825, 2, 589837, 589825, 2, 524301, 589825, 2, 458765, 589825, 2, 393229, 589825, 2, 327693, 589825, 2, 262157, 589825, 2, 196621, 589825, 2, 131085, 589825, 2, 65549, 589825, 2, 13, 589825, 2, -65523, 589825, 2, -131059, 589825, 2, -196595, 589825, 2, -262131, 589825, 2, -327667, 589825, 2, -393203, 589825, 2, -458739, 589825, 2, -524275, 589825, 2, -589811, 589825, 2, -655347, 655361, 0, 2949132, 589825, 3, 2883596, 589825, 2, 2818060, 589825, 2, 2752524, 589825, 2, 2686988, 589825, 2, 2621452, 589825, 2, 2555916, 589825, 2, 2490380, 589825, 2, 2424844, 589825, 2, 2359308, 589825, 2, 2293772, 589825, 2, 2228236, 589825, 2, 2162700, 589825, 2, 2097164, 589825, 2, 2031628, 589825, 2, 1966092, 589825, 2, 1900556, 589825, 2, 1835020, 589825, 2, 1769484, 589825, 2, 1703948, 589825, 2, 1638412, 589825, 2, 1572876, 589825, 2, 1507340, 589825, 2, 1441804, 589825, 2, 1376268, 589825, 2, 1310732, 589825, 2, 1245196, 589825, 2, 1179660, 589825, 2, 1114124, 589825, 2, 1048588, 589825, 2, 983052, 589825, 2, 917516, 589825, 2, 851980, 589825, 2, 786444, 589825, 2, 720908, 589825, 2, 655372, 589825, 2, 589836, 589825, 2, 524300, 589825, 2, 458764, 589825, 2, 393228, 589825, 2, 327692, 589825, 2, 262156, 589825, 2, 196620, 589825, 2, 131084, 589825, 2, 65548, 589825, 2, 12, 589825, 2, -65524, 589825, 2, -131060, 589825, 2, -196596, 589825, 2, -262132, 589825, 2, -327668, 589825, 2, -393204, 589825, 2, -458740, 589825, 2, -524276, 589825, 2, -589812, 589825, 2, -655348, 655361, 0, 2949131, 589825, 3, 2883595, 589825, 2, 2818059, 589825, 2, 2752523, 589825, 2, 2686987, 589825, 2, 2621451, 589825, 2, 2555915, 589825, 2, 2490379, 589825, 2, 2424843, 589825, 2, 2359307, 589825, 2, 2293771, 589825, 2, 2228235, 589825, 2, 2162699, 589825, 2, 2097163, 589825, 2, 2031627, 589825, 2, 1966091, 589825, 2, 1900555, 589825, 2, 1835019, 589825, 2, 1769483, 589825, 2, 1703947, 589825, 2, 1638411, 589825, 2, 1572875, 589825, 2, 1507339, 589825, 2, 1441803, 589825, 2, 1376267, 589825, 2, 1310731, 589825, 2, 1245195, 589825, 2, 1179659, 589825, 2, 1114123, 589825, 2, 1048587, 589825, 2, 983051, 589825, 2, 917515, 589825, 2, 851979, 589825, 2, 786443, 589825, 2, 720907, 589825, 2, 655371, 589825, 2, 589835, 589825, 2, 524299, 589825, 2, 458763, 589825, 2, 393227, 589825, 2, 327691, 589825, 2, 262155, 589825, 2, 196619, 589825, 2, 131083, 589825, 2, 65547, 589825, 2, 11, 589825, 2, -65525, 589825, 2, -131061, 589825, 2, -196597, 589825, 2, -262133, 589825, 2, -327669, 589825, 2, -393205, 589825, 2, -458741, 589825, 2, -524277, 589825, 2, -589813, 589825, 2, -655349, 655361, 0, 2949130, 589825, 3, 2883594, 589825, 2, 2818058, 589825, 2, 2752522, 589825, 2, 2686986, 589825, 2, 2621450, 589825, 2, 2555914, 589825, 2, 2490378, 589825, 2, 2424842, 589825, 2, 2359306, 589825, 2, 2293770, 589825, 2, 2228234, 589825, 2, 2162698, 589825, 2, 2097162, 589825, 2, 2031626, 589825, 2, 1966090, 589825, 2, 1900554, 589825, 2, 1835018, 589825, 2, 1769482, 589825, 2, 1703946, 589825, 2, 1638410, 589825, 2, 1572874, 589825, 2, 1507338, 589825, 2, 1441802, 589825, 2, 1376266, 589825, 2, 1310730, 589825, 2, 1245194, 589825, 2, 1179658, 589825, 2, 1114122, 589825, 2, 1048586, 589825, 2, 983050, 589825, 2, 917514, 589825, 2, 851978, 589825, 2, 786442, 589825, 2, 720906, 589825, 2, 655370, 589825, 2, 589834, 589825, 2, 524298, 589825, 2, 458762, 589825, 2, 393226, 589825, 2, 327690, 589825, 2, 262154, 589825, 2, 196618, 589825, 2, 131082, 589825, 2, 65546, 589825, 2, 10, 589825, 2, -65526, 589825, 2, -131062, 589825, 2, -196598, 589825, 2, -262134, 589825, 2, -327670, 589825, 2, -393206, 589825, 2, -458742, 589825, 2, -524278, 589825, 2, -589814, 589825, 2, -655350, 655361, 0, 2949129, 589825, 3, 2883593, 589825, 2, 2818057, 589825, 2, 2752521, 589825, 2, 2686985, 589825, 2, 2621449, 589825, 2, 2555913, 589825, 2, 2490377, 589825, 2, 2424841, 589825, 2, 2359305, 589825, 2, 2293769, 589825, 2, 2228233, 589825, 2, 2162697, 589825, 2, 2097161, 589825, 2, 2031625, 589825, 2, 1966089, 589825, 2, 1900553, 589825, 2, 1835017, 589825, 2, 1769481, 589825, 2, 1703945, 589825, 2, 1638409, 589825, 2, 1572873, 589825, 2, 1507337, 589825, 2, 1441801, 589825, 2, 1376265, 589825, 2, 1310729, 589825, 2, 1245193, 589825, 2, 1179657, 589825, 2, 1114121, 589825, 2, 1048585, 589825, 2, 983049, 589825, 2, 917513, 589825, 2, 851977, 589825, 2, 786441, 589825, 2, 720905, 589825, 2, 655369, 589825, 2, 589833, 589825, 2, 524297, 589825, 2, 458761, 589825, 2, 393225, 589825, 2, 327689, 589825, 2, 262153, 589825, 2, 196617, 589825, 2, 131081, 589825, 2, 65545, 589825, 2, 9, 589825, 2, -65527, 589825, 2, -131063, 589825, 2, -196599, 589825, 2, -262135, 589825, 2, -327671, 589825, 2, -393207, 589825, 2, -458743, 589825, 2, -524279, 589825, 2, -589815, 589825, 2, -655351, 655361, 0, 2949128, 589825, 3, 2883592, 589825, 2, 2818056, 589825, 2, 2752520, 589825, 2, 2686984, 589825, 2, 2621448, 589825, 2, 2555912, 589825, 2, 2490376, 589825, 2, 2424840, 589825, 2, 2359304, 589825, 2, 2293768, 589825, 2, 2228232, 589825, 2, 2162696, 589825, 2, 2097160, 589825, 2, 2031624, 589825, 2, 1966088, 589825, 2, 1900552, 589825, 2, 1835016, 589825, 2, 1769480, 589825, 2, 1703944, 589825, 2, 1638408, 589825, 2, 1572872, 589825, 2, 1507336, 589825, 2, 1441800, 589825, 2, 1376264, 589825, 2, 1310728, 589825, 2, 1245192, 589825, 2, 1179656, 589825, 2, 1114120, 589825, 2, 1048584, 589825, 2, 983048, 589825, 2, 917512, 589825, 2, 851976, 589825, 2, 786440, 589825, 2, 720904, 589825, 2, 655368, 589825, 2, 589832, 589825, 2, 524296, 589825, 2, 458760, 589825, 2, 393224, 589825, 2, 327688, 589825, 2, 262152, 589825, 2, 196616, 589825, 2, 131080, 589825, 2, 65544, 589825, 2, 8, 589825, 2, -65528, 589825, 2, -131064, 589825, 2, -196600, 589825, 2, -262136, 589825, 2, -327672, 589825, 2, -393208, 589825, 2, -458744, 589825, 2, -524280, 589825, 2, -589816, 589825, 2, -655352, 655361, 0, 2949127, 589825, 3, 2883591, 589825, 2, 2818055, 589825, 2, 2752519, 589825, 2, 2686983, 589825, 2, 2621447, 589825, 2, 2555911, 589825, 2, 2490375, 589825, 2, 2424839, 589825, 2, 2359303, 589825, 2, 2293767, 589825, 2, 2228231, 589825, 2, 2162695, 589825, 2, 2097159, 589825, 2, 2031623, 589825, 2, 1966087, 589825, 2, 1900551, 589825, 2, 1835015, 589825, 2, 1769479, 589825, 2, 1703943, 589825, 2, 1638407, 589825, 2, 1572871, 589825, 2, 1507335, 589825, 2, 1441799, 589825, 2, 1376263, 589825, 2, 1310727, 589825, 2, 1245191, 589825, 2, 1179655, 589825, 2, 1114119, 589825, 2, 1048583, 589825, 2, 983047, 589825, 2, 917511, 589825, 2, 851975, 589825, 2, 786439, 589825, 2, 720903, 589825, 2, 655367, 589825, 2, 589831, 589825, 2, 524295, 589825, 2, 458759, 589825, 2, 393223, 589825, 2, 327687, 589825, 2, 262151, 589825, 2, 196615, 589825, 2, 131079, 589825, 2, 65543, 589825, 2, 7, 589825, 2, -65529, 589825, 2, -131065, 589825, 2, -196601, 589825, 2, -262137, 589825, 2, -327673, 589825, 2, -393209, 589825, 2, -458745, 589825, 2, -524281, 589825, 2, -589817, 589825, 2, -655353, 655361, 0, 2949126, 589825, 3, 2883590, 589825, 2, 2818054, 589825, 2, 2752518, 589825, 2, 2686982, 589825, 2, 2621446, 589825, 2, 2555910, 589825, 2, 2490374, 589825, 2, 2424838, 589825, 2, 2359302, 589825, 2, 2293766, 589825, 2, 2228230, 589825, 2, 2162694, 589825, 2, 2097158, 589825, 2, 2031622, 589825, 2, 1966086, 589825, 2, 1900550, 589825, 2, 1835014, 589825, 2, 1769478, 589825, 2, 1703942, 589825, 2, 1638406, 589825, 2, 1572870, 589825, 2, 1507334, 589825, 2, 1441798, 589825, 2, 1376262, 589825, 2, 1310726, 589825, 2, 1245190, 589825, 2, 1179654, 589825, 2, 1114118, 589825, 2, 1048582, 589825, 2, 983046, 589825, 2, 917510, 589825, 2, 851974, 589825, 2, 786438, 589825, 2, 720902, 589825, 2, 655366, 589825, 2, 589830, 589825, 2, 524294, 589825, 2, 458758, 589825, 2, 393222, 589825, 2, 327686, 589825, 2, 262150, 589825, 2, 196614, 589825, 2, 131078, 589825, 2, 65542, 589825, 2, 6, 589825, 2, -65530, 589825, 2, -131066, 589825, 2, -196602, 589825, 2, -262138, 589825, 2, -327674, 589825, 2, -393210, 589825, 2, -458746, 589825, 2, -524282, 589825, 2, -589818, 589825, 2, -655354, 655361, 0, 2949125, 589825, 3, 2883589, 589825, 2, 2818053, 589825, 2, 2752517, 589825, 2, 2686981, 589825, 2, 2621445, 589825, 2, 2555909, 589825, 2, 2490373, 589825, 2, 2424837, 589825, 2, 2359301, 589825, 2, 2293765, 589825, 2, 2228229, 589825, 2, 2162693, 589825, 2, 2097157, 589825, 2, 2031621, 589825, 2, 1966085, 589825, 2, 1900549, 589825, 2, 1835013, 589825, 2, 1769477, 589825, 2, 1703941, 589825, 2, 1638405, 589825, 2, 1572869, 589825, 2, 1507333, 589825, 2, 1441797, 589825, 2, 1376261, 589825, 2, 1310725, 589825, 2, 1245189, 589825, 2, 1179653, 589825, 2, 1114117, 589825, 2, 1048581, 589825, 2, 983045, 589825, 2, 917509, 589825, 2, 851973, 589825, 2, 786437, 589825, 2, 720901, 589825, 2, 655365, 589825, 2, 589829, 589825, 2, 524293, 589825, 2, 458757, 589825, 2, 393221, 589825, 2, 327685, 589825, 2, 262149, 589825, 2, 196613, 589825, 2, 131077, 589825, 2, 65541, 589825, 2, 5, 589825, 2, -65531, 589825, 2, -131067, 589825, 2, -196603, 589825, 2, -262139, 589825, 2, -327675, 589825, 2, -393211, 589825, 2, -458747, 589825, 2, -524283, 589825, 2, -589819, 589825, 2, -655355, 655361, 0, 2949124, 589825, 3, 2883588, 589825, 2, 2818052, 589825, 2, 2752516, 589825, 2, 2686980, 589825, 2, 2621444, 589825, 2, 2555908, 589825, 2, 2490372, 589825, 2, 2424836, 589825, 2, 2359300, 589825, 2, 2293764, 589825, 2, 2228228, 589825, 2, 2162692, 589825, 2, 2097156, 589825, 2, 2031620, 589825, 2, 1966084, 589825, 2, 1900548, 589825, 2, 1835012, 589825, 2, 1769476, 589825, 2, 1703940, 589825, 2, 1638404, 589825, 2, 1572868, 589825, 2, 1507332, 589825, 2, 1441796, 589825, 2, 1376260, 589825, 2, 1310724, 589825, 2, 1245188, 589825, 2, 1179652, 589825, 2, 1114116, 589825, 2, 1048580, 589825, 2, 983044, 589825, 2, 917508, 589825, 2, 851972, 589825, 2, 786436, 589825, 2, 720900, 589825, 2, 655364, 589825, 2, 589828, 589825, 2, 524292, 589825, 2, 458756, 589825, 2, 393220, 589825, 2, 327684, 589825, 2, 262148, 589825, 2, 196612, 589825, 2, 131076, 589825, 2, 65540, 589825, 2, 4, 589825, 2, -65532, 589825, 2, -131068, 589825, 2, -196604, 589825, 2, -262140, 589825, 2, -327676, 589825, 2, -393212, 589825, 2, -458748, 589825, 2, -524284, 589825, 2, -589820, 589825, 2, -655356, 655361, 0, 2949123, 589825, 3, 2883587, 589825, 2, 2818051, 589825, 2, 2752515, 589825, 2, 2686979, 589825, 2, 2621443, 589825, 2, 2555907, 589825, 2, 2490371, 589825, 2, 2424835, 589825, 2, 2359299, 589825, 2, 2293763, 589825, 2, 2228227, 589825, 2, 2162691, 589825, 2, 2097155, 589825, 2, 2031619, 589825, 2, 1966083, 589825, 2, 1900547, 589825, 2, 1835011, 589825, 2, 1769475, 589825, 2, 1703939, 589825, 2, 1638403, 589825, 2, 1572867, 589825, 2, 1507331, 589825, 2, 1441795, 589825, 2, 1376259, 589825, 2, 1310723, 589825, 2, 1245187, 589825, 2, 1179651, 589825, 2, 1114115, 589825, 2, 1048579, 589825, 2, 983043, 589825, 2, 917507, 589825, 2, 851971, 589825, 2, 786435, 589825, 2, 720899, 589825, 2, 655363, 589825, 2, 589827, 589825, 2, 524291, 589825, 2, 458755, 589825, 2, 393219, 589825, 2, 327683, 589825, 2, 262147, 589825, 2, 196611, 589825, 2, 131075, 589825, 2, 65539, 589825, 2, 3, 589825, 2, -65533, 589825, 2, -131069, 589825, 2, -196605, 589825, 2, -262141, 589825, 2, -327677, 589825, 2, -393213, 589825, 2, -458749, 589825, 2, -524285, 589825, 2, -589821, 589825, 2, -655357, 655361, 0, 2949122, 589825, 3, 2883586, 589825, 2, 2818050, 589825, 2, 2752514, 589825, 2, 2686978, 589825, 2, 2621442, 589825, 2, 2555906, 589825, 2, 2490370, 589825, 2, 2424834, 589825, 2, 2359298, 589825, 2, 2293762, 589825, 2, 2228226, 589825, 2, 2162690, 589825, 2, 2097154, 589825, 2, 2031618, 589825, 2, 1966082, 589825, 2, 1900546, 589825, 2, 1835010, 589825, 2, 1769474, 589825, 2, 1703938, 589825, 2, 1638402, 589825, 2, 1572866, 589825, 2, 1507330, 589825, 2, 1441794, 589825, 2, 1376258, 589825, 2, 1310722, 589825, 2, 1245186, 589825, 2, 1179650, 589825, 2, 1114114, 589825, 2, 1048578, 589825, 2, 983042, 589825, 2, 917506, 589825, 2, 851970, 589825, 2, 786434, 589825, 2, 720898, 589825, 2, 655362, 589825, 2, 589826, 589825, 2, 524290, 589825, 2, 458754, 589825, 2, 393218, 589825, 2, 327682, 589825, 2, 262146, 589825, 2, 196610, 589825, 2, 131074, 589825, 2, 65538, 589825, 2, 2, 589825, 2, -65534, 589825, 2, -131070, 589825, 2, -196606, 589825, 2, -262142, 589825, 2, -327678, 589825, 2, -393214, 589825, 2, -458750, 589825, 2, -524286, 589825, 2, -589822, 589825, 2, -655358, 655361, 0, 2949121, 589825, 3, 2883585, 589825, 2, 2818049, 589825, 2, 2752513, 589825, 2, 2686977, 589825, 2, 2621441, 589825, 2, 2555905, 589825, 2, 2490369, 589825, 2, 2424833, 589825, 2, 2359297, 589825, 2, 2293761, 589825, 2, 2228225, 589825, 2, 2162689, 589825, 2, 2097153, 589825, 2, 2031617, 589825, 2, 1966081, 589825, 2, 1900545, 589825, 2, 1835009, 589825, 2, 1769473, 589825, 2, 1703937, 589825, 2, 1638401, 589825, 2, 1572865, 589825, 2, 1507329, 589825, 2, 1441793, 589825, 2, 1376257, 589825, 2, 1310721, 589825, 2, 1245185, 589825, 2, 1179649, 589825, 2, 1114113, 589825, 2, 1048577, 589825, 2, 983041, 589825, 2, 917505, 589825, 2, 851969, 589825, 2, 786433, 589825, 2, 720897, 589825, 2, 655361, 589825, 2, 589825, 589825, 2, 524289, 589825, 2, 458753, 589825, 2, 393217, 589825, 2, 327681, 589825, 2, 262145, 589825, 2, 196609, 589825, 2, 131073, 589825, 2, 65537, 589825, 2, 1, 589825, 2, -65535, 589825, 2, -131071, 589825, 2, -196607, 589825, 2, -262143, 589825, 2, -327679, 589825, 2, -393215, 589825, 2, -458751, 589825, 2, -524287, 589825, 2, -589823, 589825, 2, -655359, 655361, 0, 2949120, 589825, 3, 2883584, 589825, 2, 2818048, 589825, 2, 2752512, 589825, 2, 2686976, 589825, 2, 2621440, 589825, 2, 2555904, 589825, 2, 2490368, 589825, 2, 2424832, 589825, 2, 2359296, 589825, 2, 2293760, 589825, 2, 2228224, 589825, 2, 2162688, 589825, 2, 2097152, 589825, 2, 2031616, 589825, 2, 1966080, 589825, 2, 1900544, 589825, 2, 1835008, 589825, 2, 1769472, 589825, 2, 1703936, 589825, 2, 1638400, 589825, 2, 1572864, 589825, 2, 1507328, 589825, 2, 1441792, 589825, 2, 1376256, 589825, 2, 1310720, 589825, 2, 1245184, 589825, 2, 1179648, 589825, 2, 1114112, 589825, 2, 1048576, 589825, 2, 983040, 589825, 2, 917504, 589825, 2, 851968, 589825, 2, 786432, 589825, 2, 720896, 589825, 2, 655360, 589825, 2, 589824, 589825, 2, 524288, 589825, 2, 458752, 589825, 2, 393216, 589825, 2, 327680, 589825, 2, 262144, 589825, 2, 196608, 589825, 2, 131072, 589825, 2, 65536, 589825, 2, 0, 589825, 2, -65536, 589825, 2, -131072, 589825, 2, -196608, 589825, 2, -262144, 589825, 2, -327680, 589825, 2, -393216, 589825, 2, -458752, 589825, 2, -524288, 589825, 2, -589824, 589825, 2, -655360, 655361, 0, 3014655, 589825, 3, 2949119, 589825, 2, 2883583, 589825, 2, 2818047, 589825, 2, 2752511, 589825, 2, 2686975, 589825, 2, 2621439, 589825, 2, 2555903, 589825, 2, 2490367, 589825, 2, 2424831, 589825, 2, 2359295, 589825, 2, 2293759, 589825, 2, 2228223, 589825, 2, 2162687, 589825, 2, 2097151, 589825, 2, 2031615, 589825, 2, 1966079, 589825, 2, 1900543, 589825, 2, 1835007, 589825, 2, 1769471, 589825, 2, 1703935, 589825, 2, 1638399, 589825, 2, 1572863, 589825, 2, 1507327, 589825, 2, 1441791, 589825, 2, 1376255, 589825, 2, 1310719, 589825, 2, 1245183, 589825, 2, 1179647, 589825, 2, 1114111, 589825, 2, 1048575, 589825, 2, 983039, 589825, 2, 917503, 589825, 2, 851967, 589825, 2, 786431, 589825, 2, 720895, 589825, 2, 655359, 589825, 2, 589823, 589825, 2, 524287, 589825, 2, 458751, 589825, 2, 393215, 589825, 2, 327679, 589825, 2, 262143, 589825, 2, 196607, 589825, 2, 131071, 589825, 2, 65535, 589825, 2, -1, 589825, 2, -65537, 589825, 2, -131073, 589825, 2, -196609, 589825, 2, -262145, 589825, 2, -327681, 589825, 2, -393217, 589825, 2, -458753, 589825, 2, -524289, 589825, 2, -589825, 655361, 0, 3014654, 589825, 3, 2949118, 589825, 2, 2883582, 589825, 2, 2818046, 589825, 2, 2752510, 589825, 2, 2686974, 589825, 2, 2621438, 589825, 2, 2555902, 589825, 2, 2490366, 589825, 2, 2424830, 589825, 2, 2359294, 589825, 2, 2293758, 589825, 2, 2228222, 589825, 2, 2162686, 589825, 2, 2097150, 589825, 2, 2031614, 589825, 2, 1966078, 589825, 2, 1900542, 589825, 2, 1835006, 589825, 2, 1769470, 589825, 2, 1703934, 589825, 2, 1638398, 589825, 2, 1572862, 589825, 2, 1507326, 589825, 2, 1441790, 589825, 2, 1376254, 589825, 2, 1310718, 589825, 2, 1245182, 589825, 2, 1179646, 589825, 2, 1114110, 589825, 2, 1048574, 589825, 2, 983038, 589825, 2, 917502, 589825, 2, 851966, 589825, 2, 786430, 589825, 2, 720894, 589825, 2, 655358, 589825, 2, 589822, 589825, 2, 524286, 589825, 2, 458750, 589825, 2, 393214, 589825, 2, 327678, 589825, 2, 262142, 589825, 2, 196606, 589825, 2, 131070, 589825, 2, 65534, 589825, 2, -2, 589825, 2, -65538, 589825, 2, -131074, 589825, 2, -196610, 589825, 2, -262146, 589825, 2, -327682, 589825, 2, -393218, 589825, 2, -458754, 589825, 2, -524290, 589825, 2, -589826, 655361, 0, 3014653, 589825, 3, 2949117, 589825, 2, 2883581, 589825, 2, 2818045, 589825, 2, 2752509, 589825, 2, 2686973, 589825, 2, 2621437, 589825, 2, 2555901, 589825, 2, 2490365, 589825, 2, 2424829, 589825, 2, 2359293, 589825, 2, 2293757, 589825, 2, 2228221, 589825, 2, 2162685, 589825, 2, 2097149, 589825, 2, 2031613, 589825, 2, 1966077, 589825, 2, 1900541, 589825, 2, 1835005, 589825, 2, 1769469, 589825, 2, 1703933, 589825, 2, 1638397, 589825, 2, 1572861, 589825, 2, 1507325, 589825, 2, 1441789, 589825, 2, 1376253, 589825, 2, 1310717, 589825, 2, 1245181, 589825, 2, 1179645, 589825, 2, 1114109, 589825, 2, 1048573, 589825, 2, 983037, 589825, 2, 917501, 589825, 2, 851965, 589825, 2, 786429, 589825, 2, 720893, 589825, 2, 655357, 589825, 2, 589821, 589825, 2, 524285, 589825, 2, 458749, 589825, 2, 393213, 589825, 2, 327677, 589825, 2, 262141, 589825, 2, 196605, 589825, 2, 131069, 589825, 2, 65533, 589825, 2, -3, 589825, 2, -65539, 589825, 2, -131075, 589825, 2, -196611, 589825, 2, -262147, 589825, 2, -327683, 589825, 2, -393219, 589825, 2, -458755, 589825, 2, -524291, 589825, 2, -589827, 655361, 0, 3014652, 589825, 3, 2949116, 589825, 2, 2883580, 589825, 2, 2818044, 589825, 2, 2752508, 589825, 2, 2686972, 589825, 2, 2621436, 589825, 2, 2555900, 589825, 2, 2490364, 589825, 2, 2424828, 589825, 2, 2359292, 589825, 2, 2293756, 589825, 2, 2228220, 589825, 2, 2162684, 589825, 2, 2097148, 589825, 2, 2031612, 589825, 2, 1966076, 589825, 2, 1900540, 589825, 2, 1835004, 589825, 2, 1769468, 589825, 2, 1703932, 589825, 2, 1638396, 589825, 2, 1572860, 589825, 2, 1507324, 589825, 2, 1441788, 589825, 2, 1376252, 589825, 2, 1310716, 589825, 2, 1245180, 589825, 2, 1179644, 589825, 2, 1114108, 589825, 2, 1048572, 589825, 2, 983036, 589825, 2, 917500, 589825, 2, 851964, 589825, 2, 786428, 589825, 2, 720892, 589825, 2, 655356, 589825, 2, 589820, 589825, 2, 524284, 589825, 2, 458748, 589825, 2, 393212, 589825, 2, 327676, 589825, 2, 262140, 589825, 2, 196604, 589825, 2, 131068, 589825, 2, 65532, 589825, 2, -4, 589825, 2, -65540, 589825, 2, -131076, 589825, 2, -196612, 589825, 2, -262148, 589825, 2, -327684, 589825, 2, -393220, 589825, 2, -458756, 589825, 2, -524292, 589825, 2, -589828, 655361, 0, 3014651, 589825, 3, 2949115, 589825, 2, 2883579, 589825, 2, 2818043, 589825, 2, 2752507, 589825, 2, 2686971, 589825, 2, 2621435, 589825, 2, 2555899, 589825, 2, 2490363, 589825, 2, 2424827, 589825, 2, 2359291, 589825, 2, 2293755, 589825, 2, 2228219, 589825, 2, 2162683, 589825, 2, 2097147, 589825, 2, 2031611, 589825, 2, 1966075, 589825, 2, 1900539, 589825, 2, 1835003, 589825, 2, 1769467, 589825, 2, 1703931, 589825, 2, 1638395, 589825, 2, 1572859, 589825, 2, 1507323, 589825, 2, 1441787, 589825, 2, 1376251, 589825, 2, 1310715, 589825, 2, 1245179, 589825, 2, 1179643, 589825, 2, 1114107, 589825, 2, 1048571, 589825, 2, 983035, 589825, 2, 917499, 589825, 2, 851963, 589825, 2, 786427, 589825, 2, 720891, 589825, 2, 655355, 589825, 2, 589819, 589825, 2, 524283, 589825, 2, 458747, 589825, 2, 393211, 589825, 2, 327675, 589825, 2, 262139, 589825, 2, 196603, 589825, 2, 131067, 589825, 2, 65531, 589825, 2, -5, 589825, 2, -65541, 589825, 2, -131077, 589825, 2, -196613, 589825, 2, -262149, 589825, 2, -327685, 589825, 2, -393221, 589825, 2, -458757, 589825, 2, -524293, 589825, 2, -589829, 655361, 0, 3014650, 589825, 3, 2949114, 589825, 2, 2883578, 589825, 2, 2818042, 589825, 2, 2752506, 589825, 2, 2686970, 589825, 2, 2621434, 589825, 2, 2555898, 589825, 2, 2490362, 589825, 2, 2424826, 589825, 2, 2359290, 589825, 2, 2293754, 589825, 2, 2228218, 589825, 2, 2162682, 589825, 2, 2097146, 589825, 2, 2031610, 589825, 2, 1966074, 589825, 2, 1900538, 589825, 2, 1835002, 589825, 2, 1769466, 589825, 2, 1703930, 589825, 2, 1638394, 589825, 2, 1572858, 589825, 2, 1507322, 589825, 2, 1441786, 589825, 2, 1376250, 589825, 2, 1310714, 589825, 2, 1245178, 589825, 2, 1179642, 589825, 2, 1114106, 589825, 2, 1048570, 589825, 2, 983034, 589825, 2, 917498, 589825, 2, 851962, 589825, 2, 786426, 589825, 2, 720890, 589825, 2, 655354, 589825, 2, 589818, 589825, 2, 524282, 589825, 2, 458746, 589825, 2, 393210, 589825, 2, 327674, 589825, 2, 262138, 589825, 2, 196602, 589825, 2, 131066, 589825, 2, 65530, 589825, 2, -6, 589825, 2, -65542, 589825, 2, -131078, 589825, 2, -196614, 589825, 2, -262150, 589825, 2, -327686, 589825, 2, -393222, 589825, 2, -458758, 589825, 2, -524294, 589825, 2, -589830, 655361, 0, 3014649, 589825, 3, 2949113, 589825, 2, 2883577, 589825, 2, 2818041, 589825, 2, 2752505, 589825, 2, 2686969, 589825, 2, 2621433, 589825, 2, 2555897, 589825, 2, 2490361, 589825, 2, 2424825, 589825, 2, 2359289, 589825, 2, 2293753, 589825, 2, 2228217, 589825, 2, 2162681, 589825, 2, 2097145, 589825, 2, 2031609, 589825, 2, 1966073, 589825, 2, 1900537, 589825, 2, 1835001, 589825, 2, 1769465, 589825, 2, 1703929, 589825, 2, 1638393, 589825, 2, 1572857, 589825, 2, 1507321, 589825, 2, 1441785, 589825, 2, 1376249, 589825, 2, 1310713, 589825, 2, 1245177, 589825, 2, 1179641, 589825, 2, 1114105, 589825, 2, 1048569, 589825, 2, 983033, 589825, 2, 917497, 589825, 2, 851961, 589825, 2, 786425, 589825, 2, 720889, 589825, 2, 655353, 589825, 2, 589817, 589825, 2, 524281, 589825, 2, 458745, 589825, 2, 393209, 589825, 2, 327673, 589825, 2, 262137, 589825, 2, 196601, 589825, 2, 131065, 589825, 2, 65529, 589825, 2, -7, 589825, 2, -65543, 589825, 2, -131079, 589825, 2, -196615, 589825, 2, -262151, 589825, 2, -327687, 589825, 2, -393223, 589825, 2, -458759, 589825, 2, -524295, 589825, 2, -589831, 655361, 0, 3014648, 589825, 3, 2949112, 589825, 2, 2883576, 589825, 2, 2818040, 589825, 2, 2752504, 589825, 2, 2686968, 589825, 2, 2621432, 589825, 2, 2555896, 589825, 2, 2490360, 589825, 2, 2424824, 589825, 2, 2359288, 589825, 2, 2293752, 589825, 2, 2228216, 589825, 2, 2162680, 589825, 2, 2097144, 589825, 2, 2031608, 589825, 2, 1966072, 589825, 2, 1900536, 589825, 2, 1835000, 589825, 2, 1769464, 589825, 2, 1703928, 589825, 2, 1638392, 589825, 2, 1572856, 589825, 2, 1507320, 589825, 2, 1441784, 589825, 2, 1376248, 589825, 2, 1310712, 589825, 2, 1245176, 589825, 2, 1179640, 589825, 2, 1114104, 589825, 2, 1048568, 589825, 2, 983032, 589825, 2, 917496, 589825, 2, 851960, 589825, 2, 786424, 589825, 2, 720888, 589825, 2, 655352, 589825, 2, 589816, 589825, 2, 524280, 589825, 2, 458744, 589825, 2, 393208, 589825, 2, 327672, 589825, 2, 262136, 589825, 2, 196600, 589825, 2, 131064, 589825, 2, 65528, 589825, 2, -8, 589825, 2, -65544, 589825, 2, -131080, 589825, 2, -196616, 589825, 2, -262152, 589825, 2, -327688, 589825, 2, -393224, 589825, 2, -458760, 589825, 2, -524296, 589825, 2, -589832, 655361, 0, 3014647, 589825, 3, 2949111, 589825, 2, 2883575, 589825, 2, 2818039, 589825, 2, 2752503, 589825, 2, 2686967, 589825, 2, 2621431, 589825, 2, 2555895, 589825, 2, 2490359, 589825, 2, 2424823, 589825, 2, 2359287, 589825, 2, 2293751, 589825, 2, 2228215, 589825, 2, 2162679, 589825, 2, 2097143, 589825, 2, 2031607, 589825, 2, 1966071, 589825, 2, 1900535, 589825, 2, 1834999, 589825, 2, 1769463, 589825, 2, 1703927, 589825, 2, 1638391, 589825, 2, 1572855, 589825, 2, 1507319, 589825, 2, 1441783, 589825, 2, 1376247, 589825, 2, 1310711, 589825, 2, 1245175, 589825, 2, 1179639, 589825, 2, 1114103, 589825, 2, 1048567, 589825, 2, 983031, 589825, 2, 917495, 589825, 2, 851959, 589825, 2, 786423, 589825, 2, 720887, 589825, 2, 655351, 589825, 2, 589815, 589825, 2, 524279, 589825, 2, 458743, 589825, 2, 393207, 589825, 2, 327671, 589825, 2, 262135, 589825, 2, 196599, 589825, 2, 131063, 589825, 2, 65527, 589825, 2, -9, 589825, 2, -65545, 589825, 2, -131081, 589825, 2, -196617, 589825, 2, -262153, 589825, 2, -327689, 589825, 2, -393225, 589825, 2, -458761, 589825, 2, -524297, 589825, 2, -589833, 655361, 0, 3014646, 589825, 3, 2949110, 589825, 2, 2883574, 589825, 2, 2818038, 589825, 2, 2752502, 589825, 2, 2686966, 589825, 2, 2621430, 589825, 2, 2555894, 589825, 2, 2490358, 589825, 2, 2424822, 589825, 2, 2359286, 589825, 2, 2293750, 589825, 2, 2228214, 589825, 2, 2162678, 589825, 2, 2097142, 589825, 2, 2031606, 589825, 2, 1966070, 589825, 2, 1900534, 589825, 2, 1834998, 589825, 2, 1769462, 589825, 2, 1703926, 589825, 2, 1638390, 589825, 2, 1572854, 589825, 2, 1507318, 589825, 2, 1441782, 589825, 2, 1376246, 589825, 2, 1310710, 589825, 2, 1245174, 589825, 2, 1179638, 589825, 2, 1114102, 589825, 2, 1048566, 589825, 2, 983030, 589825, 2, 917494, 589825, 2, 851958, 589825, 2, 786422, 589825, 2, 720886, 589825, 2, 655350, 589825, 2, 589814, 589825, 2, 524278, 589825, 2, 458742, 589825, 2, 393206, 589825, 2, 327670, 589825, 2, 262134, 589825, 2, 196598, 589825, 2, 131062, 589825, 2, 65526, 589825, 2, -10, 589825, 2, -65546, 589825, 2, -131082, 589825, 2, -196618, 589825, 2, -262154, 589825, 2, -327690, 589825, 2, -393226, 589825, 2, -458762, 589825, 2, -524298, 589825, 2, -589834, 655361, 0, 3014645, 589825, 3, 2949109, 589825, 2, 2883573, 589825, 2, 2818037, 589825, 2, 2752501, 589825, 2, 2686965, 589825, 2, 2621429, 589825, 2, 2555893, 589825, 2, 2490357, 589825, 2, 2424821, 589825, 2, 2359285, 589825, 2, 2293749, 589825, 2, 2228213, 589825, 2, 2162677, 589825, 2, 2097141, 589825, 2, 2031605, 589825, 2, 1966069, 589825, 2, 1900533, 589825, 2, 1834997, 589825, 2, 1769461, 589825, 2, 1703925, 589825, 2, 1638389, 589825, 2, 1572853, 589825, 2, 1507317, 589825, 2, 1441781, 589825, 2, 1376245, 589825, 2, 1310709, 589825, 2, 1245173, 589825, 2, 1179637, 589825, 2, 1114101, 589825, 2, 1048565, 589825, 2, 983029, 589825, 2, 917493, 589825, 2, 851957, 589825, 2, 786421, 589825, 2, 720885, 589825, 2, 655349, 589825, 2, 589813, 589825, 2, 524277, 589825, 2, 458741, 589825, 2, 393205, 589825, 2, 327669, 589825, 2, 262133, 589825, 2, 196597, 589825, 2, 131061, 589825, 2, 65525, 589825, 2, -11, 589825, 2, -65547, 589825, 2, -131083, 589825, 2, -196619, 589825, 2, -262155, 589825, 2, -327691, 589825, 2, -393227, 589825, 2, -458763, 589825, 2, -524299, 589825, 2, -589835, 655361, 0, 3014644, 589825, 3, 2949108, 589825, 2, 2883572, 589825, 2, 2818036, 589825, 2, 2752500, 589825, 2, 2686964, 589825, 2, 2621428, 589825, 2, 2555892, 589825, 2, 2490356, 589825, 2, 2424820, 589825, 2, 2359284, 589825, 2, 2293748, 589825, 2, 2228212, 589825, 2, 2162676, 589825, 2, 2097140, 589825, 2, 2031604, 589825, 2, 1966068, 589825, 2, 1900532, 589825, 2, 1834996, 589825, 2, 1769460, 589825, 2, 1703924, 589825, 2, 1638388, 589825, 2, 1572852, 589825, 2, 1507316, 589825, 2, 1441780, 589825, 2, 1376244, 589825, 2, 1310708, 589825, 2, 1245172, 589825, 2, 1179636, 589825, 2, 1114100, 589825, 2, 1048564, 589825, 2, 983028, 589825, 2, 917492, 589825, 2, 851956, 589825, 2, 786420, 589825, 2, 720884, 589825, 2, 655348, 589825, 2, 589812, 589825, 2, 524276, 589825, 2, 458740, 589825, 2, 393204, 589825, 2, 327668, 589825, 2, 262132, 589825, 2, 196596, 589825, 2, 131060, 589825, 2, 65524, 589825, 2, -12, 589825, 2, -65548, 589825, 2, -131084, 589825, 2, -196620, 589825, 2, -262156, 589825, 2, -327692, 589825, 2, -393228, 589825, 2, -458764, 589825, 2, -524300, 589825, 2, -589836, 655361, 0, 3014643, 524289, 3, 2949107, 524289, 1, 2883571, 524289, 1, 2818035, 524289, 1, 2752499, 524289, 1, 2686963, 524289, 1, 2621427, 524289, 1, 2555891, 524289, 1, 2490355, 524289, 1, 2424819, 524289, 1, 2359283, 524289, 1, 2293747, 524289, 1, 2228211, 524289, 1, 2162675, 524289, 1, 2097139, 524289, 1, 2031603, 524289, 1, 1966067, 524289, 1, 1900531, 524289, 1, 1834995, 524289, 1, 1769459, 524289, 1, 1703923, 524289, 1, 1638387, 524289, 1, 1572851, 524289, 1, 1507315, 524289, 1, 1441779, 524289, 1, 1376243, 524289, 1, 1310707, 524289, 1, 1245171, 524289, 1, 1179635, 524289, 1, 1114099, 524289, 1, 1048563, 524289, 1, 983027, 524289, 1, 917491, 524289, 1, 851955, 524289, 1, 786419, 524289, 1, 720883, 524289, 1, 655347, 524289, 1, 589811, 524289, 1, 524275, 524289, 1, 458739, 524289, 1, 393203, 524289, 1, 327667, 524289, 1, 262131, 524289, 1, 196595, 524289, 1, 131059, 524289, 1, 65523, 524289, 1, -13, 524289, 1, -65549, 524289, 1, -131085, 524289, 1, -196621, 524289, 1, -262157, 524289, 1, -327693, 524289, 1, -393229, 524289, 1, -458765, 524289, 1, -524301, 524289, 1, -589837, 524289, 0) +script = ExtResource("3_p1i7s") +start_area_corner_size = 3 + +[node name="Bunny Generator" type="Node2D" parent="." node_paths=PackedStringArray("player")] +script = ExtResource("4_pwecc") +bunny_prefab = ExtResource("5_k0p75") +player = NodePath("../Player") + +[node name="Player" type="CharacterBody2D" parent="." node_paths=PackedStringArray("animation_player")] +position = Vector2(1440, 810) +collision_layer = 0 +script = ExtResource("6_7c8a5") +animation_player = NodePath("Player Animator") + +[node name="Player Sprite" type="Sprite2D" parent="Player"] +position = Vector2(0, -20) +texture = ExtResource("7_2ag8c") +hframes = 8 +vframes = 4 + +[node name="Player Collider" type="CollisionPolygon2D" parent="Player"] +position = Vector2(2, -24) +polygon = PackedVector2Array(12, 32, -16, 32, -16, -24, 12, -24) + +[node name="Player Camera" type="Camera2D" parent="Player"] +position = Vector2(0, -25) +zoom = Vector2(2, 2) +position_smoothing_enabled = true +drag_horizontal_enabled = true +drag_vertical_enabled = true +editor_draw_drag_margin = true + +[node name="Player Animator" type="AnimationPlayer" parent="Player"] +libraries = { +"": SubResource("AnimationLibrary_bi1h3") +} + +[node name="WeaponController" type="Node2D" parent="Player"] +position = Vector2(0, -16) +script = ExtResource("8_4fajh") +projectile_prefab = ExtResource("9_nh6rw") + +[node name="Node" type="Node" parent="Player"] +script = ExtResource("10_6p662") +player_audio_pool = [NodePath("Audio1"), NodePath("Audio2"), NodePath("Audio3")] + +[node name="Audio1" type="AudioStreamPlayer" parent="Player/Node"] +stream = ExtResource("10_gfpg3") +pitch_scale = 1.25 + +[node name="Audio2" type="AudioStreamPlayer" parent="Player/Node"] +stream = ExtResource("11_rodhd") +pitch_scale = 1.25 + +[node name="Audio3" type="AudioStreamPlayer" parent="Player/Node"] +stream = ExtResource("12_88xxb") +pitch_scale = 1.25 diff --git a/Scripts/SFX/PlayerAudioManager.gd b/Scripts/SFX/PlayerAudioManager.gd new file mode 100644 index 0000000..5f29e3c --- /dev/null +++ b/Scripts/SFX/PlayerAudioManager.gd @@ -0,0 +1,22 @@ +extends Node + +@export var player_audio_pool = [] + +var random_audio : AudioStreamPlayer + +func _ready(): + pass + +func _process(delta): + random_audio_setter() + + if !self.get_parent().velocity.is_zero_approx() && !random_audio.is_playing(): + random_audio.play() + pass + pass + + +func random_audio_setter(): + random_audio = get_node(player_audio_pool[randi_range(0, 2)]) + random_audio.set_max_polyphony(10000) + pass diff --git a/Scripts/WeaponSystem/Projectile.gd b/Scripts/WeaponSystem/Projectile.gd index 2ecfdcb..1d13e7e 100644 --- a/Scripts/WeaponSystem/Projectile.gd +++ b/Scripts/WeaponSystem/Projectile.gd @@ -2,6 +2,7 @@ extends Area2D @export var speed : float = 80.0 @export var damage : int = 1 +@export var audio_pool = [] @export_flags_2d_physics var map_collision_layer : int @export_flags_2d_physics var bunny_collision_layer : int diff --git a/Scripts/WeaponSystem/WeaponController.gd b/Scripts/WeaponSystem/WeaponController.gd index f501ddb..766ef56 100644 --- a/Scripts/WeaponSystem/WeaponController.gd +++ b/Scripts/WeaponSystem/WeaponController.gd @@ -19,10 +19,12 @@ func rotate_to_pointer(): func spawn_projectile(pos : Vector2, dir : float, speed: float, damage : int): var projectile = projectilePrefab.instantiate() + var projectile_audio = projectile.get_node(projectile.audio_pool[randi_range(0, 2)]) projectile.global_position = pos projectile.dir = dir projectile.speed = speed projectile.damage = damage projectile.is_displayed_folded() get_tree().root.add_child(projectile) + projectile_audio.play() pass