Compare commits

...
Sign in to create a new pull request.

1 commit

Author SHA1 Message Date
Henry
1fd4a809f2 Tested some custom resources with a test scene. 2026-03-17 14:27:21 +00:00
14 changed files with 125 additions and 4 deletions

46
ResourceTest.tscn Normal file
View file

@ -0,0 +1,46 @@
[gd_scene format=3 uid="uid://cbn8gkhh54biw"]
[ext_resource type="Script" uid="uid://xjow2vrn307m" path="res://test_enemy.gd" id="1_wrqmu"]
[ext_resource type="Script" uid="uid://0nsrno5ksdeh" path="res://scripts/ExampleResource.gd" id="2_2fskf"]
[ext_resource type="Resource" uid="uid://cy58t3vbkogtu" path="res://resources/example_resource1.tres" id="2_4vrue"]
[ext_resource type="Texture2D" uid="uid://dy743vehs0t1t" path="res://icon.svg" id="3_nascw"]
[sub_resource type="Resource" id="Resource_nascw"]
script = ExtResource("2_2fskf")
speed = 5.0
metadata/_custom_type_script = "uid://0nsrno5ksdeh"
[sub_resource type="RectangleShape2D" id="RectangleShape2D_4vrue"]
[node name="ResourceTest" type="Node2D" unique_id=1938241335]
[node name="TestEnemy" type="Area2D" parent="." unique_id=197600973]
position = Vector2(177, 252)
script = ExtResource("1_wrqmu")
example_resource = SubResource("Resource_nascw")
[node name="Sprite2D" type="Sprite2D" parent="TestEnemy" unique_id=392517985]
position = Vector2(19, -111)
[node name="CollisionShape2D" type="CollisionShape2D" parent="TestEnemy" unique_id=1888418400]
shape = SubResource("RectangleShape2D_4vrue")
[node name="TestEnemy2a" type="Area2D" parent="." unique_id=681188134]
position = Vector2(60, 166)
script = ExtResource("1_wrqmu")
example_resource = ExtResource("2_4vrue")
[node name="Sprite2D" type="Sprite2D" parent="TestEnemy2a" unique_id=479189583]
[node name="CollisionShape2D" type="CollisionShape2D" parent="TestEnemy2a" unique_id=1055590466]
shape = SubResource("RectangleShape2D_4vrue")
[node name="TestEnemy2b" type="Area2D" parent="." unique_id=148383400]
position = Vector2(176, 93)
script = ExtResource("1_wrqmu")
example_resource = ExtResource("2_4vrue")
[node name="Sprite2D" type="Sprite2D" parent="TestEnemy2b" unique_id=2119219440]
[node name="CollisionShape2D" type="CollisionShape2D" parent="TestEnemy2b" unique_id=656950543]
shape = SubResource("RectangleShape2D_4vrue")

View file

@ -0,0 +1,7 @@
[gd_resource type="Resource" script_class="BulletResource" format=3 uid="uid://ds8pfhnj8c303"]
[ext_resource type="Script" uid="uid://64l0xhnsdh7x" path="res://scripts/bullet_stats.gd" id="1_c83q5"]
[resource]
script = ExtResource("1_c83q5")
metadata/_custom_type_script = "uid://64l0xhnsdh7x"

View file

@ -0,0 +1,10 @@
[gd_resource type="Resource" script_class="ExampleResource" format=3 uid="uid://cy58t3vbkogtu"]
[ext_resource type="Script" uid="uid://0nsrno5ksdeh" path="res://scripts/ExampleResource.gd" id="1_aogvj"]
[ext_resource type="Texture2D" uid="uid://deyu1prtitqcp" path="res://_graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png" id="2_xrkta"]
[resource]
script = ExtResource("1_aogvj")
speed = 5.0
sprite = ExtResource("2_xrkta")
metadata/_custom_type_script = "uid://0nsrno5ksdeh"

View file

@ -1,8 +1,11 @@
extends Area2D
@onready var bullet = $Bullet
#@export var speed = -250
@export var stats: Resource
#var bullet_data = load("res://resources/bullet_resource.tres")
@export var speed = -250
var shader_active = false
var pause = false
var target = null
@ -20,7 +23,7 @@ func start(pos):
func _process(delta):
if pause == true: return
position.y += speed * delta
position.y += stats.speed * delta
#if target:
#var direction = (target.position - position).normalized()

View file

@ -2,6 +2,7 @@
[ext_resource type="Script" uid="uid://c6oorp45vpqpc" path="res://scenes/bullet.gd" id="1_v8qja"]
[ext_resource type="Shader" uid="uid://dfywtah53il1m" path="res://shaders/player_hit.gdshader" id="2_eoqba"]
[ext_resource type="Script" uid="uid://64l0xhnsdh7x" path="res://scripts/bullet_stats.gd" id="2_tamys"]
[ext_resource type="Texture2D" uid="uid://bnc77g20gb20h" path="res://sprites/david-head.png" id="2_y25gk"]
[ext_resource type="Texture2D" uid="uid://dwd6pycecukqb" path="res://sprites/david-headshot.png" id="3_l5glv"]
[ext_resource type="AudioStream" uid="uid://cy01lrl2la6bn" path="res://sounds/splat_alt.wav" id="5_qncy5"]
@ -20,6 +21,7 @@ size = Vector2(12, 11)
[node name="Bullet" type="Area2D" unique_id=1850257077]
z_index = -1
script = ExtResource("1_v8qja")
stats = ExtResource("2_tamys")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=29933687]
material = SubResource("ShaderMaterial_qncy5")

View file

@ -1,15 +1,17 @@
extends Area2D
#bullet_data: BulletResource
var bullet_data = load("res://resources/bullet_resource.tres")
#@export var speed = 150
@export var speed = 150
func start(pos):
position = pos
func _process(delta):
position.y += speed * delta
position.y += bullet_data.speed * delta
func _on_visible_on_screen_notifier_2d_screen_exited():
queue_free()

11
scripts/EnemyResource.gd Normal file
View file

@ -0,0 +1,11 @@
extends Resource
class_name EnemyResource
var primary_enemy_bullet: BulletResource = preload("res://scripts/BulletResource.gd")
var exploding: bool
@export var enemy_type: String
@export var health: int
@export var speed: int
var start_pos: float
@export var tween_speed: float

View file

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

View file

@ -0,0 +1,7 @@
extends Resource
class_name ExampleResource
@export var type: String = "Example"
@export var speed: float = 10.0
@export var sprite: Texture2D = preload("res://icon.svg")
@export var new_type: bool = false

View file

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

15
scripts/bullet_stats.gd Normal file
View file

@ -0,0 +1,15 @@
class_name BulletStats
extends Resource
@export var bullet_type: String
@export var bullet: String
@export var damage: int
@export var speed: int
func _init(bullet_type:String = "normal", bullet:String = "res://resources/bullet_resource.tres", damage:int = 1, speed:int = 150):
self.bullet_type = bullet_type
self.bullet = bullet
self.damage = damage
self.speed = speed

View file

@ -0,0 +1 @@
uid://64l0xhnsdh7x

14
test_enemy.gd Normal file
View file

@ -0,0 +1,14 @@
extends Area2D
@export var example_resource: ExampleResource
var speed: float = 0
var type: String = "null"
func _ready() -> void:
#resource_sprite.texture = example_resource.sprite
$Sprite2D.texture = example_resource.sprite
#$Sprite2D/Sprite2D.texture = example_resource.sprite
speed = example_resource.speed
type = example_resource.type

1
test_enemy.gd.uid Normal file
View file

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