From 3d1a4019e96a6fdfe01eccf2dce0bd6152e2b79f Mon Sep 17 00:00:00 2001 From: zman27 Date: Thu, 20 Jan 2022 23:33:07 -0500 Subject: [PATCH] first commit --- .DS_Store | Bin 0 -> 6148 bytes .import/.gdignore | 1 + ...h.png-373349fe5906fa24a595247b3fc0d517.md5 | 3 + ....png-373349fe5906fa24a595247b3fc0d517.stex | Bin 0 -> 1296 bytes ...2.png-5f2e622985802cf154a9485121f4ce36.md5 | 3 + ....png-5f2e622985802cf154a9485121f4ce36.stex | Bin 0 -> 1264 bytes ...0.png-4190a40b216d2306867a0c3dad72d3da.md5 | 3 + ....png-4190a40b216d2306867a0c3dad72d3da.stex | Bin 0 -> 2929 bytes ...1.png-16771573ec176a96051d844379b63b8b.md5 | 3 + ....png-16771573ec176a96051d844379b63b8b.stex | Bin 0 -> 2532 bytes ...2.png-a0aa0ff5aa74157d0c1656e29d64956b.md5 | 3 + ....png-a0aa0ff5aa74157d0c1656e29d64956b.stex | Bin 0 -> 2196 bytes ...n.png-487276ed1e3a0c39cad0279d744ee560.md5 | 3 + ....png-487276ed1e3a0c39cad0279d744ee560.stex | Bin 0 -> 1496 bytes Actors/Fish.gd | 152 ++++++++++++++++++ Actors/Fish.tscn | 80 +++++++++ Art/food0.png | Bin 0 -> 1267 bytes Art/food0.png.import | 34 ++++ Art/food1.png | Bin 0 -> 1149 bytes Art/food1.png.import | 34 ++++ Art/food2.png | Bin 0 -> 1077 bytes Art/food2.png.import | 34 ++++ Button.gd | 21 +++ Food.tscn | 42 +++++ FoodSprites.gd | 11 ++ TankEdge.gd | 13 ++ TankEdge.tscn | 14 ++ World.gd | 9 ++ World.tscn | 43 +++++ default_env.tres | 7 + export_presets.cfg | 31 ++++ fish.png | Bin 0 -> 2588 bytes fish.png.import | 35 ++++ fish2.png | Bin 0 -> 2586 bytes fish2.png.import | 35 ++++ icon.png | Bin 0 -> 3305 bytes icon.png.import | 35 ++++ project.godot | 52 ++++++ 38 files changed, 701 insertions(+) create mode 100644 .DS_Store create mode 100644 .import/.gdignore create mode 100644 .import/fish.png-373349fe5906fa24a595247b3fc0d517.md5 create mode 100644 .import/fish.png-373349fe5906fa24a595247b3fc0d517.stex create mode 100644 .import/fish2.png-5f2e622985802cf154a9485121f4ce36.md5 create mode 100644 .import/fish2.png-5f2e622985802cf154a9485121f4ce36.stex create mode 100644 .import/food0.png-4190a40b216d2306867a0c3dad72d3da.md5 create mode 100644 .import/food0.png-4190a40b216d2306867a0c3dad72d3da.stex create mode 100644 .import/food1.png-16771573ec176a96051d844379b63b8b.md5 create mode 100644 .import/food1.png-16771573ec176a96051d844379b63b8b.stex create mode 100644 .import/food2.png-a0aa0ff5aa74157d0c1656e29d64956b.md5 create mode 100644 .import/food2.png-a0aa0ff5aa74157d0c1656e29d64956b.stex create mode 100644 .import/icon.png-487276ed1e3a0c39cad0279d744ee560.md5 create mode 100644 .import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex create mode 100644 Actors/Fish.gd create mode 100644 Actors/Fish.tscn create mode 100644 Art/food0.png create mode 100644 Art/food0.png.import create mode 100644 Art/food1.png create mode 100644 Art/food1.png.import create mode 100644 Art/food2.png create mode 100644 Art/food2.png.import create mode 100644 Button.gd create mode 100644 Food.tscn create mode 100644 FoodSprites.gd create mode 100644 TankEdge.gd create mode 100644 TankEdge.tscn create mode 100644 World.gd create mode 100644 World.tscn create mode 100644 default_env.tres create mode 100644 export_presets.cfg create mode 100644 fish.png create mode 100644 fish.png.import create mode 100644 fish2.png create mode 100644 fish2.png.import create mode 100644 icon.png create mode 100644 icon.png.import create mode 100644 project.godot diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..f34dd0076a260e80f96ebca0b726ef3e0ced36a3 GIT binary patch literal 6148 zcmeHKJx{|h5PgOYkytu1`WH~KGDT647!XSZGpQN^sI*nv2*H$}&bvEpY)xW_zwH5O!EY*9X z`3u@=6l@JwU-OZ^(TL%i?ov%h^^TEPugMv32AlzBV6+VI%ofSc483;-oB?OxhXL6i zBAZ~Iurt)HgPmRhh!dJssLNeKa$>?fVP{AWC0HuaQbW381WTtqrno#|XK3jNx-#cU zD}P^Jg04<`)Nq8{(0gaV8R#=`YQw3V|JVFv1~2*j6dySQ&cHuoAWX`6S@5OO*?RPP xa@Iz+M>Y|O>qMbY@BIXDAp6LJ+rg3>Ob#|2)ge7xs9Cv1GqNu@7?nirqC1c6)sFm z2bLxTINMZpIgYc<;v$Ppz{!aMhzkS(UKq#%1?~VI!yIO0LOMn)O;hHiTrQPL<)j5oYY`iI-*Du*SQe9#l z@IAF;NC_8$`%sIJ4YmLhS@AO_G{xNkOoC+iHH=W{kOT*xLVs9Vx(&8smX&mnh2Q}Q ztymJf1BDVbVwFPhHH2`7E0M|&Ry2(03CfT)0dHUgiPWSR2VtQ%EG3Az&eEPf0fJ;n z;RT+|iB?8npl!@B?nZoKrS~D^)TykHkQYszl5YijZ z0nkv1%so{yjHMU{UA}^5v}(16VG&|9jGh(@0>Ic>&+2Uy0tm`nkwT?bYqVA*Y2vzn zbPlFKM0B~buBgRKS-`m$|#V{kMDb5K-s94sS86N@w42>xp zuiWGJFk4O$E5kunN>c_0e2F8ZH5FiB3x#r)HRHn=MmW*yRa`IwCt2D|jDu$=v}9S& z3|kmsVQuXdAB5#J#o0lTr!1r3f@A0tzuTuRWJVp#mZ=j9TRaSuNu-1eCQ>*>R$@MQ z3;BLWI!7`hf{U$@69NNis6-?H0APd@olb2GZVHtegwzrt`~q^E6S!pTjY?^waU#P& zTVSO%0RRdmYK=x^gk1p`VWB~YQc7GiFyO!=$T2W5aL!}T%t(q-t2KH=%Wd&65cibP zxXvYH=E%Ym0T*1y2$_;bh@vQpluPZ2Tv|o;-419}=NhM9wG@@x*y{GpY+A%4&CvwSM0T&F!969s9%BhC*BMySNAEi<`Nm0}T zWiFRWrS?4bwQ~^6#VEvTkqiS}$T4tE;L<8^jsw9T=q*CDlmI{6-^j);27b9;#bWP* Gf3g84HX|+o literal 0 HcmV?d00001 diff --git a/.import/fish2.png-5f2e622985802cf154a9485121f4ce36.md5 b/.import/fish2.png-5f2e622985802cf154a9485121f4ce36.md5 new file mode 100644 index 0000000..c2d2ffc --- /dev/null +++ b/.import/fish2.png-5f2e622985802cf154a9485121f4ce36.md5 @@ -0,0 +1,3 @@ +source_md5="ebfebe3f0c5a78c8ace93517cfa3dccc" +dest_md5="0c0e4c0c7af86b5a536b6f61c645c9f7" + diff --git a/.import/fish2.png-5f2e622985802cf154a9485121f4ce36.stex b/.import/fish2.png-5f2e622985802cf154a9485121f4ce36.stex new file mode 100644 index 0000000000000000000000000000000000000000..4202ebde6d1b632819b0b6f543f8e1875f88b542 GIT binary patch literal 1264 zcmVS>Z$%y1%C!^8!1Y6k8$u1*ngaG z9IpXbY&M(40-%eD(vj4taV^&!1)(B`ROSkIe82)Vj1+o3Bg=2`B^ri72o50#A!)9* zAq1T%rYXI_ZaPo|auVqvv>+5RnM|P|%t;6t;Bkya(A*Qpj3tO}3Ds5z5;pwd zTh8VkK5$22pJEWSM|jEw*(pX6KHCi1NrH1t#H z2s9c2h{LneEAjCb4P)iutu;qRDo0q{4G}Nm0V-Ee3?(eI=7R*6UPa z!7C&EC$@)zk5=uh=V>MDO z0SyA(j;~^nR>B8&-~^-LV+%YBl!8Yx-twb8MMP*3ad!|1tdJb62x%&X+cYiCcPO1B zxeHhCVu)Q@+JKC!A;c8rcD}DlXC*bA=BfKnh*r7^=8}iI>R*FC1>h)Y zs5HT+T0}cha%zYT2~?cFzz6P9IOTp8fc0}h@mO1 zR!2i6H(G-&X_@du{~*PQm6+rr3Gb133-m3rE)M|ck) z(&_E^0d%Iw8i|cCOhD?9wd7zsph86O^W_Y3>=B-a>yFpfq}X`;B-hLd!>9%L4i*U& zSWXM>5*3LMbseO*iJGFck`azlorYJaqFjjgVNNcPBuOY_GCxH!!^lqrHLd_Z8w8L|T%>vOJLOKSKIQF{| a$RI-YuwNGLsWtM?PlGuv68R1LPZS0T*D)&q literal 0 HcmV?d00001 diff --git a/.import/food0.png-4190a40b216d2306867a0c3dad72d3da.md5 b/.import/food0.png-4190a40b216d2306867a0c3dad72d3da.md5 new file mode 100644 index 0000000..3ca38e1 --- /dev/null +++ b/.import/food0.png-4190a40b216d2306867a0c3dad72d3da.md5 @@ -0,0 +1,3 @@ +source_md5="b74c4398dc267c1662c70b37259bfc07" +dest_md5="42052ea1a3189df986255e736614620e" + diff --git a/.import/food0.png-4190a40b216d2306867a0c3dad72d3da.stex b/.import/food0.png-4190a40b216d2306867a0c3dad72d3da.stex new file mode 100644 index 0000000000000000000000000000000000000000..e450c13613d72b35cfbda7b194c53f571feccbbf GIT binary patch literal 2929 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 bgW~@IkXIQgR3;d@00000NkvXXu0mjf`isV5 literal 0 HcmV?d00001 diff --git a/.import/food1.png-16771573ec176a96051d844379b63b8b.md5 b/.import/food1.png-16771573ec176a96051d844379b63b8b.md5 new file mode 100644 index 0000000..0d0e9d5 --- /dev/null +++ b/.import/food1.png-16771573ec176a96051d844379b63b8b.md5 @@ -0,0 +1,3 @@ +source_md5="14115228e2292e7cbf50d5599a0be86c" +dest_md5="1e4414700c1bb4fa1cab9f9913cfe14a" + diff --git a/.import/food1.png-16771573ec176a96051d844379b63b8b.stex b/.import/food1.png-16771573ec176a96051d844379b63b8b.stex new file mode 100644 index 0000000000000000000000000000000000000000..d166f6d543c96773676cf33cc69fc3b0fc5e670d GIT binary patch literal 2532 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 literal 0 HcmV?d00001 diff --git a/Actors/Fish.gd b/Actors/Fish.gd new file mode 100644 index 0000000..015903d --- /dev/null +++ b/Actors/Fish.gd @@ -0,0 +1,152 @@ +extends KinematicBody2D + +# external settings +export var swim_speed: float = 30.0 +export var swim_up_down_variance = 0.75 + +# variables +var velocity = Vector2() +var dropping := true +var turningright := false +var turningleft := false +var nearest_food : Node +var hungry := true +var canseefood := false + + + + +func _ready() -> void: + randomize() # generate random seed to randomize each fish + + # SETTINGS + var swim_speed_variance = 0.25 + + # CONNECT SIGNAL + var edgeL = get_tree().get_root().find_node("TankEdgeL", true, false) + edgeL.connect("edgehit", self, "handle_edgehit") + var edgeR = get_tree().get_root().find_node("TankEdgeR", true, false) + edgeR.connect("edgehit", self, "handle_edgehit") + + # ACTUAL CODE + swim_speed = swim_speed * (1 + rand_range(-swim_speed_variance, swim_speed_variance)) # give the fish a random speed in range + $DropTimer.wait_time = rand_range(0.5,2) # drop the fish to a random depth in range + $AnimatedSprite.play() + + if randf() >= 0.5: + $AnimatedSprite.animation = "left" + else: + $AnimatedSprite.animation = "right" + + + + +func handle_edgehit(action: String): + if action == "turn right": + turningright = true + elif action == "turn left": + turningleft = true + + + + +func _process(delta: float) -> void: + #print(velocity) + if dropping: + velocity = Vector2(0,175) + + if get_tree().get_nodes_in_group("Food").size() > 0: + canseefood = true + nearest_food = find_nearest_food() + # $Line2D.set_point_position(1, nearest_food.get_global_position() - get_global_position()) + else: + canseefood = false + + if hungry and canseefood: + velocity = position.direction_to(nearest_food.get_global_position()) * 100 # idk why i need to x100 this but i do + + # THIS ALWAYS CONTROLS WHERE THE FISH IS MOVING + move_and_slide(velocity) + + + + + +# func _on_Vision_body_entered(body: Node) -> void: + + # if body.is_in_group("Food"): + # print("Yummy! I see some food!") +# var hungry: bool +# var angle_toward_food: float + +# if hungry: +# angle_toward_food = get_angle(me, nearest_food) +# natural_movement_angle = random(-15, 15) +# natural_movement = angle_toward_food + natural_movement_angle +# +# random_speed = random(0, 5) + 3 +# +# move_and_slide(vector2(random_speed, natural_movement)) + + +func _on_SwimTimer_timeout() -> void: + + if not canseefood: + var direction = randf() + var swimdirection = 0 + if direction >= .75 or turningright: + swimdirection = 1 + $AnimatedSprite.animation = "right" + turningright = false + if direction <= .25 or turningleft: + swimdirection = -1 + $AnimatedSprite.animation = "left" + turningleft = false + + velocity = Vector2(1, rand_range(-swim_up_down_variance, swim_up_down_variance)) + velocity = velocity * swim_speed * swimdirection + # rotate correctly for both directions & sprite animations + $AnimatedSprite.rotation = Vector2(0,0).angle_to_point(velocity) + deg2rad(90 * (swimdirection + 1) * swimdirection) + + + + +func _on_DropTimer_timeout(): + dropping = false + + + + +# identify and record the nearest food +func find_nearest_food() -> Node: + var all_food = get_tree().get_nodes_in_group("Food") + + if get_tree().get_nodes_in_group("Food").size() > 0: + nearest_food = all_food[0] # assume the first food is closest + + # look through spawn nodes to see if any are closer + for food in all_food: + if food.global_position.distance_to(global_position) < nearest_food.global_position.distance_to(global_position): + nearest_food = food + + return nearest_food + else: + return null + + + + +func _on_FishHitbox_body_entered(body: Node) -> void: + if body.is_in_group("Food") and hungry: + body.queue_free() + hungry = false + $HungerTimer.start() + + + + +func _on_HungerTimer_timeout(): + if hungry: + queue_free() + else: + hungry = true diff --git a/Actors/Fish.tscn b/Actors/Fish.tscn new file mode 100644 index 0000000..24c09dd --- /dev/null +++ b/Actors/Fish.tscn @@ -0,0 +1,80 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://Actors/Fish.gd" type="Script" id=1] +[ext_resource path="res://fish.png" type="Texture" id=2] +[ext_resource path="res://fish2.png" type="Texture" id=3] + +[sub_resource type="CapsuleShape2D" id=1] +radius = 25.4989 +height = 59.0012 + +[sub_resource type="RectangleShape2D" id=2] +extents = Vector2( 253, 195 ) + +[sub_resource type="SpriteFrames" id=3] +animations = [ { +"frames": [ ExtResource( 3 ) ], +"loop": true, +"name": "left", +"speed": 5.0 +}, { +"frames": [ ExtResource( 2 ) ], +"loop": true, +"name": "right", +"speed": 5.0 +} ] + +[node name="Fish" type="KinematicBody2D" groups=["Fish"]] +position = Vector2( 56.4995, 307.501 ) +script = ExtResource( 1 ) +__meta__ = { +"_edit_group_": true +} +swim_speed = 90.0 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2( -1, 0 ) +rotation = 1.5708 +shape = SubResource( 1 ) + +[node name="Vision" type="Area2D" parent="."] + +[node name="VisionRadius" type="CollisionShape2D" parent="Vision"] +shape = SubResource( 2 ) + +[node name="SwimTimer" type="Timer" parent="."] +autostart = true + +[node name="DropTimer" type="Timer" parent="."] +wait_time = 2.0 +one_shot = true +autostart = true + +[node name="HungerTimer" type="Timer" parent="."] +wait_time = 10.0 +autostart = true + +[node name="AnimatedSprite" type="AnimatedSprite" parent="."] +frames = SubResource( 3 ) +animation = "left" + +[node name="FishHitbox" type="Area2D" parent="."] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="FishHitbox"] +position = Vector2( -1, 0 ) +rotation = 1.5708 +shape = SubResource( 1 ) + +[node name="Line2D" type="Line2D" parent="."] +points = PoolVector2Array( 0, 0, 0, 0 ) + +[node name="Timer2" type="Timer" parent="."] +wait_time = 60.0 +one_shot = true +autostart = true + +[connection signal="body_entered" from="Vision" to="." method="_on_Vision_body_entered"] +[connection signal="timeout" from="SwimTimer" to="." method="_on_SwimTimer_timeout"] +[connection signal="timeout" from="DropTimer" to="." method="_on_DropTimer_timeout"] +[connection signal="timeout" from="HungerTimer" to="." method="_on_HungerTimer_timeout"] +[connection signal="body_entered" from="FishHitbox" to="." method="_on_FishHitbox_body_entered"] diff --git a/Art/food0.png b/Art/food0.png new file mode 100644 index 0000000000000000000000000000000000000000..0565a611822195b77621593d162481fac347575c GIT binary patch literal 1267 zcmVrN9<5atbh1QY)mW27yDC|9XiL1UVNA!_gvf`q6T6zNg{DhHxfCGzM>Yhirt|9uMy ztMPm`a1SMmoS`YBq#7@|QHYPVaG_bvWfJPIh12ThTtfXe+iS{?Y@hCg)roF%d^`t) zdJcP1XnEwAx|QwUbvE8j_UOM`k&#YCS4EYA)95)G3&yX{#MRGtyGms1{waNIIEjY@ zLdUz=*I-RA-k386Y zV_5}GqL9GzG@c$3+5}bwe^MGS%T0F+DTG-eg-G!H%6LZ!UyuMXgfJjW)OapgFlg;P?}q|_RpWe zzZh$iv$hvSz|)b|`Xs$-J41*A@InwuJ&+#l=~b-l#ScIuJ9r_osIWU=X}H;Wnk&+h zQaGY+)*%)~sfsx;S+u;9IX2n#6c>nTnUr04X)GDLlSlskAulEtSu9(H^BaUl=4<_@0K_FkpA zL43$Sr^%E%xFt#R=-SIPH_))i*A$dHI3YDO=WiC)o dM=~@;Zewp`Wpbznf9?PP002ovPDHLkV1gxYPuTzf literal 0 HcmV?d00001 diff --git a/Art/food0.png.import b/Art/food0.png.import new file mode 100644 index 0000000..5764b48 --- /dev/null +++ b/Art/food0.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/food0.png-4190a40b216d2306867a0c3dad72d3da.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Art/food0.png" +dest_files=[ "res://.import/food0.png-4190a40b216d2306867a0c3dad72d3da.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Art/food1.png b/Art/food1.png new file mode 100644 index 0000000000000000000000000000000000000000..63813b34d385738ac9726023775ac216e04ba312 GIT binary patch literal 1149 zcmV-@1cLjCP)M!0Ojd^wlz1*KIG3?@%rAV z`F;ExS=9goQ~G2N1VQD9(nFSU_k<)mj|6nm=^?8Ti^>Igg0J|+;9qhDYMFe?O~vL{s<&>KYiD928;?@+ zq#+Ptx6{5`^C=?i!rqlM@a7X24SEXkD-Eciu7%xhK1I{MA7S?;4R-U1i^>K@feOM6 z_vQIO`$3scQNqr9K2OgZf;6APnA5o7marS`R z^9kAy(|iV%HOIl3r+r!G({Jo747cBgk@?h#_9>p$ z&B^9~HmMv{F`vO@?Z1`5?5L9Y^pdrf_Qu*f=JW#gesP4AraL^0Byg&Fv{vzQcChn+ zOk{%k)iG;rca=15J-soYU)DN3faLd(XwU}7(btOGu#rU~Q; zV6h9KfaY4jwEK)fy0;I@Q&<+7k`C0TL!7{({7m^VvfRz*dj0`dO4SCaPgs`#001p? zMObuGZ)S9NVRB^vVtFoNY;SL5WO*)Qa(QrcZ!T$VVP|D7P)Z)9b1s0M%T P00000NkvXXu0mjf3Zyiy literal 0 HcmV?d00001 diff --git a/Art/food1.png.import b/Art/food1.png.import new file mode 100644 index 0000000..bc8c698 --- /dev/null +++ b/Art/food1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/food1.png-16771573ec176a96051d844379b63b8b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Art/food1.png" +dest_files=[ "res://.import/food1.png-16771573ec176a96051d844379b63b8b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Art/food2.png b/Art/food2.png new file mode 100644 index 0000000000000000000000000000000000000000..f650693bf6dce60f9c5228d1fcfb4a66462fc23d GIT binary patch literal 1077 zcmV-51j_q~P)&P+{Bm3||MLkH5y@R*jY|2KUu z%qX-}!{1CQG?(tHt*Z&bFWq{P1$KM&F=@FBGR&=UTyBv4e1z&yR&!aip@*`I|o zMr_V@vz4(nwlo~E0msMD`Wx1@WM~MikQyWsM6#4TKoLl%*v|H{waEl~aW%^31{&>E zPlb2T1`|Dp4@ySc+B)h@Bu>@be%Q^vX&vm#{kRe9={C0c;3V6c>#~7gpYCGI*JEsP zu-TRFlYRBAz5)g9s6UY?DrQht2Sp&=Vq+@7wr0E7@A=av;Kk^kNj9vY&#Ovzd~Hes zRY9UioUf*6e9g48A2X-e&uou3y6de|(FM-vPhCQYwnzqvAyKa&ouU-FquLeePoB1T zIg&tC_5)}sbSJ=A(Do0g{xEtlXa$NP0VGo?pdxgCeJh^t=d$}44**T9vVs@l<<$b} zMt9^wv@WZ?=zk3!+1wtpUbv=a6?{XrP}dPUnENg%iBKm1j&k@ zv@I0x$70^W=42(jW0e)SAsInZK-;M}o^2l*9!oobq92dxSiFX~k7VRz%~~Xv7SboDsH8 zWVC(d#LJNu3)nrGS)FJP6i~#Q8&UHhPg^PY3PA(AdN*$N$25RHyV4vuuZ6jQn7!Lx9}ksKkGgpKBf#v6bAO!^LY=ru8N%mZQ&8J=Nq|G`p{5Grvb9sNfZIf zVY`D->UASJ6~O8yYZY@hY(h(AUoyc1WU!NNRrE|(kyAWB>|{l&C~`>zFRrv4RjrDJ z`!_cZR>DsDRz;Ei-7h;SMHLI3@{t^sYA28(38Itm_+Mlif001p?MObuGZ)S9NVRB^vVtFoNY;SL5 vWO*)Qa(QrcZ!T$VVP|D7P)Z)9b1s0M%T00000NkvXXu0mjf61ekt literal 0 HcmV?d00001 diff --git a/Art/food2.png.import b/Art/food2.png.import new file mode 100644 index 0000000..6b9027a --- /dev/null +++ b/Art/food2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/food2.png-a0aa0ff5aa74157d0c1656e29d64956b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Art/food2.png" +dest_files=[ "res://.import/food2.png-a0aa0ff5aa74157d0c1656e29d64956b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Button.gd b/Button.gd new file mode 100644 index 0000000..a6df910 --- /dev/null +++ b/Button.gd @@ -0,0 +1,21 @@ +extends Button + + + + +func _on_Button_pressed(): + var scene = load("res://Actors/Fish.tscn") + var fish = scene.instance() + fish.position = Vector2(rand_range(300,get_viewport().size.x-300),-100) + add_child(fish) + + + + +func _unhandled_input(event: InputEvent) -> void: + if event.is_action_pressed("Spawn Fish"): + var scene = load("res://Actors/Fish.tscn") + var fish = scene.instance() + fish.position = Vector2(get_global_mouse_position().x, -100) + add_child(fish) + diff --git a/Food.tscn b/Food.tscn new file mode 100644 index 0000000..9379c7b --- /dev/null +++ b/Food.tscn @@ -0,0 +1,42 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://Art/food0.png" type="Texture" id=1] +[ext_resource path="res://Art/food2.png" type="Texture" id=2] +[ext_resource path="res://Art/food1.png" type="Texture" id=3] +[ext_resource path="res://FoodSprites.gd" type="Script" id=4] + +[sub_resource type="SpriteFrames" id=1] +animations = [ { +"frames": [ ExtResource( 3 ) ], +"loop": true, +"name": "1", +"speed": 5.0 +}, { +"frames": [ ExtResource( 2 ) ], +"loop": true, +"name": "2", +"speed": 5.0 +}, { +"frames": [ ExtResource( 1 ) ], +"loop": true, +"name": "0", +"speed": 5.0 +} ] + +[sub_resource type="CircleShape2D" id=2] +radius = 16.0182 + +[node name="Food" type="RigidBody2D" groups=["Food"]] +collision_layer = 2 +mass = 0.2 +linear_damp = 1.0 + +[node name="FoodSprites" type="AnimatedSprite" parent="."] +scale = Vector2( 0.5, 0.5 ) +frames = SubResource( 1 ) +animation = "2" +script = ExtResource( 4 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2( 0, -0.235703 ) +shape = SubResource( 2 ) diff --git a/FoodSprites.gd b/FoodSprites.gd new file mode 100644 index 0000000..c76a4c7 --- /dev/null +++ b/FoodSprites.gd @@ -0,0 +1,11 @@ +extends AnimatedSprite + +func _ready(): + randomize() + play_random_animation() + +func play_random_animation(): + var animations = frames.get_animation_names() + var animation_id = randi() % animations.size() + var animation_name = animations[animation_id] + play(animation_name) diff --git a/TankEdge.gd b/TankEdge.gd new file mode 100644 index 0000000..3613abd --- /dev/null +++ b/TankEdge.gd @@ -0,0 +1,13 @@ +extends Area2D + +signal edgehit + +func _on_TankEdge_body_entered(body: Node) -> void: + if body.is_in_group("Fish"): + print("This bitch ass fish just crossed the line at " + str(body.position.x)) + if body.position.x < get_viewport().size.x/2: + emit_signal("edgehit", "turn right") + print("Turning the " + body.name + " right.") + else: + emit_signal("edgehit", "turn left") + print("Turning the " + body.name + " left.") diff --git a/TankEdge.tscn b/TankEdge.tscn new file mode 100644 index 0000000..aeb3764 --- /dev/null +++ b/TankEdge.tscn @@ -0,0 +1,14 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://TankEdge.gd" type="Script" id=1] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 135, 455 ) + +[node name="TankEdge" type="Area2D"] +script = ExtResource( 1 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +shape = SubResource( 1 ) + +[connection signal="body_entered" from="." to="." method="_on_TankEdge_body_entered"] diff --git a/World.gd b/World.gd new file mode 100644 index 0000000..aa265d6 --- /dev/null +++ b/World.gd @@ -0,0 +1,9 @@ +extends Node2D + + +func _unhandled_input(event: InputEvent) -> void: + if event.is_action_pressed("Spawn Food"): + var food = load("res://Food.tscn").instance() + food.position = Vector2(get_global_mouse_position().x, -25) + food.rotation = deg2rad(360) + add_child(food) diff --git a/World.tscn b/World.tscn new file mode 100644 index 0000000..938f0ca --- /dev/null +++ b/World.tscn @@ -0,0 +1,43 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://Button.gd" type="Script" id=1] +[ext_resource path="res://TankEdge.tscn" type="PackedScene" id=2] +[ext_resource path="res://World.gd" type="Script" id=4] + +[sub_resource type="LineShape2D" id=1] + +[node name="World" type="Node2D"] +script = ExtResource( 4 ) + +[node name="ColorRect" type="ColorRect" parent="."] +anchor_right = 1.0 +anchor_bottom = 1.0 +color = Color( 0.137255, 0.352941, 0.764706, 1 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Button" type="Button" parent="."] +margin_left = 54.0 +margin_top = 41.0 +margin_right = 124.0 +margin_bottom = 61.0 +text = "New Fish" +script = ExtResource( 1 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="TankEdgeL" parent="." instance=ExtResource( 2 )] +position = Vector2( 135.334, 453.28 ) + +[node name="TankEdgeR" parent="." instance=ExtResource( 2 )] +position = Vector2( 1464.51, 450 ) + +[node name="StaticBody2D" type="StaticBody2D" parent="."] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] +position = Vector2( 800, 900 ) +shape = SubResource( 1 ) + +[connection signal="pressed" from="Button" to="Button" method="_on_Button_pressed"] diff --git a/default_env.tres b/default_env.tres new file mode 100644 index 0000000..20207a4 --- /dev/null +++ b/default_env.tres @@ -0,0 +1,7 @@ +[gd_resource type="Environment" load_steps=2 format=2] + +[sub_resource type="ProceduralSky" id=1] + +[resource] +background_mode = 2 +background_sky = SubResource( 1 ) diff --git a/export_presets.cfg b/export_presets.cfg new file mode 100644 index 0000000..264cecf --- /dev/null +++ b/export_presets.cfg @@ -0,0 +1,31 @@ +[preset.0] + +name="Mac OSX" +platform="Mac OSX" +runnable=true +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="./Fish20220119.zip" +script_export_mode=1 +script_encryption_key="" + +[preset.0.options] + +custom_template/debug="" +custom_template/release="" +application/name="Fish!!" +application/info="Made by Josh and Skip" +application/icon="res://fish.png" +application/identifier="" +application/signature="" +application/short_version="0.0.1" +application/version="0.0.1" +application/copyright="" +display/high_res=false +privacy/camera_usage_description="" +privacy/microphone_usage_description="" +texture_format/s3tc=true +texture_format/etc=false +texture_format/etc2=false diff --git a/fish.png b/fish.png new file mode 100644 index 0000000000000000000000000000000000000000..7f64164edf771913aced305a662a7048d219795b GIT binary patch literal 2588 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 literal 0 HcmV?d00001 diff --git a/fish2.png.import b/fish2.png.import new file mode 100644 index 0000000..b05b880 --- /dev/null +++ b/fish2.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fish2.png-5f2e622985802cf154a9485121f4ce36.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://fish2.png" +dest_files=[ "res://.import/fish2.png-5f2e622985802cf154a9485121f4ce36.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c98fbb601c83c81ec8c22b1dba7d1d57c62b323c GIT binary patch literal 3305 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 literal 0 HcmV?d00001 diff --git a/icon.png.import b/icon.png.import new file mode 100644 index 0000000..a4c02e6 --- /dev/null +++ b/icon.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.png" +dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..4ae1c3e --- /dev/null +++ b/project.godot @@ -0,0 +1,52 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=4 + +[application] + +config/name="Fish" +config/description="FISH!!!!" +run/main_scene="res://World.tscn" +config/icon="res://icon.png" + +[display] + +window/size/width=1600 +window/size/height=900 +window/stretch/mode="2d" +window/stretch/aspect="expand" + +[input] + +ui_end={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":0,"unicode":0,"echo":false,"script":null) + ] +} +"Spawn Food"={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"button_mask":0,"position":Vector2( 0, 0 ),"global_position":Vector2( 0, 0 ),"factor":1.0,"button_index":1,"pressed":false,"doubleclick":false,"script":null) + ] +} +"Spawn Fish"={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"button_mask":0,"position":Vector2( 0, 0 ),"global_position":Vector2( 0, 0 ),"factor":1.0,"button_index":2,"pressed":false,"doubleclick":false,"script":null) + ] +} + +[physics] + +common/enable_pause_aware_picking=true + +[rendering] + +environment/default_environment="res://default_env.tres"