feat: 1. 添加武器击退功能,player 使用weapon_behavior/melee_behavior(hitbox 会调用 setup 初始化) 的 hitbox 击中 enemy_slow,enemy_slow拿到hitbox的knockback_power,以及hitbox指向enemy的方向,然后朝着该方向,使用power击退:调用enemy.gd 的 apply_knockback,然后_process中会对position修改,同时开启定时器,定时器结束的时候,使用 reset_knockback 重置

This commit is contained in:
luke358
2026-05-19 17:39:58 +08:00
parent cf8c5b90ff
commit 4fa565e0e9
10 changed files with 110 additions and 7 deletions
+6
View File
@@ -2,6 +2,7 @@
[ext_resource type="PackedScene" uid="uid://dcc7rsdy4j8v6" path="res://scenes/weapons/weapon_base.tscn" id="1_soyvn"]
[ext_resource type="PackedScene" uid="uid://c0fyx8gj5uexl" path="res://scenes/components/hitbox_component.tscn" id="2_gq287"]
[ext_resource type="Script" uid="uid://bbqq80eq8fqwn" path="res://scenes/weapons/melee/melee_behavior.gd" id="3_sv013"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_gq287"]
size = Vector2(52, 42)
@@ -22,3 +23,8 @@ monitorable = false
z_index = 1
shape = SubResource("RectangleShape2D_gq287")
debug_color = Color(0.9556908, 0.042769283, 0.5218647, 0.41960785)
[node name="WeaponBehavior" parent="." index="3" unique_id=1507497844 node_paths=PackedStringArray("hitbox", "weapon")]
script = ExtResource("3_sv013")
hitbox = NodePath("../Sprite2D/HitboxComponent")
weapon = NodePath("..")