1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-06-04 18:57:13 +08:00

feat(召唤系统): 实现彩虹旗召唤物及相关功能

添加SummonBase作为召唤物基类,实现LGBTFlag召唤物
修改LGBTWeapon从发射子弹改为召唤彩虹旗
在ComponentManager中添加召唤物管理功能
更新公鸡角色预设使用彩虹旗武器
This commit is contained in:
2025-11-06 22:26:15 +08:00
parent 5efa92f5df
commit a273f644d2
11 changed files with 81 additions and 33 deletions
+12
View File
@@ -374,7 +374,19 @@ func useItem(items: Dictionary):
func getItem(items: Dictionary):
for item in items:
inventory[item] = clamp(inventory[item] + items[item], 0, inventoryMax[item])
func summon(who: PackedScene, syncFields: bool = true, lockValue: bool = true) -> SummonBase:
var instance: SummonBase = who.instantiate()
instance.myMaster = self
if isPlayer(): instance.add_to_group("players")
if syncFields:
if lockValue:
instance.fields = fields.duplicate()
else:
instance.fields = fields
get_parent().add_child(instance)
return instance
# 关于追踪
func getTrackingAnchor() -> Vector2:
return hurtbox.get_node("hitbox").global_position
+14
View File
@@ -0,0 +1,14 @@
extends EntityBase
class_name SummonBase
@export var attraction: float = 0.0
var myMaster: EntityBase = null
func _ready():
for entity in get_tree().get_nodes_in_group("mobs"):
var ent = entity as EntityBase
if MathTool.rate(attraction):
ent.currentFocusedBoss = self
if is_instance_valid(myMaster):
myMaster.died.connect(tryDie)
+1
View File
@@ -0,0 +1 @@
uid://bnsl0c5xltsic