1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-31 00:11:54 +08:00

feat(武器): 添加鸡毛弓武器及相关箭矢功能

实现鸡毛弓武器系统,包括武器脚本、箭矢脚本和场景配置
修改实体伤害处理逻辑,分离普通伤害和子弹伤害方法
更新公鸡角色配置,添加鸡毛弓作为默认武器
This commit is contained in:
2025-11-16 17:22:40 +08:00
parent 152f75d551
commit ddd89f1334
13 changed files with 133 additions and 10 deletions
+9 -1
View File
@@ -224,7 +224,15 @@ func getSprintInitialDisplace():
return displace(velocity) * sprintMultiplier
func getSprintProgress():
return velocity.length() / getSprintInitialDisplace().length()
func takeDamage(bullet: BulletBase, crit: bool):
func takeDamage(baseDamage: float, crit: bool = false, perfectMiss: bool = false):
var resultDamage = baseDamage + baseDamage * int(crit) * fields.get(FieldStore.Entity.CRIT_DAMAGE)
health -= resultDamage
healthChanged.emit(health)
DamageLabel.create(resultDamage, crit || perfectMiss, damageAnchor.global_position + MathTool.randv2_range(GameRule.damageLabelSpawnOffset))
if health <= 0:
tryDie(null)
return resultDamage
func bulletHit(bullet: BulletBase, crit: bool):
# 当受伤时
hurtAnimator.play("hurt")
var baseDamage: float = bullet.damage * bullet.launcher.fields.get(FieldStore.Entity.DAMAGE_MULTIPILER) * randf_range(1 - GameRule.damageOffset, 1 + GameRule.damageOffset)