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