My first 2D game in Godot 4.4

This commit is contained in:
2025-08-18 19:39:33 -04:00
commit 35600f72f9
83 changed files with 2512 additions and 0 deletions

BIN
pistol/impact/circle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 806 B

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dn80eu1qs371v"
path="res://.godot/imported/circle.png-a2fa3270dee1c1c7e1cb0869903e82df.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://pistol/impact/circle.png"
dest_files=["res://.godot/imported/circle.png-a2fa3270dee1c1c7e1cb0869903e82df.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

10
pistol/impact/impact.gd Normal file
View File

@@ -0,0 +1,10 @@
extends Node2D
@onready var sprite = %Sprite
func _ready():
var tween = create_tween().set_parallel(true).set_ease(Tween.EASE_OUT)
tween.tween_property(sprite, "scale", Vector2.ONE * 1.35, 0.3).from(Vector2.ONE * 0.6)
tween.tween_property(sprite, "modulate:a", 0.0, 0.15).set_delay(0.15)
tween.chain().tween_callback(queue_free)

View File

@@ -0,0 +1 @@
uid://c6w1u8mii1jdj

13
pistol/impact/impact.tscn Normal file
View File

@@ -0,0 +1,13 @@
[gd_scene load_steps=3 format=3 uid="uid://kcl4efkvrany"]
[ext_resource type="Script" uid="uid://c6w1u8mii1jdj" path="res://pistol/impact/impact.gd" id="1_4vum2"]
[ext_resource type="Texture2D" uid="uid://dn80eu1qs371v" path="res://pistol/impact/circle.png" id="2_wp1di"]
[node name="Impact" type="Node2D"]
top_level = true
script = ExtResource("1_4vum2")
[node name="Sprite" type="Sprite2D" parent="."]
unique_name_in_owner = true
modulate = Color(1, 0.831373, 0.239216, 1)
texture = ExtResource("2_wp1di")

View File

@@ -0,0 +1,11 @@
extends Node2D
@onready var sprite = %Sprite
func _ready():
var tween = create_tween().set_parallel(true).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_BACK)
tween.tween_property(sprite, "position:x", 16.0, 0.25)
tween.tween_property(sprite, "scale", Vector2.ONE * 1.25, 0.25)
tween.tween_property(sprite, "modulate:a", 0.0, 0.25).set_delay(0.1)
tween.chain().tween_callback(queue_free)

View File

@@ -0,0 +1 @@
uid://beuxhimda3hkr

Binary file not shown.

After

Width:  |  Height:  |  Size: 683 B

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://brgpjilf7s2ul"
path="res://.godot/imported/muzzle_flash.png-752b19c1a1a60c24eac6f205d487f2ea.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://pistol/muzzle_flash/muzzle_flash.png"
dest_files=["res://.godot/imported/muzzle_flash.png-752b19c1a1a60c24eac6f205d487f2ea.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

View File

@@ -0,0 +1,12 @@
[gd_scene load_steps=3 format=3 uid="uid://c1b2kbuq1if08"]
[ext_resource type="Script" uid="uid://beuxhimda3hkr" path="res://pistol/muzzle_flash/muzzle_flash.gd" id="1_wouey"]
[ext_resource type="Texture2D" uid="uid://brgpjilf7s2ul" path="res://pistol/muzzle_flash/muzzle_flash.png" id="2_6pgu4"]
[node name="MuzzleFlash" type="Node2D"]
script = ExtResource("1_wouey")
[node name="Sprite" type="Sprite2D" parent="."]
unique_name_in_owner = true
texture = ExtResource("2_6pgu4")
offset = Vector2(10, 0)

BIN
pistol/pistol.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

34
pistol/pistol.png.import Normal file
View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cswb5do8rrj7q"
path="res://.godot/imported/pistol.png-ccb9a9487ce225cdf094ad33c19c2ede.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://pistol/pistol.png"
dest_files=["res://.godot/imported/pistol.png-ccb9a9487ce225cdf094ad33c19c2ede.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

BIN
pistol/projectile.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 799 B

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dftkbqwsfd68r"
path="res://.godot/imported/projectile.png-e03ae856d530df914009475206433400.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://pistol/projectile.png"
dest_files=["res://.godot/imported/projectile.png-e03ae856d530df914009475206433400.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