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