hyper space

This commit is contained in:
Patrick Nueser
2024-06-28 15:30:44 +02:00
commit 1e4be7ba8d
75 changed files with 1813 additions and 0 deletions

51
main/main.gd Normal file
View File

@ -0,0 +1,51 @@
extends Node2D
@onready var start_button = $CanvasLayer/CenterContainer/Start
@onready var game_over = $CanvasLayer/CenterContainer/GameOver
var enemy: PackedScene = preload("res://enemy/enemy.tscn")
var score: int = 0
var enemies_count: int = 0
func _ready():
game_over.hide()
start_button.show()
func new_game():
score = 0
$CanvasLayer/UI.update_score(score)
$Player.start()
spawn_enemies()
func spawn_enemies():
for x in range(9):
for y in range(3):
var e = enemy.instantiate()
var pos = Vector2(x * (16 + 8) + 24, 16 * 4 + y * 16)
add_child(e)
e.start(pos)
e.died.connect(_on_enemy_died)
func _on_enemy_died(value):
score += value
$CanvasLayer/UI.update_score(score)
func _on_start_pressed():
start_button.hide()
new_game()
func _on_player_died():
get_tree().call_group("enemies", "queue_free")
game_over.show()
await get_tree().create_timer(2).timeout
game_over.hide()
start_button.show()
func _on_child_entered_tree(node):
if node.is_in_group("enemies"):
enemies_count += 1
func _on_child_exiting_tree(node):
if node.is_in_group("enemies"):
enemies_count -= 1

91
main/main.tscn Normal file
View File

@ -0,0 +1,91 @@
[gd_scene load_steps=10 format=3 uid="uid://ch7v0qydi26a4"]
[ext_resource type="Script" path="res://main/main.gd" id="1_1ejc6"]
[ext_resource type="Texture2D" uid="uid://cd2w7gbytga05" path="res://assets/Space_BG (2 frames) (64 x 64).png" id="1_jkmwa"]
[ext_resource type="PackedScene" uid="uid://bp5q1dm5nm1q7" path="res://player/player.tscn" id="2_bnyct"]
[ext_resource type="Texture2D" uid="uid://dwr1n1387fvel" path="res://assets/UI objects/START (48 x 8).png" id="3_ib0lp"]
[ext_resource type="Texture2D" uid="uid://3yqtv6s02201" path="res://assets/UI objects/GAME_OVER (72 x 8).png" id="4_6ors6"]
[ext_resource type="PackedScene" uid="uid://c78q4a2j7gjow" path="res://ui/ui.tscn" id="4_fs4vk"]
[sub_resource type="Animation" id="Animation_g3nlb"]
resource_name = "bg"
length = 2.0
loop_mode = 1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("background:region_rect")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 2),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Rect2(2.08165e-12, 2.08165e-12, 240, 320), Rect2(2.08165e-12, 64, 240, 320)]
}
[sub_resource type="Animation" id="Animation_bhcu2"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("background:region_rect")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Rect2(2.08165e-12, 2.08165e-12, 240, 320)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_1ooqy"]
_data = {
"RESET": SubResource("Animation_bhcu2"),
"bg": SubResource("Animation_g3nlb")
}
[node name="main" type="Node2D"]
script = ExtResource("1_1ejc6")
[node name="CanvasLayer" type="CanvasLayer" parent="."]
[node name="UI" parent="CanvasLayer" instance=ExtResource("4_fs4vk")]
[node name="CenterContainer" type="CenterContainer" parent="CanvasLayer"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Start" type="TextureButton" parent="CanvasLayer/CenterContainer"]
layout_mode = 2
texture_normal = ExtResource("3_ib0lp")
[node name="GameOver" type="TextureRect" parent="CanvasLayer/CenterContainer"]
layout_mode = 2
texture = ExtResource("4_6ors6")
[node name="background" type="Sprite2D" parent="."]
texture_repeat = 2
position = Vector2(1, 0)
texture = ExtResource("1_jkmwa")
centered = false
region_enabled = true
region_rect = Rect2(2.08165e-12, 2.08165e-12, 240, 320)
[node name="Player" parent="." instance=ExtResource("2_bnyct")]
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
"": SubResource("AnimationLibrary_1ooqy")
}
autoplay = "bg"
[connection signal="child_entered_tree" from="." to="." method="_on_child_entered_tree"]
[connection signal="child_exiting_tree" from="." to="." method="_on_child_exiting_tree"]
[connection signal="pressed" from="CanvasLayer/CenterContainer/Start" to="." method="_on_start_pressed"]
[connection signal="area_entered" from="Player" to="." method="_on_player_area_entered"]
[connection signal="died" from="Player" to="." method="_on_player_died"]
[connection signal="shield_changed" from="Player" to="CanvasLayer/UI" method="update_shield"]