diff --git a/Scenes/AttackManager.tscn b/Scenes/AttackManager.tscn new file mode 100644 index 0000000..cb849d3 --- /dev/null +++ b/Scenes/AttackManager.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://bcfv6elb47fs5"] + +[ext_resource type="Script" path="res://Scripts/AttackManager.gd" id="1_ikclc"] + +[node name="AttackManager" type="Node"] +script = ExtResource("1_ikclc") diff --git a/Scenes/Bait.tscn b/Scenes/Bait.tscn new file mode 100644 index 0000000..8d71bca --- /dev/null +++ b/Scenes/Bait.tscn @@ -0,0 +1,19 @@ +[gd_scene load_steps=4 format=3 uid="uid://di50jra7frllw"] + +[ext_resource type="Texture2D" uid="uid://csmi3bgfpeh3l" path="res://Sprites/Bait.png" id="1_7hcc5"] +[ext_resource type="Script" path="res://Scripts/Bait.gd" id="1_we5hg"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_e3hpy"] +radius = 51.0392 + +[node name="Bait" type="Area2D"] +script = ExtResource("1_we5hg") + +[node name="BaitSprite" type="Sprite2D" parent="."] +texture = ExtResource("1_7hcc5") + +[node name="BaitCollision" type="CollisionShape2D" parent="."] +position = Vector2(-7, 0) +shape = SubResource("CircleShape2D_e3hpy") + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Scenes/Death.tscn b/Scenes/Death.tscn new file mode 100644 index 0000000..1abd9e7 --- /dev/null +++ b/Scenes/Death.tscn @@ -0,0 +1,20 @@ +[gd_scene load_steps=5 format=3 uid="uid://cx5mlw02qhhor"] + +[ext_resource type="Texture2D" uid="uid://bmemuk5vda3oe" path="res://Sprites/Death Screen.png" id="1_ptiub"] +[ext_resource type="Script" path="res://Scripts/Death.gd" id="2_crek1"] +[ext_resource type="Texture2D" uid="uid://cbxcll0dvejsp" path="res://Sprites/StartOver.png" id="3_mtk0t"] +[ext_resource type="Texture2D" uid="uid://cvmauamus016g" path="res://Sprites/Quit.png" id="4_yg48p"] + +[node name="Death" type="Sprite2D"] +process_mode = 2 +z_index = 2 +texture = ExtResource("1_ptiub") +script = ExtResource("2_crek1") + +[node name="StartOver" type="Sprite2D" parent="."] +position = Vector2(2, -98) +texture = ExtResource("3_mtk0t") + +[node name="Quit" type="Sprite2D" parent="."] +position = Vector2(199, 42) +texture = ExtResource("4_yg48p") diff --git a/Scenes/Dynamite.tscn b/Scenes/Dynamite.tscn new file mode 100644 index 0000000..62a1fab --- /dev/null +++ b/Scenes/Dynamite.tscn @@ -0,0 +1,26 @@ +[gd_scene load_steps=5 format=3 uid="uid://8yeiu67bl2i5"] + +[ext_resource type="Script" path="res://Scripts/Dynamite.gd" id="1_7s622"] +[ext_resource type="Texture2D" uid="uid://cpcrj33uo4sx8" path="res://Sprites/Dynamite.png" id="1_fj38h"] +[ext_resource type="Texture2D" uid="uid://b0syrkop0p3fn" path="res://Sprites/Explosion.png" id="2_admom"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_y8tdw"] +radius = 1124.0 + +[node name="Dynamite" type="Area2D"] +show_behind_parent = true +script = ExtResource("1_7s622") + +[node name="Dynamite" type="Sprite2D" parent="."] +texture = ExtResource("1_fj38h") + +[node name="Explosion" type="Sprite2D" parent="."] +visible = false +position = Vector2(23, -50) +texture = ExtResource("2_admom") + +[node name="ExplosionCollision" type="CollisionShape2D" parent="."] +shape = SubResource("CircleShape2D_y8tdw") +disabled = true + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Scenes/GoldenBait.tscn b/Scenes/GoldenBait.tscn new file mode 100644 index 0000000..0945eaa --- /dev/null +++ b/Scenes/GoldenBait.tscn @@ -0,0 +1,18 @@ +[gd_scene load_steps=4 format=3 uid="uid://dw8v4oau5ahlu"] + +[ext_resource type="Texture2D" uid="uid://b0pqcncvub8ho" path="res://Sprites/GoldenBait.png" id="1_05atl"] +[ext_resource type="Script" path="res://Scripts/GoldenBait.gd" id="1_ptwu7"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_ckek7"] +radius = 58.0 + +[node name="GoldenBait" type="Area2D"] +script = ExtResource("1_ptwu7") + +[node name="Sprite2D" type="Sprite2D" parent="."] +texture = ExtResource("1_05atl") + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +shape = SubResource("CircleShape2D_ckek7") + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Scenes/Hook.tscn b/Scenes/Hook.tscn new file mode 100644 index 0000000..837124f --- /dev/null +++ b/Scenes/Hook.tscn @@ -0,0 +1,28 @@ +[gd_scene load_steps=5 format=3 uid="uid://b0jqcidlj5nqi"] + +[ext_resource type="Script" path="res://Scripts/Hook.gd" id="1_33yxr"] +[ext_resource type="Texture2D" uid="uid://c8omthvaa0tvf" path="res://Sprites/Hook.png" id="1_t4axo"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_77i7p"] +radius = 35.0571 + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_lov3l"] +size = Vector2(9, 56) + +[node name="Hook" type="Area2D"] +show_behind_parent = true +script = ExtResource("1_33yxr") + +[node name="HookSprite" type="Sprite2D" parent="."] +position = Vector2(0, -866) +texture = ExtResource("1_t4axo") + +[node name="Hook Collision" type="CollisionShape2D" parent="."] +position = Vector2(-4, 35) +shape = SubResource("CircleShape2D_77i7p") + +[node name="Hook Collision 2" type="CollisionShape2D" parent="."] +position = Vector2(28.5, 6) +shape = SubResource("RectangleShape2D_lov3l") + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Scenes/Life.tscn b/Scenes/Life.tscn new file mode 100644 index 0000000..bee8a95 --- /dev/null +++ b/Scenes/Life.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://bou8qh1x4de1k"] + +[ext_resource type="Texture2D" uid="uid://b7yoj8tyi4eqe" path="res://Sprites/Life.png" id="1_5mtlq"] + +[node name="Sprite2D" type="Sprite2D"] +texture = ExtResource("1_5mtlq") diff --git a/Scenes/LifeManager.tscn b/Scenes/LifeManager.tscn new file mode 100644 index 0000000..5d0bdd6 --- /dev/null +++ b/Scenes/LifeManager.tscn @@ -0,0 +1,7 @@ +[gd_scene load_steps=2 format=3 uid="uid://bvoci5rf6go0y"] + +[ext_resource type="Script" path="res://Scripts/LifeManager.gd" id="1_ycxff"] + +[node name="LifeManager" type="Node2D"] +top_level = true +script = ExtResource("1_ycxff") diff --git a/Scenes/Main.tscn b/Scenes/Main.tscn new file mode 100644 index 0000000..d843c63 --- /dev/null +++ b/Scenes/Main.tscn @@ -0,0 +1,67 @@ +[gd_scene load_steps=11 format=3 uid="uid://c1g2l10lobpv8"] + +[ext_resource type="Texture2D" uid="uid://cgg37qvciepi7" path="res://Sprites/Background.png" id="1_0e3so"] +[ext_resource type="PackedScene" uid="uid://bcfv6elb47fs5" path="res://Scenes/AttackManager.tscn" id="1_1rhdq"] +[ext_resource type="Texture2D" uid="uid://1j1ta0o1o5r2" path="res://Sprites/Ocean.png" id="2_s3rym"] +[ext_resource type="PackedScene" uid="uid://p4nituv2rgo4" path="res://Scenes/Player.tscn" id="3_k8nfq"] +[ext_resource type="PackedScene" uid="uid://bvoci5rf6go0y" path="res://Scenes/LifeManager.tscn" id="5_xfyvj"] +[ext_resource type="PackedScene" uid="uid://cx5mlw02qhhor" path="res://Scenes/Death.tscn" id="6_fpbwn"] + +[sub_resource type="SegmentShape2D" id="SegmentShape2D_ja5gl"] +a = Vector2(-956.909, 451.573) +b = Vector2(-956.909, -435.676) + +[sub_resource type="SegmentShape2D" id="SegmentShape2D_7mhq1"] +a = Vector2(956.688, 447.599) +b = Vector2(-964.857, 447.599) + +[sub_resource type="SegmentShape2D" id="SegmentShape2D_py2uc"] +a = Vector2(950.727, -428.721) +b = Vector2(950.727, 458.528) + +[sub_resource type="SegmentShape2D" id="SegmentShape2D_vjpve"] +a = Vector2(964.637, -426.734) +b = Vector2(-977.774, -426.734) + +[node name="Main" type="Node2D" groups=["Game"]] +process_mode = 1 + +[node name="Background" type="Sprite2D" parent="."] +position = Vector2(4.00002, -449) +scale = Vector2(1.01042, 0.235185) +texture = ExtResource("1_0e3so") + +[node name="Lake" type="Sprite2D" parent="."] +position = Vector2(3.11107, 89.5) +scale = Vector2(1.00648, 1.00648) +texture = ExtResource("2_s3rym") + +[node name="Boundries" type="StaticBody2D" parent="Lake"] + +[node name="LeftBound" type="CollisionShape2D" parent="Lake/Boundries"] +shape = SubResource("SegmentShape2D_ja5gl") +debug_color = Color(0.635294, 0.52549, 0, 0.419608) + +[node name="BottomBound" type="CollisionShape2D" parent="Lake/Boundries"] +shape = SubResource("SegmentShape2D_7mhq1") + +[node name="RightBound" type="CollisionShape2D" parent="Lake/Boundries"] +shape = SubResource("SegmentShape2D_py2uc") +debug_color = Color(0.184314, 0.643137, 0, 0.419608) + +[node name="TopBound" type="CollisionShape2D" parent="Lake/Boundries"] +shape = SubResource("SegmentShape2D_vjpve") +debug_color = Color(0.996078, 0, 0.192157, 0.419608) + +[node name="Fish" parent="." instance=ExtResource("3_k8nfq")] +z_index = 1 +position = Vector2(-77, 147) + +[node name="AttackManager" parent="." instance=ExtResource("1_1rhdq")] + +[node name="LifeManager" parent="." instance=ExtResource("5_xfyvj")] +position = Vector2(-908, -484) + +[node name="Camera2D" type="Camera2D" parent="."] + +[node name="Death" parent="." instance=ExtResource("6_fpbwn")] diff --git a/Scenes/Net.tscn b/Scenes/Net.tscn new file mode 100644 index 0000000..6af6df9 --- /dev/null +++ b/Scenes/Net.tscn @@ -0,0 +1,22 @@ +[gd_scene load_steps=4 format=3 uid="uid://ctd2myvpff1y7"] + +[ext_resource type="Texture2D" uid="uid://carqvc2760qg5" path="res://Sprites/Net.png" id="1_1g6s8"] +[ext_resource type="Script" path="res://Scripts/Net.gd" id="1_w7m5o"] + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_x6qlj"] +size = Vector2(84.9533, 525.728) + +[node name="Net" type="Area2D"] +script = ExtResource("1_w7m5o") + +[node name="NetSprite" type="Sprite2D" parent="."] +show_behind_parent = true +position = Vector2(427, -318) +texture = ExtResource("1_1g6s8") + +[node name="NetCollision" type="CollisionShape2D" parent="."] +position = Vector2(1.99997, 3.00003) +rotation = 0.785398 +shape = SubResource("RectangleShape2D_x6qlj") + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Scenes/Player.tscn b/Scenes/Player.tscn new file mode 100644 index 0000000..d6bffd3 --- /dev/null +++ b/Scenes/Player.tscn @@ -0,0 +1,20 @@ +[gd_scene load_steps=4 format=3 uid="uid://p4nituv2rgo4"] + +[ext_resource type="Texture2D" uid="uid://bttcv86ilmg4q" path="res://Sprites/Fish.png" id="1_gmqiy"] +[ext_resource type="Script" path="res://Scripts/Player.gd" id="1_rth0u"] + +[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_5r6vi"] +radius = 42.0 +height = 106.0 + +[node name="Fish" type="CharacterBody2D" groups=["Fish"]] +script = ExtResource("1_rth0u") + +[node name="FishSprite" type="Sprite2D" parent="."] +position = Vector2(11, 0) +texture = ExtResource("1_gmqiy") + +[node name="FishCollision" type="CollisionShape2D" parent="."] +position = Vector2(-18, 0) +rotation = 1.5708 +shape = SubResource("CapsuleShape2D_5r6vi") diff --git a/Scenes/SceneManager.tscn b/Scenes/SceneManager.tscn new file mode 100644 index 0000000..3b32cc8 --- /dev/null +++ b/Scenes/SceneManager.tscn @@ -0,0 +1,7 @@ +[gd_scene load_steps=2 format=3 uid="uid://djkbqla5k42wl"] + +[ext_resource type="Script" path="res://Scripts/SceneManager.gd" id="1_uj21u"] + +[node name="SceneManager" type="Node" groups=["BigBoss"]] +process_mode = 3 +script = ExtResource("1_uj21u") diff --git a/Scenes/Spear.tscn b/Scenes/Spear.tscn new file mode 100644 index 0000000..47a1a6c --- /dev/null +++ b/Scenes/Spear.tscn @@ -0,0 +1,17 @@ +[gd_scene load_steps=3 format=3 uid="uid://whd0o674ot6u"] + +[ext_resource type="Script" path="res://Scripts/Spear.gd" id="1_82tvu"] +[ext_resource type="Texture2D" uid="uid://narrefbak446" path="res://Sprites/Spear.png" id="2_hafs4"] + +[node name="Spear" type="Area2D"] +show_behind_parent = true +script = ExtResource("1_82tvu") + +[node name="SpearSprite" type="Sprite2D" parent="."] +position = Vector2(-1, 53) +texture = ExtResource("2_hafs4") + +[node name="SpearCollision" type="CollisionPolygon2D" parent="."] +polygon = PackedVector2Array(-34, 427, -3, 502, 29, 427) + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Scenes/Title.tscn b/Scenes/Title.tscn new file mode 100644 index 0000000..5d9c418 --- /dev/null +++ b/Scenes/Title.tscn @@ -0,0 +1,21 @@ +[gd_scene load_steps=5 format=3 uid="uid://bl07w8iywdpwi"] + +[ext_resource type="Texture2D" uid="uid://cl83u6qtbydit" path="res://Sprites/Title.png" id="1_da8ud"] +[ext_resource type="Texture2D" uid="uid://cwjnfy0eum3sl" path="res://Sprites/Start.png" id="2_gn6bx"] +[ext_resource type="Script" path="res://Scripts/Title.gd" id="2_md8r0"] +[ext_resource type="Texture2D" uid="uid://cvmauamus016g" path="res://Sprites/Quit.png" id="3_a5nxc"] + +[node name="Title" type="Sprite2D"] +process_mode = 3 +texture = ExtResource("1_da8ud") +script = ExtResource("2_md8r0") + +[node name="Start" type="Sprite2D" parent="."] +position = Vector2(848, -206) +texture = ExtResource("2_gn6bx") + +[node name="Quit" type="Sprite2D" parent="."] +position = Vector2(756, -86) +texture = ExtResource("3_a5nxc") + +[node name="Camera2D" type="Camera2D" parent="."] diff --git a/Scenes/Win.tscn b/Scenes/Win.tscn new file mode 100644 index 0000000..08b7d8b --- /dev/null +++ b/Scenes/Win.tscn @@ -0,0 +1,10 @@ +[gd_scene load_steps=3 format=3 uid="uid://b8nfs8p8wca2c"] + +[ext_resource type="Texture2D" uid="uid://cn2ivkgp5e7ox" path="res://Sprites/Win.png" id="1_11ccw"] +[ext_resource type="Script" path="res://Scripts/Win.gd" id="2_nhp6w"] + +[node name="Win" type="Sprite2D"] +texture = ExtResource("1_11ccw") +script = ExtResource("2_nhp6w") + +[node name="Camera2D" type="Camera2D" parent="."] diff --git a/Scripts/AttackManager.gd b/Scripts/AttackManager.gd new file mode 100644 index 0000000..2b8e3c8 --- /dev/null +++ b/Scripts/AttackManager.gd @@ -0,0 +1,73 @@ +extends Node +var hook +var spear +var net +var bait +var dynamite +var gold +var time = 0 + +# Called when the node enters the scene tree for the first time. +func _ready(): + hook = preload("res://Scenes/Hook.tscn") + spear = preload("res://Scenes/Spear.tscn") + net = preload("res://Scenes/Net.tscn") + bait = preload("res://Scenes/Bait.tscn") + dynamite = preload("res://Scenes/Dynamite.tscn") + gold = preload("res://Scenes/GoldenBait.tscn") + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + match time: + 1*60: create(hook, 0, 5, 0) + 3*60: create(hook, 0, 10, 1) + 4*60: create(hook, 0, 20, 1) + 4*60+30: create(hook, 400, 40, 0); create(hook, -400, 40, 0) + 6*60: create(hook, 0, 20, 0); create(hook, 600, 60, 0); create(hook, -600, 60, 0) + 7*60: create(hook,-900, 10, 0); create(hook,-700, 10, 0); create(hook,-400, 10, 0); create(hook,-100, 10, 0); create(hook,100, 10, 0); create(hook,400, 10, 0); create(hook,700, 10, 0); create(hook,900, 10, 0) + 9*60: create(hook,-800, 20, 0); create(hook,-600, 20, 0); create(hook,-300, 20, 0); create(hook,0, 20, 0); create(hook,300, 20, 0); create(hook,600, 20, 0); create(hook,800, 20, 0) + 15*60: create(spear,0, 50, 0) + 17*60: create(spear, 0, 50 ,0) + 18*60: create(spear,0, 50, 1) + 19*60: create(spear,0, 50, 1) + 19*60+30: create(spear,0, 50, 1) + 19*60+30+15:create(spear,0, 50, 1) + 20*60: create(spear,0, 50, 1) + 20*60+15: create(spear,0, 50, 1) + 20*60+30: create(spear,0, 50, 1) + 21*60: create(hook,900, 60, 0); create(hook,700, 60, 0); create(hook,-900, 60, 0); create(hook,-700, 60, 0); + 22*60: create(hook,0, 30, 1) + 23*60: create(spear,0, 30, 1) + 24*60: create(hook,0, 30, 1); create(hook, 400, 40, 0); create(hook, -400, 40, 0) + 25*60: create(spear,-600, 40, 0); create(spear, 600, 40, 0); create(spear, 0, 30, 1) + 27*60: create(spear,-800, 30, 0); create(hook,-600, 20, 0); create(spear,-300, 30, 0); create(hook,0, 20, 0); create(spear,300, 30, 0); create(hook,600, 20, 0); create(spear,800, 30, 0) + 28*60+30+15: create(hook,-800, 20, 0); create(spear,-600, 30, 0); create(hook,-300, 20, 0); create(spear,0, 30, 0); create(hook,300, 20, 0); create(spear,600, 30, 0); create(hook,800, 20, 0) + 32*60+30: create(bait,0, 5, 0) + 35*60: create(net,-192, 60, 0) + 36*60: create(net, 317, 60,0) + 36*60+15: create(spear,0, 30, 0) + 36*60+30: create(spear,200, 60, 0); create(spear,-200, 60, 0) + 36*60+30+15: create(spear,300, 60, 0); create(spear,-300, 60, 0) + 37*60: create(spear,400, 60, 0); create(spear,-400, 60, 0) + 37*60+15: create(spear,500, 60, 0); create(spear,-500, 60, 0) + 37*60+30: create(spear,600, 60, 0); create(spear,-600, 60, 0) + 37*60+30+15: create(spear, 700, 60, 0); create(spear, -700, 60, 0) + 38*60: create(spear, 800, 60, 0); create(spear, -800, 60, 0); create(dynamite, 0, 10, 0) + 42*60:create(net,-192, 60, 0); create(spear, 900, 60, 0); create(spear, -900, 60, 0); create(bait,0, 10, 0) + 44*60:create(net,317, 60, 0); create(hook, 0, 30, 0); create(hook, -100, 40, 0); create(hook, 100, 40, 0); + 46*60: create(dynamite, -900, 30, 0); create(dynamite, 900, 30, 0) + 48*60: create(dynamite,0, 30, 0); create(hook,800, 20, 0); create(hook,-800, 20, 0) + 51*60: create(gold,0,5,0) + + + if Input.is_action_just_pressed("Debug"): + print("Guess what " + str(time) + " it is!") + + time += 1 + +func create(scene, target, speed, ai): + var instance = scene.instantiate() + instance.target = target + instance.speed = speed + instance.ai = ai + add_child(instance) diff --git a/Scripts/Bait.gd b/Scripts/Bait.gd new file mode 100644 index 0000000..7a2e69c --- /dev/null +++ b/Scripts/Bait.gd @@ -0,0 +1,44 @@ +extends Area2D + +var fish = CharacterBody2D +@export +var target = 0 +@export +var ai = 0 +@export +var speed = 1 + +# Called when the node enters the scene tree for the first time. +func _ready(): + fish = get_tree().get_first_node_in_group("Fish") #fish + + match ai: + #set position + 0: + position = Vector2(target, -1087) + #fish position + 1: + position = Vector2(fish.position.x,-1087) + #predict position + 2: pass + if position.x > 907: + position.x = 907 + if position.x < -907: + position.x = -907 + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + goFish() + + +func goFish(): + position.y = position.y + speed + + if position.y > 1222: + queue_free() + +func _on_body_entered(body): + if body.is_in_group("Fish"): + fish.lives += 1 + queue_free() diff --git a/Scripts/Death.gd b/Scripts/Death.gd new file mode 100644 index 0000000..279e7fd --- /dev/null +++ b/Scripts/Death.gd @@ -0,0 +1,48 @@ +extends Sprite2D + +var child +var selected = 0 +var bigBoss = Node + +# Called when the node enters the scene tree for the first time. +func _ready(): + bigBoss = get_tree().get_first_node_in_group("BigBoss") + modulate.a = 0 + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + if get_tree().paused == true: + if modulate.a < 1: + modulate.a += .016 + if get_tree().paused == false: + modulate.a = 0 + + child = get_child(selected) + child.modulate.b = 0 + child.modulate.g = 130 + + if Input.is_action_just_pressed("Down") || Input.is_action_just_pressed("Right"): + child.modulate.b = 255 + child.modulate.g = 255 + if get_child(selected+1) != $StartOver && get_child(selected+1) != $Quit: + selected = 0 + else: + selected += 1 + if Input.is_action_just_pressed("Up") || Input.is_action_just_pressed("Left"): + child.modulate.b = 255 + child.modulate.g = 255 + if get_child(selected-1) != $StartOver && get_child(selected-1) != $Quit: + selected = 1 + else: + selected -= 1 + + if Input.is_action_just_pressed("Accept"): + if get_child(selected) == $StartOver: + bigBoss.scene = 1 + bigBoss.switch = true + get_tree().paused = false + get_tree().paused = false + print(get_tree().paused) + if get_child(selected) == $Quit: + get_tree().quit() diff --git a/Scripts/Dynamite.gd b/Scripts/Dynamite.gd new file mode 100644 index 0000000..11ee3a5 --- /dev/null +++ b/Scripts/Dynamite.gd @@ -0,0 +1,66 @@ +extends Area2D + +var fish = CharacterBody2D +var sprite = Sprite2D +var explosion = CollisionObject2D +var size = 0.0 +@export +var target = 0 +@export +var ai = 0 +@export +var speed = 1 + +# Called when the node enters the scene tree for the first time. +func _ready(): + fish = get_tree().get_first_node_in_group("Fish") #fish + sprite = $Explosion + explosion = $ExplosionCollision + + match ai: + #set position + 0: + position = Vector2(target, -595) + #fish position + 1: + position = Vector2(fish.position.x,-595) + #predict position + 2: pass + if position.x > 858: + position.x = 858 + if position.x < -858: + position.x = -858 + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + goFish() + + +func goFish(): + position.y = position.y + speed + + if position.y > 794: + position.y = 794 + explode() + +func explode(): + if(size < 1): + explosion.scale = Vector2(size, size) + sprite.modulate.a= sprite.modulate.a - .02 + sprite.scale = Vector2(size, size) + if size >1: + sprite.modulate.a= sprite.modulate.a - .1 + size += .032 + sprite.visible = true + if size < 1: + explosion.set_deferred("disabled", false) + else: + explosion.set_deferred("disabled", true) + if size > 2: + size = 2 + queue_free() + +func _on_body_entered(body): + if body.is_in_group("Fish"): + fish.hurt = true diff --git a/Scripts/GoldenBait.gd b/Scripts/GoldenBait.gd new file mode 100644 index 0000000..75cfd9c --- /dev/null +++ b/Scripts/GoldenBait.gd @@ -0,0 +1,37 @@ +extends Area2D + +var bigBoss = Node +@export +var target = 0 +@export +var ai = 0 +@export +var speed = 1 + +# Called when the node enters the scene tree for the first time. +func _ready(): + bigBoss = get_tree().get_first_node_in_group("BigBoss") + + match ai: + #set position + 0: + position = Vector2(0, -1087) + #fish position + 1: + position = Vector2(0,-1087) + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + goFish() + + +func goFish(): + if position.y < 0: + position.y = position.y + speed + +func _on_body_entered(body): + if body.is_in_group("Fish"): + bigBoss.switch = true + bigBoss.scene = 2 + queue_free() diff --git a/Scripts/Hook.gd b/Scripts/Hook.gd new file mode 100644 index 0000000..f373960 --- /dev/null +++ b/Scripts/Hook.gd @@ -0,0 +1,50 @@ +extends Area2D + +var fish = CharacterBody2D +var cast = false +@export +var target = 0 +@export +var ai = 0 +@export +var speed = 1 + +# Called when the node enters the scene tree for the first time. +func _ready(): + fish = get_tree().get_first_node_in_group("Fish") #fish + + match ai: + #set position + 0: + position = Vector2(target, -660) + #fish position + 1: + position = Vector2(fish.position.x,-660) + #predict position + 2: pass + if position.x > 907: + position.x = 907 + if position.x < -907: + position.x = -907 + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + goFish() + + +func goFish(): + if cast == false: + position.y = position.y + speed + else: + position.y = position.y - speed + + if position.y > 1222: + cast = true + + if position.y < -660: + queue_free() + +func _on_body_entered(body): + if body.is_in_group("Fish"): + fish.hurt = true diff --git a/Scripts/LifeManager.gd b/Scripts/LifeManager.gd new file mode 100644 index 0000000..2ebb613 --- /dev/null +++ b/Scripts/LifeManager.gd @@ -0,0 +1,29 @@ +extends Node2D + +var fish = CharacterBody2D +var life +var lifePositon = 0 +var lives = 1 + +# Called when the node enters the scene tree for the first time. +func _ready(): + life = preload("res://Scenes/Life.tscn") + fish = get_tree().get_first_node_in_group("Fish") #fish + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + if fish == null: + fish = get_tree().get_first_node_in_group("Fish") #fish + lives = fish.lives + if get_child_count() < lives: + var instance = life.instantiate() + instance.position = Vector2(lifePositon, 0) + add_child(instance) + lifePositon += 108 + if get_child_count() > lives && lives >= 0: + var child = get_child(lives) + child.queue_free() + lifePositon -= 108 + if lives < 0: + get_tree().paused = true diff --git a/Scripts/Net.gd b/Scripts/Net.gd new file mode 100644 index 0000000..36960b9 --- /dev/null +++ b/Scripts/Net.gd @@ -0,0 +1,42 @@ +extends Area2D + +var fish = CharacterBody2D +@export +var target = 0 +@export +var ai = 0 +@export +var speed = 1 + +# Called when the node enters the scene tree for the first time. +func _ready(): + fish = get_tree().get_first_node_in_group("Fish") #fish + + match ai: + #set position + 0: + position = Vector2(-1857, target) + #fish position + 1: + position = Vector2(-1857, fish.position.y) + #predict position + 2: pass + if position.y > 317: + position.y = 317 + if position.y < -192: + position.y = -192 + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + goFish() + + +func goFish(): + position.x = position.x + speed + + if position.x > 1494: + queue_free() + +func _on_body_entered(body): + if body.is_in_group("Fish"): + fish.hurt = true diff --git a/Scripts/Player.gd b/Scripts/Player.gd new file mode 100644 index 0000000..85de7c9 --- /dev/null +++ b/Scripts/Player.gd @@ -0,0 +1,53 @@ +extends CharacterBody2D + +var speed = 750 +var sprite = Sprite2D +var hurtTimer = 0 +var hurt = false +var lives = 3 + +# Called when the node enters the scene tree for the first time. +func _ready(): + sprite = $FishSprite + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + movement() + animation() + damage() + +func movement(): + var direction = Input.get_vector("Left","Right","Up","Down") + velocity = direction * speed + move_and_slide() + +func animation(): + if Input.is_action_just_pressed("Left"): + sprite.flip_h = false + sprite.position = Vector2(11, 0) + if Input.is_action_just_pressed("Right"): + sprite.flip_h = true + sprite.position = Vector2(-49, 0) + +func damage(): + if hurtTimer > 0 && hurtTimer % 2 == 0: + sprite.visible = false + if hurtTimer > 0 && hurtTimer % 2 == 1: + sprite.visible = true + + if hurt == true && hurtTimer == 0: + var direction = Input.get_vector("Left","Right","Up","Down") + velocity = -direction * speed * 10 + move_and_slide() + lives -= 1 + hurt = false + hurtTimer = 60 + else: if hurt == true && hurtTimer != 0: + var direction = Input.get_vector("Left","Right","Up","Down") + velocity = -direction * speed * 10 + move_and_slide() + hurt = false + + if hurtTimer != 0: + hurtTimer -= 1 diff --git a/Scripts/SceneManager.gd b/Scripts/SceneManager.gd new file mode 100644 index 0000000..c8b152b --- /dev/null +++ b/Scripts/SceneManager.gd @@ -0,0 +1,36 @@ +extends Node + +var reset = false +var switch = false +var scene = 0 +#0 is title, 1 is game +var title = Sprite2D +var game = Node2D +var win = Sprite2D + +# Called when the node enters the scene tree for the first time. +func _ready(): + title = preload("res://Scenes/Title.tscn") + game = preload("res://Scenes/Main.tscn") + win = preload("res://Scenes/Win.tscn") + var instance = title.instantiate() + add_child(instance) + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + if switch == true: + get_child(0).queue_free() + match scene: + 0: + var instance = title.instantiate() + add_child(instance) + 1: + var instance = game.instantiate() + add_child(instance) + print("reload!") + reset = true + 2: + var instance = win.instantiate() + add_child(instance) + switch = false diff --git a/Scripts/Spear.gd b/Scripts/Spear.gd new file mode 100644 index 0000000..c85c1c9 --- /dev/null +++ b/Scripts/Spear.gd @@ -0,0 +1,43 @@ +extends Area2D + +var fish = CharacterBody2D +@export +var target = 0 +@export +var ai = 0 +@export +var speed = 1 + +# Called when the node enters the scene tree for the first time. +func _ready(): + fish = get_tree().get_first_node_in_group("Fish") #fish + + match ai: + #set position + 0: + position = Vector2(target, -1087) + #fish position + 1: + position = Vector2(fish.position.x,-1087) + #predict position + 2: pass + if position.x > 907: + position.x = 907 + if position.x < -907: + position.x = -907 + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + goFish() + + +func goFish(): + position.y = position.y + speed + + if position.y > 1222: + queue_free() + +func _on_body_entered(body): + if body.is_in_group("Fish"): + fish.hurt = true diff --git a/Scripts/Title.gd b/Scripts/Title.gd new file mode 100644 index 0000000..041278e --- /dev/null +++ b/Scripts/Title.gd @@ -0,0 +1,38 @@ +extends Sprite2D + +var child +var selected = 0 +var bigBoss = Node + +# Called when the node enters the scene tree for the first time. +func _ready(): + bigBoss = get_tree().get_first_node_in_group("BigBoss") + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _physics_process(delta): + child = get_child(selected) + child.modulate.b = 0 + child.modulate.g = 130 + + if Input.is_action_just_pressed("Down") || Input.is_action_just_pressed("Right") : + child.modulate.b = 255 + child.modulate.g = 255 + if get_child(selected+1) != $Start && get_child(selected+1) != $Quit: + selected = 0 + else: + selected += 1 + if Input.is_action_just_pressed("Up") || Input.is_action_just_pressed("Left"): + child.modulate.b = 255 + child.modulate.g = 255 + if get_child(selected-1) != $Start && get_child(selected-1) != $Quit: + selected = 1 + else: + selected -= 1 + + if Input.is_action_just_pressed("Accept"): + if get_child(selected) == $Start: + bigBoss.scene = 1 + bigBoss.switch = true + if get_child(selected) == $Quit: + get_tree().quit() diff --git a/Scripts/Win.gd b/Scripts/Win.gd new file mode 100644 index 0000000..6834a2c --- /dev/null +++ b/Scripts/Win.gd @@ -0,0 +1,6 @@ +extends Sprite2D + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + if Input.is_action_just_pressed("Accept"): + get_tree().quit() diff --git a/Sprites/Background.png b/Sprites/Background.png new file mode 100644 index 0000000..b7530db Binary files /dev/null and b/Sprites/Background.png differ diff --git a/Sprites/Background.png.import b/Sprites/Background.png.import new file mode 100644 index 0000000..7a5612e --- /dev/null +++ b/Sprites/Background.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cgg37qvciepi7" +path="res://.godot/imported/Background.png-35d93eb57723ae0fb58ad0b59abe54b6.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Background.png" +dest_files=["res://.godot/imported/Background.png-35d93eb57723ae0fb58ad0b59abe54b6.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/Sprites/Bait.png b/Sprites/Bait.png new file mode 100644 index 0000000..5146000 Binary files /dev/null and b/Sprites/Bait.png differ diff --git a/Sprites/Bait.png.import b/Sprites/Bait.png.import new file mode 100644 index 0000000..a309896 --- /dev/null +++ b/Sprites/Bait.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://csmi3bgfpeh3l" +path="res://.godot/imported/Bait.png-eedd1311950e87cd143b604e52b397dd.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Bait.png" +dest_files=["res://.godot/imported/Bait.png-eedd1311950e87cd143b604e52b397dd.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/Sprites/Death Screen.png b/Sprites/Death Screen.png new file mode 100644 index 0000000..2a1644c Binary files /dev/null and b/Sprites/Death Screen.png differ diff --git a/Sprites/Death Screen.png.import b/Sprites/Death Screen.png.import new file mode 100644 index 0000000..6f5f85c --- /dev/null +++ b/Sprites/Death Screen.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bmemuk5vda3oe" +path="res://.godot/imported/Death Screen.png-15d24d7001e2f81ffb13007e3e2cd0d4.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Death Screen.png" +dest_files=["res://.godot/imported/Death Screen.png-15d24d7001e2f81ffb13007e3e2cd0d4.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/Sprites/Dynamite.png b/Sprites/Dynamite.png new file mode 100644 index 0000000..40e1037 Binary files /dev/null and b/Sprites/Dynamite.png differ diff --git a/Sprites/Dynamite.png.import b/Sprites/Dynamite.png.import new file mode 100644 index 0000000..97ddad6 --- /dev/null +++ b/Sprites/Dynamite.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpcrj33uo4sx8" +path="res://.godot/imported/Dynamite.png-256d57645eff2c877f2d38cd9d773aeb.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Dynamite.png" +dest_files=["res://.godot/imported/Dynamite.png-256d57645eff2c877f2d38cd9d773aeb.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/Sprites/Explosion.png b/Sprites/Explosion.png new file mode 100644 index 0000000..a8c4b1c Binary files /dev/null and b/Sprites/Explosion.png differ diff --git a/Sprites/Explosion.png.import b/Sprites/Explosion.png.import new file mode 100644 index 0000000..93ca4d5 --- /dev/null +++ b/Sprites/Explosion.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b0syrkop0p3fn" +path="res://.godot/imported/Explosion.png-4cec69c6d6c03527ba22cbc120bf0a6e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Explosion.png" +dest_files=["res://.godot/imported/Explosion.png-4cec69c6d6c03527ba22cbc120bf0a6e.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/Sprites/Fish.png b/Sprites/Fish.png new file mode 100644 index 0000000..993a433 Binary files /dev/null and b/Sprites/Fish.png differ diff --git a/Sprites/Fish.png.import b/Sprites/Fish.png.import new file mode 100644 index 0000000..e000fbc --- /dev/null +++ b/Sprites/Fish.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bttcv86ilmg4q" +path="res://.godot/imported/Fish.png-e950489b2cf738ee02cddebf5ebce624.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Fish.png" +dest_files=["res://.godot/imported/Fish.png-e950489b2cf738ee02cddebf5ebce624.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/Sprites/GoldenBait.png b/Sprites/GoldenBait.png new file mode 100644 index 0000000..39ff6b9 Binary files /dev/null and b/Sprites/GoldenBait.png differ diff --git a/Sprites/GoldenBait.png.import b/Sprites/GoldenBait.png.import new file mode 100644 index 0000000..34dd88c --- /dev/null +++ b/Sprites/GoldenBait.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b0pqcncvub8ho" +path="res://.godot/imported/GoldenBait.png-fd78d39d28cdc14078a08978ce41b24d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/GoldenBait.png" +dest_files=["res://.godot/imported/GoldenBait.png-fd78d39d28cdc14078a08978ce41b24d.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/Sprites/Hook.png b/Sprites/Hook.png new file mode 100644 index 0000000..b74603c Binary files /dev/null and b/Sprites/Hook.png differ diff --git a/Sprites/Hook.png.import b/Sprites/Hook.png.import new file mode 100644 index 0000000..c6e7a2c --- /dev/null +++ b/Sprites/Hook.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c8omthvaa0tvf" +path="res://.godot/imported/Hook.png-78c9d60f08e45f88d5845ff0b6d7dc19.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Hook.png" +dest_files=["res://.godot/imported/Hook.png-78c9d60f08e45f88d5845ff0b6d7dc19.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/Sprites/Life.png b/Sprites/Life.png new file mode 100644 index 0000000..505f661 Binary files /dev/null and b/Sprites/Life.png differ diff --git a/Sprites/Life.png.import b/Sprites/Life.png.import new file mode 100644 index 0000000..7e20391 --- /dev/null +++ b/Sprites/Life.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b7yoj8tyi4eqe" +path="res://.godot/imported/Life.png-bfca79e9f757732e8ba733a5807ca94a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Life.png" +dest_files=["res://.godot/imported/Life.png-bfca79e9f757732e8ba733a5807ca94a.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/Sprites/Net.png b/Sprites/Net.png new file mode 100644 index 0000000..ebed111 Binary files /dev/null and b/Sprites/Net.png differ diff --git a/Sprites/Net.png.import b/Sprites/Net.png.import new file mode 100644 index 0000000..5a21787 --- /dev/null +++ b/Sprites/Net.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://carqvc2760qg5" +path="res://.godot/imported/Net.png-091deda3632ef4b43c76dcec9590a355.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Net.png" +dest_files=["res://.godot/imported/Net.png-091deda3632ef4b43c76dcec9590a355.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/Sprites/Ocean.png b/Sprites/Ocean.png new file mode 100644 index 0000000..20edd7c Binary files /dev/null and b/Sprites/Ocean.png differ diff --git a/Sprites/Ocean.png.import b/Sprites/Ocean.png.import new file mode 100644 index 0000000..5996377 --- /dev/null +++ b/Sprites/Ocean.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://1j1ta0o1o5r2" +path="res://.godot/imported/Ocean.png-239e6220c32fbee3c4748a44f7ba11ea.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Ocean.png" +dest_files=["res://.godot/imported/Ocean.png-239e6220c32fbee3c4748a44f7ba11ea.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/Sprites/Quit.png b/Sprites/Quit.png new file mode 100644 index 0000000..0c7ceb9 Binary files /dev/null and b/Sprites/Quit.png differ diff --git a/Sprites/Quit.png.import b/Sprites/Quit.png.import new file mode 100644 index 0000000..96361d7 --- /dev/null +++ b/Sprites/Quit.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cvmauamus016g" +path="res://.godot/imported/Quit.png-502cc89cfc03a3b3bdc92081de6321a1.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Quit.png" +dest_files=["res://.godot/imported/Quit.png-502cc89cfc03a3b3bdc92081de6321a1.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/Sprites/Spear.png b/Sprites/Spear.png new file mode 100644 index 0000000..f7b487f Binary files /dev/null and b/Sprites/Spear.png differ diff --git a/Sprites/Spear.png.import b/Sprites/Spear.png.import new file mode 100644 index 0000000..2678145 --- /dev/null +++ b/Sprites/Spear.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://narrefbak446" +path="res://.godot/imported/Spear.png-41335d5329e0b776d4ee4462f652af40.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Spear.png" +dest_files=["res://.godot/imported/Spear.png-41335d5329e0b776d4ee4462f652af40.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/Sprites/Start.png b/Sprites/Start.png new file mode 100644 index 0000000..40a8550 Binary files /dev/null and b/Sprites/Start.png differ diff --git a/Sprites/Start.png.import b/Sprites/Start.png.import new file mode 100644 index 0000000..6b1d6cb --- /dev/null +++ b/Sprites/Start.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cwjnfy0eum3sl" +path="res://.godot/imported/Start.png-f06e5c2e003e6517baa8fbf2fc2c2b52.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Start.png" +dest_files=["res://.godot/imported/Start.png-f06e5c2e003e6517baa8fbf2fc2c2b52.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/Sprites/StartOver.png b/Sprites/StartOver.png new file mode 100644 index 0000000..7bf796b Binary files /dev/null and b/Sprites/StartOver.png differ diff --git a/Sprites/StartOver.png.import b/Sprites/StartOver.png.import new file mode 100644 index 0000000..2834c5a --- /dev/null +++ b/Sprites/StartOver.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cbxcll0dvejsp" +path="res://.godot/imported/StartOver.png-b03ce3e252dd7f835474e38ab7275121.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/StartOver.png" +dest_files=["res://.godot/imported/StartOver.png-b03ce3e252dd7f835474e38ab7275121.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/Sprites/Title.png b/Sprites/Title.png new file mode 100644 index 0000000..e63d444 Binary files /dev/null and b/Sprites/Title.png differ diff --git a/Sprites/Title.png.import b/Sprites/Title.png.import new file mode 100644 index 0000000..4a3b2e2 --- /dev/null +++ b/Sprites/Title.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cl83u6qtbydit" +path="res://.godot/imported/Title.png-7362e0bee3c99d95e13efe8bc4e072d5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Title.png" +dest_files=["res://.godot/imported/Title.png-7362e0bee3c99d95e13efe8bc4e072d5.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/Sprites/Win.png b/Sprites/Win.png new file mode 100644 index 0000000..ac0da30 Binary files /dev/null and b/Sprites/Win.png differ diff --git a/Sprites/Win.png.import b/Sprites/Win.png.import new file mode 100644 index 0000000..c53c4d4 --- /dev/null +++ b/Sprites/Win.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cn2ivkgp5e7ox" +path="res://.godot/imported/Win.png-5367da45349391a61ac1ff640fb79f55.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Win.png" +dest_files=["res://.godot/imported/Win.png-5367da45349391a61ac1ff640fb79f55.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/export_presets.cfg b/export_presets.cfg new file mode 100644 index 0000000..8b87869 --- /dev/null +++ b/export_presets.cfg @@ -0,0 +1,108 @@ +[preset.0] + +name="Linux/X11" +platform="Linux/X11" +runnable=true +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="../../../Downloads/Games/Linux/Hsif/Hsif.zip" +encryption_include_filters="" +encryption_exclude_filters="" +encrypt_pck=false +encrypt_directory=false + +[preset.0.options] + +custom_template/debug="" +custom_template/release="" +debug/export_console_wrapper=1 +binary_format/embed_pck=false +texture_format/bptc=true +texture_format/s3tc=true +texture_format/etc=false +texture_format/etc2=false +binary_format/architecture="x86_64" +ssh_remote_deploy/enabled=false +ssh_remote_deploy/host="user@host_ip" +ssh_remote_deploy/port="22" +ssh_remote_deploy/extra_args_ssh="" +ssh_remote_deploy/extra_args_scp="" +ssh_remote_deploy/run_script="#!/usr/bin/env bash +export DISPLAY=:0 +unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\" +\"{temp_dir}/{exe_name}\" {cmd_args}" +ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash +kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\") +rm -rf \"{temp_dir}\"" +dotnet/include_scripts_content=false +dotnet/include_debug_symbols=true +dotnet/embed_build_outputs=false + +[preset.1] + +name="Windows Desktop" +platform="Windows Desktop" +runnable=true +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="../../../Downloads/Games/Windows/Hsif/Hsif.zip" +encryption_include_filters="" +encryption_exclude_filters="" +encrypt_pck=false +encrypt_directory=false + +[preset.1.options] + +custom_template/debug="" +custom_template/release="" +debug/export_console_wrapper=1 +binary_format/embed_pck=false +texture_format/bptc=true +texture_format/s3tc=true +texture_format/etc=false +texture_format/etc2=false +binary_format/architecture="x86_64" +codesign/enable=false +codesign/timestamp=true +codesign/timestamp_server_url="" +codesign/digest_algorithm=1 +codesign/description="" +codesign/custom_options=PackedStringArray() +application/modify_resources=true +application/icon="res://Sprites/Life.png" +application/console_wrapper_icon="res://Sprites/Life.png" +application/icon_interpolation=0 +application/file_version="" +application/product_version="" +application/company_name="" +application/product_name="" +application/file_description="" +application/copyright="" +application/trademarks="" +application/export_angle=0 +ssh_remote_deploy/enabled=false +ssh_remote_deploy/host="user@host_ip" +ssh_remote_deploy/port="22" +ssh_remote_deploy/extra_args_ssh="" +ssh_remote_deploy/extra_args_scp="" +ssh_remote_deploy/run_script="Expand-Archive -LiteralPath '{temp_dir}\\{archive_name}' -DestinationPath '{temp_dir}' +$action = New-ScheduledTaskAction -Execute '{temp_dir}\\{exe_name}' -Argument '{cmd_args}' +$trigger = New-ScheduledTaskTrigger -Once -At 00:00 +$settings = New-ScheduledTaskSettingsSet +$task = New-ScheduledTask -Action $action -Trigger $trigger -Settings $settings +Register-ScheduledTask godot_remote_debug -InputObject $task -Force:$true +Start-ScheduledTask -TaskName godot_remote_debug +while (Get-ScheduledTask -TaskName godot_remote_debug | ? State -eq running) { Start-Sleep -Milliseconds 100 } +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue" +ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue +Remove-Item -Recurse -Force '{temp_dir}'" +dotnet/include_scripts_content=false +dotnet/include_debug_symbols=true +dotnet/embed_build_outputs=false diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..b370ceb --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..1dcf086 --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bmol4pbve6xjo" +path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.svg" +dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.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 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..6dff109 --- /dev/null +++ b/project.godot @@ -0,0 +1,69 @@ +; 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=5 + +[application] + +config/name="Hsif" +run/main_scene="res://Scenes/SceneManager.tscn" +config/features=PackedStringArray("4.2", "GL Compatibility") +boot_splash/bg_color=Color(0.141176, 0.141176, 0.141176, 1) +boot_splash/show_image=false +config/icon="res://Sprites/Life.png" + +[display] + +window/size/viewport_width=1920 +window/size/viewport_height=1080 +window/size/borderless=true +window/stretch/mode="viewport" +window/vsync/vsync_mode=0 + +[dotnet] + +project/assembly_name="Hsif" + +[input] + +Up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"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":119,"echo":false,"script":null) +] +} +Down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"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":115,"echo":false,"script":null) +] +} +Left={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"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":97,"echo":false,"script":null) +] +} +Right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"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":100,"echo":false,"script":null) +] +} +Accept={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194309,"key_label":0,"unicode":0,"echo":false,"script":null) +] +} +Debug={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"echo":false,"script":null) +] +} + +[rendering] + +textures/canvas_textures/default_texture_filter=0 +renderer/rendering_method="gl_compatibility" +renderer/rendering_method.mobile="gl_compatibility"