From c322e3b796d28b279e361897cf75d022b6418511 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=A8=E8=90=BD=E5=9F=BA=E5=9B=B4=E8=99=BE?= <3161880837@qq.com> Date: Fri, 29 Aug 2025 10:27:32 +0800 Subject: [PATCH] =?UTF-8?q?refactor(Statemachine):=20=E6=9B=BF=E6=8D=A2Tim?= =?UTF-8?q?e.get=5Fticks=5Fmsec=E4=B8=BAWorldManager.getTime?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 统一使用WorldManager.getTime获取时间,提高代码一致性并便于未来时间管理逻辑的修改 --- scripts/Statemachine/BulletBase.gd | 6 +++--- scripts/Statemachine/EntityBase.gd | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/Statemachine/BulletBase.gd b/scripts/Statemachine/BulletBase.gd index 1fe5d13..d2d18c1 100644 --- a/scripts/Statemachine/BulletBase.gd +++ b/scripts/Statemachine/BulletBase.gd @@ -27,7 +27,7 @@ var spawnInWhere: Vector2 = Vector2.ZERO func _ready(): area_entered.connect(hit) - spawnInWhen = Time.get_ticks_msec() + spawnInWhen = WorldManager.getTime() spawnInWhere = position spawn() dotLoop() @@ -40,7 +40,7 @@ func _ready(): animator.play("loop") func _process(_delta: float) -> void: if lifeTime > 0: - if Time.get_ticks_msec() - spawnInWhen >= lifeTime: + if WorldManager.getTime() - spawnInWhen >= lifeTime: destroy() if lifeDistance > 0: if position.distance_to(spawnInWhere) >= lifeDistance: @@ -67,7 +67,7 @@ func forward(direction: Vector2): func fullPenerate(): return fields.get(FieldStore.Bullet.PENERATE) + launcher.fields.get(FieldStore.Entity.PENERATE) + GameRule.penerateRateInfluenceByLuckValue * launcher.fields[FieldStore.Entity.LUCK_VALUE] func timeLived(): - return Time.get_ticks_msec() - spawnInWhen + return WorldManager.getTime() - spawnInWhen func dotLoop(): if await applyDot(): await dotLoop() diff --git a/scripts/Statemachine/EntityBase.gd b/scripts/Statemachine/EntityBase.gd index d42fef7..f9e9fe3 100644 --- a/scripts/Statemachine/EntityBase.gd +++ b/scripts/Statemachine/EntityBase.gd @@ -176,11 +176,11 @@ func useEnergy(value: float): energyChanged.emit(energy) return state func isCooldowned(): - return Time.get_ticks_msec() - lastAttack >= cooldownUnit / fields.get(FieldStore.Entity.ATTACK_SPEED) + return WorldManager.getTime() - lastAttack >= cooldownUnit / fields.get(FieldStore.Entity.ATTACK_SPEED) func startCooldown(): var state = isCooldowned() if state: - lastAttack = Time.get_ticks_msec() + lastAttack = WorldManager.getTime() return state func tryAttack(type: int): var state = startCooldown()