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:
@@ -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"]
|
||||
|
||||
@@ -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)
|
||||
@@ -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,
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user