mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-07-08 02:57:06 +08:00
refactor(BulletBase): 优化子弹分裂和折射逻辑
将分裂和折射计算中的临时变量命名更清晰,并简化循环逻辑。使用更直观的变量名提高可读性,同时保持原有功能不变。
This commit is contained in:
@@ -140,16 +140,18 @@ func tryDestroy(becauseMap: bool = false):
|
|||||||
queue_free()
|
queue_free()
|
||||||
func trySplit():
|
func trySplit():
|
||||||
if is_instance_valid(launcher) and !isChildSplit:
|
if is_instance_valid(launcher) and !isChildSplit:
|
||||||
var launcherSplit = launcher.fields.get(FieldStore.Entity.BULLET_SPLIT)
|
var value = launcher.fields.get(FieldStore.Entity.BULLET_SPLIT)
|
||||||
for i in range(MathTool.shrimpRate(launcherSplit)):
|
var total = MathTool.shrimpRate(value)
|
||||||
split(i, launcherSplit, launcherSplit - floor(launcherSplit))
|
for i in total:
|
||||||
|
split(i, total, total - floor(total))
|
||||||
func tryRefract():
|
func tryRefract():
|
||||||
if is_instance_valid(launcher) and !isChildRefract:
|
if is_instance_valid(launcher) and !isChildRefract:
|
||||||
var value = launcher.fields.get(FieldStore.Entity.BULLET_REFRACTION)
|
var value = launcher.fields.get(FieldStore.Entity.BULLET_REFRACTION)
|
||||||
for i in range(MathTool.shrimpRate(value)):
|
var total = MathTool.shrimpRate(value)
|
||||||
|
for i in total:
|
||||||
var entity = EntityTool.findClosetEntity(position, get_tree(), !launcher.isPlayer(), launcher.isPlayer(), [launcher])
|
var entity = EntityTool.findClosetEntity(position, get_tree(), !launcher.isPlayer(), launcher.isPlayer(), [launcher])
|
||||||
if is_instance_valid(entity):
|
if is_instance_valid(entity):
|
||||||
refract(entity, i, value, value - floor(value))
|
refract(entity, i, total, value - floor(total))
|
||||||
|
|
||||||
# 抽象方法
|
# 抽象方法
|
||||||
func ai():
|
func ai():
|
||||||
|
|||||||
Reference in New Issue
Block a user