1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-28 06:51:54 +08:00

feat(子弹系统): 将子弹添加到子弹组并调整KukeMC的检测逻辑

- 在BulletBase.gd中为生成的子弹实例添加"bullets"组
- 修改KukeMC.gd的ai逻辑,改为检测"bullets"组而非"bullet"组
- 调整KukeMC的子弹检测距离从100增加到200
- 移除KukeMC对bosses组的检测逻辑
- 在Wave.gd中将默认数据改为testBoss波次并添加KukeMC
- 为KukeMC场景添加脚本并设置初始生命值
This commit is contained in:
2025-09-08 22:35:24 +08:00
parent b1de068892
commit 547e059c5b
4 changed files with 12 additions and 12 deletions
+3 -1
View File
@@ -1,7 +1,8 @@
[gd_scene load_steps=4 format=3 uid="uid://d4lfjwy0hkidu"]
[gd_scene load_steps=5 format=3 uid="uid://d4lfjwy0hkidu"]
[ext_resource type="PackedScene" uid="uid://cvogxi7mktumf" path="res://components/Abstracts/EntityBase.tscn" id="1_r4q7y"]
[ext_resource type="Texture2D" uid="uid://c1jhrutky8pya" path="res://resources/characters/kukemc/avatar.webp" id="2_422pv"]
[ext_resource type="Script" path="res://scripts/Contents/Characters/KukeMC.gd" id="2_s2dg5"]
[sub_resource type="SpriteFrames" id="SpriteFrames_1c0ui"]
animations = [{
@@ -23,6 +24,7 @@ animations = [{
}]
[node name="KukeMC" instance=ExtResource("1_r4q7y")]
script = ExtResource("2_s2dg5")
displayName = "酷可mc"
[node name="texture" parent="." index="2"]
+4 -8
View File
@@ -1,15 +1,11 @@
extends EntityBase
class_name KukeMC
func register():
fields[FieldStore.Entity.MAX_HEALTH] = 1000
func ai():
for bullet in get_tree().get_nodes_in_group("bullet"):
for bullet in get_tree().get_nodes_in_group("bullets"):
if (
bullet is LGBTBullet and
bullet.position.distance_to(self.position) < 100
bullet.position.distance_to(self.position) < 200
):
bullet.tryDestroy()
for entity in get_tree().get_nodes_in_group("bosses"):
if (
entity.name == "FurryR" and
entity.position.distance_to(self.position) < 100
):
entity.takeDamage(114514)
+4 -3
View File
@@ -17,11 +17,12 @@ static var presetWaves = {
create(preload("res://components/Characters/Bear.tscn"), 0, 0, true, 19, INF, 10),
],
"testBoss": [
create(preload("res://components/Characters/Chick.tscn"), 1, 1, true, 0, INF, 1),
create(preload("res://components/Characters/Bear.tscn"), 1, 1, true, 0, INF, 1),
# create(preload("res://components/Characters/Chick.tscn"), 1, 1, true, 0, INF, 1),
# create(preload("res://components/Characters/Bear.tscn"), 1, 1, true, 0, INF, 1),
create(preload("res://components/Characters/KukeMC.tscn"), 1, 1, true, 0, INF, 1),
]
}
static var data = presetWaves["normal"]
static var data = presetWaves["testBoss"]
static func create(
entity_: PackedScene,
+1
View File
@@ -156,5 +156,6 @@ static func generate(
instance.rotation = spawnRotation + deg_to_rad(randf_range(-launchBy.fields.get(FieldStore.Entity.OFFSET_SHOOT), launchBy.fields.get(FieldStore.Entity.OFFSET_SHOOT)))
if addToWorld:
WorldManager.rootNode.call_deferred("add_child", instance)
instance.add_to_group("bullets")
instances.append(instance)
return instances