1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-06-04 02:37:12 +08:00

refactor: 使用ComponentManager统一管理资源加载

将所有直接使用`load("res://components/...")`加载资源的代码替换为通过`ComponentManager`统一管理的方式,提高代码的可维护性和资源管理的统一性
This commit is contained in:
2025-09-21 13:11:31 +08:00
parent e688f7f0c1
commit e551a6db61
17 changed files with 44 additions and 44 deletions
+1 -1
View File
@@ -8,7 +8,7 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
return origin
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for bullet in BulletBase.generate(load("res://components/Bullets/BigLaser.tscn"), entity, weaponPos, (get_global_mouse_position() - weaponPos).angle()):
for bullet in BulletBase.generate(ComponentManager.getBullet("BigLaser"), entity, weaponPos, (get_global_mouse_position() - weaponPos).angle()):
var bigLaser: BigLaser = bullet
bigLaser.dotTime = readStore("time") * 1000
bigLaser.damage = readStore("atk")
+1 -1
View File
@@ -14,7 +14,7 @@ func attack(entity: EntityBase):
var facingAngle = (get_global_mouse_position() - weaponPos).angle()
var startAngle = facingAngle - deg_to_rad(readStore("angle") * (readStore("count") / 2))
for i in range(int(readStore("count"))):
for j in BulletBase.generate(load("res://components/Bullets/LGBTBullet.tscn"), entity, weaponPos, startAngle + deg_to_rad(readStore("angle") * i)):
for j in BulletBase.generate(ComponentManager.getBullet("LGBTBullet"), entity, weaponPos, startAngle + deg_to_rad(readStore("angle") * i)):
var bullet: LGBTBullet = j
bullet.damage = readStore("atk")
bullet.tracer = EntityTool.findClosetEntity(get_global_mouse_position(), get_tree(), !entity.isPlayer(), entity.isPlayer())
+2 -2
View File
@@ -7,7 +7,7 @@ func update(to, origin, _entity):
return origin
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for i in BulletBase.generate(load("res://components/Bullets/Meowmere.tscn"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position())):
for i in BulletBase.generate(ComponentManager.getBullet("Meowmere"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position())):
i.damage = readStore("atk")
for i in readStore("count"):
BulletBase.generate(load("res://components/Bullets/RainbowCat.tscn"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position()))
BulletBase.generate(ComponentManager.getBullet("RainbowCat"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position()))
+1 -1
View File
@@ -8,7 +8,7 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
return origin
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for j in BulletBase.generate(load("res://components/Bullets/MushroomPickaxe.tscn"), entity, entity.texture.global_position, weaponPos.angle_to_point(get_global_mouse_position())):
for j in BulletBase.generate(ComponentManager.getBullet("MushroomPickaxe"), entity, entity.texture.global_position, weaponPos.angle_to_point(get_global_mouse_position())):
var bullet: MushroomPickaxe = j
bullet.damage = readStore("atk")
bullet.rate = readStore("rate")
+1 -1
View File
@@ -7,7 +7,7 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
return origin
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for j in BulletBase.generate(load("res://components/Bullets/NuclearBomb.tscn"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position())):
for j in BulletBase.generate(ComponentManager.getBullet("NuclearBomb"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position())):
var bullet: NuclearBomb = j
bullet.damage = readStore("atk")
bullet.radius = readStore("radius")
+1 -1
View File
@@ -7,6 +7,6 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
return origin
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for bullet in BulletBase.generate(load("res://components/Bullets/PurpleCrystal.tscn"), entity, weaponPos, (get_global_mouse_position() - weaponPos).angle()):
for bullet in BulletBase.generate(ComponentManager.getBullet("PurpleCrystal"), entity, weaponPos, (get_global_mouse_position() - weaponPos).angle()):
bullet.damage = readStore("atk")
return true
+1 -1
View File
@@ -11,7 +11,7 @@ func update(to: int, origin: Dictionary, _entity: EntityBase):
func attack(entity: EntityBase):
var weaponPos = entity.findWeaponAnchor("normal")
for i in range(int(randi_range(readStore("mincount"), readStore("maxcount")))):
for j in BulletBase.generate(load("res://components/Bullets/VectorStar.tscn"), entity, weaponPos, deg_to_rad(randf_range(0, 360))):
for j in BulletBase.generate(ComponentManager.getBullet("VectorStar"), entity, weaponPos, deg_to_rad(randf_range(0, 360))):
var bullet: VectorStar = j
bullet.damage = readStore("atk")
bullet.tracer = EntityTool.findClosetEntity(get_global_mouse_position(), get_tree(), !entity.isPlayer(), entity.isPlayer())