Refactor brick throwing mechanics; integrate new input handling and projectile initialization components

This commit is contained in:
2025-05-13 00:44:44 +02:00
parent 3d65daf0c5
commit c291f42531
25 changed files with 276 additions and 72 deletions

View File

@@ -1,7 +1,8 @@
[gd_resource type="Resource" script_class="SkillData" load_steps=3 format=3 uid="uid://dw5ee2lpeypnb"]
[gd_resource type="Resource" script_class="SkillData" load_steps=4 format=3 uid="uid://dw5ee2lpeypnb"]
[ext_resource type="PackedScene" uid="uid://coayig4dxelo2" path="res://objects/player_skills/brick_throw_skill.tscn" id="1_5gnea"]
[ext_resource type="Script" uid="uid://bya240e627ti6" path="res://scripts/resources/skill_data.gd" id="1_etxe2"]
[ext_resource type="Resource" uid="uid://br84dsfa3ti04" path="res://resources/throw_behaviors/tap_throw_input.tres" id="1_xwijh"]
[resource]
script = ExtResource("1_etxe2")
@@ -9,8 +10,8 @@ name = "Brick power"
description = "Allows you to throw bricks at enemies"
node = ExtResource("1_5gnea")
config = {
"charge_throw_component": NodePath("ChargeThrowComponent"),
"player_controller": NodePath("."),
"throw_input_behavior": ExtResource("1_xwijh"),
"timer": NodePath("ThrowTimer")
}
cost = 50

View File

@@ -1,6 +1,7 @@
[gd_resource type="Resource" script_class="SkillData" load_steps=4 format=3 uid="uid://cdp8sex36vdq2"]
[gd_resource type="Resource" script_class="SkillData" load_steps=5 format=3 uid="uid://cdp8sex36vdq2"]
[ext_resource type="PackedScene" uid="uid://5surx230gfw3" path="res://objects/entities/exploding_brick.tscn" id="1_6pfoa"]
[ext_resource type="Resource" uid="uid://diuv6pr6a0dup" path="res://resources/throw_behaviors/charge_throw_input.tres" id="2_87gkt"]
[ext_resource type="PackedScene" uid="uid://coayig4dxelo2" path="res://objects/player_skills/brick_throw_skill.tscn" id="2_e0o8w"]
[ext_resource type="Script" uid="uid://bya240e627ti6" path="res://scripts/resources/skill_data.gd" id="3_cgsq1"]
@@ -11,8 +12,8 @@ description = "Allows you to throw explosive bricks at enemies"
node = ExtResource("2_e0o8w")
config = {
"brick_scene": ExtResource("1_6pfoa"),
"charge_throw_component": NodePath("./ChargeThrowComponent"),
"player_controller": NodePath("."),
"throw_input_behavior": ExtResource("2_87gkt"),
"timer": NodePath("ThrowTimer")
}
cost = 180

View File

@@ -1,8 +1,9 @@
[gd_resource type="Resource" script_class="SkillData" load_steps=4 format=3 uid="uid://2glvryih82t1"]
[gd_resource type="Resource" script_class="SkillData" load_steps=5 format=3 uid="uid://2glvryih82t1"]
[ext_resource type="PackedScene" uid="uid://daau4j5hbklk0" path="res://objects/entities/fire_brick.tscn" id="1_2g43l"]
[ext_resource type="Script" uid="uid://bya240e627ti6" path="res://scripts/resources/skill_data.gd" id="1_2j5ko"]
[ext_resource type="PackedScene" uid="uid://coayig4dxelo2" path="res://objects/player_skills/brick_throw_skill.tscn" id="1_g53fp"]
[ext_resource type="Resource" uid="uid://br84dsfa3ti04" path="res://resources/throw_behaviors/tap_throw_input.tres" id="2_dm5pj"]
[resource]
script = ExtResource("1_2j5ko")
@@ -12,6 +13,7 @@ node = ExtResource("1_g53fp")
config = {
"brick_scene": ExtResource("1_2g43l"),
"player_controller": NodePath("."),
"throw_input_behavior": ExtResource("2_dm5pj"),
"timer": NodePath("ThrowTimer")
}
cost = 150

View File

@@ -1,7 +1,8 @@
[gd_resource type="Resource" script_class="SkillData" load_steps=4 format=3 uid="uid://cx5fsbexblp60"]
[gd_resource type="Resource" script_class="SkillData" load_steps=5 format=3 uid="uid://cx5fsbexblp60"]
[ext_resource type="PackedScene" uid="uid://bcmx07k12gcsc" path="res://objects/entities/ice_brick.tscn" id="1_ci3d1"]
[ext_resource type="PackedScene" uid="uid://coayig4dxelo2" path="res://objects/player_skills/brick_throw_skill.tscn" id="1_rflri"]
[ext_resource type="Resource" uid="uid://br84dsfa3ti04" path="res://resources/throw_behaviors/tap_throw_input.tres" id="2_hsgyv"]
[ext_resource type="Script" uid="uid://bya240e627ti6" path="res://scripts/resources/skill_data.gd" id="2_pspkt"]
[resource]
@@ -12,6 +13,7 @@ node = ExtResource("1_rflri")
config = {
"brick_scene": ExtResource("1_ci3d1"),
"player_controller": NodePath("."),
"throw_input_behavior": ExtResource("2_hsgyv"),
"timer": NodePath("ThrowTimer")
}
cost = 150

View File

@@ -0,0 +1,11 @@
[gd_resource type="Resource" script_class="ChargeThrowInputResource" load_steps=2 format=3 uid="uid://diuv6pr6a0dup"]
[ext_resource type="Script" uid="uid://dl1kpll33o6mv" path="res://scripts/resources/charge_throw_input_resource.gd" id="1_6fb6k"]
[resource]
script = ExtResource("1_6fb6k")
min_power = 0.5
max_power = 2.0
max_charge_time = 1.5
min_charge_duration = 0.1
metadata/_custom_type_script = "uid://dl1kpll33o6mv"

View File

@@ -0,0 +1,7 @@
[gd_resource type="Resource" script_class="TapThrowInputResource" load_steps=2 format=3 uid="uid://br84dsfa3ti04"]
[ext_resource type="Script" uid="uid://blvdnsyi287rf" path="res://scripts/resources/tap_throw_input_resource.gd" id="1_c51dp"]
[resource]
script = ExtResource("1_c51dp")
metadata/_custom_type_script = "uid://blvdnsyi287rf"