commit 1cda2629769d4c1d7703be2638f09ed782687175 Author: txrpe Date: Sat Oct 5 12:39:19 2024 +0200 initial commit diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..8ad74f7 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Normalize EOL for all files that Git considers text files. +* text=auto eol=lf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0af181c --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +# Godot 4+ specific ignores +.godot/ +/android/ diff --git a/button.gd b/button.gd new file mode 100644 index 0000000..48ae488 --- /dev/null +++ b/button.gd @@ -0,0 +1,20 @@ +extends Node2D + +@export var input_name = "" +const ENEMY = preload("res://enemy.tscn") + +func _unhandled_input(event: InputEvent) -> void: + if(event.is_action_pressed(input_name)): + print_debug(input_name) + $AnimatedSprite2D.play("pressed") + var children = get_children(false) + for a in children: + if(a.has_method("button_pressed")): + a.button_pressed() + + +func _on_spawn_tick_timeout() -> void: + if(randi_range(0,1)==1): + var enemy = ENEMY.instantiate() + enemy.global_position = global_position + add_child(enemy) diff --git a/button.tscn b/button.tscn new file mode 100644 index 0000000..fb64bd6 --- /dev/null +++ b/button.tscn @@ -0,0 +1,46 @@ +[gd_scene load_steps=6 format=3 uid="uid://bhvihrt8dipll"] + +[ext_resource type="Script" path="res://button.gd" id="1_fkyus"] +[ext_resource type="Texture2D" uid="uid://0sorgpej62jh" path="res://kenney_inputPromptsPixel16×/Tiles/tile_0516.png" id="2_1qsw6"] +[ext_resource type="Texture2D" uid="uid://dlsmvp5ac602t" path="res://tile_0515.png" id="3_x67x8"] +[ext_resource type="Texture2D" uid="uid://cfv2iysf0vq6k" path="res://tile_0516.png" id="4_n1kdq"] + +[sub_resource type="SpriteFrames" id="SpriteFrames_leuex"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_x67x8") +}], +"loop": false, +"name": &"default", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_n1kdq") +}, { +"duration": 1.0, +"texture": ExtResource("3_x67x8") +}], +"loop": false, +"name": &"pressed", +"speed": 10.0 +}] + +[node name="Button" type="Node2D"] +script = ExtResource("1_fkyus") + +[node name="Icon" type="Sprite2D" parent="."] +visible = false +scale = Vector2(0.703125, 0.703125) +texture = ExtResource("2_1qsw6") + +[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] +scale = Vector2(5.625, 5.625) +sprite_frames = SubResource("SpriteFrames_leuex") + +[node name="SpawnTick" type="Timer" parent="."] +wait_time = 0.5 +autostart = true + +[connection signal="timeout" from="SpawnTick" to="." method="_on_spawn_tick_timeout"] diff --git a/enemy.gd b/enemy.gd new file mode 100644 index 0000000..06951f2 --- /dev/null +++ b/enemy.gd @@ -0,0 +1,11 @@ +extends Node2D + +func button_pressed(): + queue_free() + +func _on_first_timer_timeout() -> void: + scale = Vector2(1.2,1.2) + + +func _on_second_timer_timeout() -> void: + scale = Vector2(1.4,1.4) diff --git a/enemy.tscn b/enemy.tscn new file mode 100644 index 0000000..ca024a1 --- /dev/null +++ b/enemy.tscn @@ -0,0 +1,22 @@ +[gd_scene load_steps=3 format=3 uid="uid://cuvoq65ec58jk"] + +[ext_resource type="Script" path="res://enemy.gd" id="1_bn0a2"] +[ext_resource type="Texture2D" uid="uid://7a1smbkaiutn" path="res://icon.svg" id="1_rhutm"] + +[node name="Enemy" type="Node2D"] +script = ExtResource("1_bn0a2") + +[node name="Icon" type="Sprite2D" parent="."] +texture = ExtResource("1_rhutm") + +[node name="FirstTimer" type="Timer" parent="."] +one_shot = true +autostart = true + +[node name="SecondTimer" type="Timer" parent="."] +wait_time = 2.0 +one_shot = true +autostart = true + +[connection signal="timeout" from="FirstTimer" to="." method="_on_first_timer_timeout"] +[connection signal="timeout" from="SecondTimer" to="." method="_on_second_timer_timeout"] diff --git a/game.tscn b/game.tscn new file mode 100644 index 0000000..a2f837b --- /dev/null +++ b/game.tscn @@ -0,0 +1,13 @@ +[gd_scene load_steps=2 format=3 uid="uid://decsef3jj3lt5"] + +[ext_resource type="PackedScene" uid="uid://bhvihrt8dipll" path="res://button.tscn" id="1_j4pve"] + +[node name="Game" type="Node2D"] + +[node name="A" parent="." groups=["button_group"] instance=ExtResource("1_j4pve")] +position = Vector2(253, 174) +input_name = "A" + +[node name="B" parent="." instance=ExtResource("1_j4pve")] +position = Vector2(442, 178) +input_name = "B" diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..9d8b7fa --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..6db470e --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://7a1smbkaiutn" +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..a797a16 --- /dev/null +++ b/project.godot @@ -0,0 +1,33 @@ +; 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="LD56" +run/main_scene="res://game.tscn" +config/features=PackedStringArray("4.3", "Forward Plus") +config/icon="res://icon.svg" + +[editor_plugins] + +enabled=PackedStringArray("res://addons/format_on_save/plugin.cfg", "res://addons/nklbdev.aseprite_importers/plugin.cfg") + +[input] + +A={ +"deadzone": 0.5, +"events": [Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":true,"script":null) +] +} +B={ +"deadzone": 0.5, +"events": [Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":1,"pressure":0.0,"pressed":true,"script":null) +] +} diff --git a/tile_0515.png b/tile_0515.png new file mode 100644 index 0000000..56e6b6a Binary files /dev/null and b/tile_0515.png differ diff --git a/tile_0516.png b/tile_0516.png new file mode 100644 index 0000000..efa3dfa Binary files /dev/null and b/tile_0516.png differ