fix(combat): 战斗逐项对齐 40250,修复移动 / 技能释放与武器挂点
- 连击类型由 combo_changed 驱动(SetComboSkillFlag,技能 122 等级) - 命中判定改为 .msa 刀尖 Z 圆柱 vs .msm 防御球(hit_collision.gd 逐行移植) - _register_hit 改为 map::insert 语义,修正命中上限 - 攻速同时缩放 GetAttackingElapsedTime 与攻击动作速率;按武器动作模式目录绑定攻击段 - 去掉本地连击超时,motion_bound 清命中表 / 连击段号 - __ProcessDataAttackSuccess:InsertDelay 硬直、physics_push.gd 击退 + GetBlendingPosition 同步、 命中特效、__HitGood / __HitGreate / __HitStone 受击动作链与抖动(ui/hit_reaction.gd) - ClassicSession::send_use_skill 不再夹带 CG_FLY_TARGETING - mac 前进 / 后退方向与技能释放修复;武器按职业骨骼挂到手上 - 新增 hit_collision / physics_push / hit_view / net_world_push / weapon_attach 测试; gpu_pose_bounds / race_motion_assembly 适配 damage 随机变体 - 文档:CLIENT-GAP.md、CLIENT-GAP-FIX.md §3.5 / §3.7 与 C.5 增量 130 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ft3kXpNdLbKEfg5uDLfqVF
This commit is contained in:
@@ -273,6 +273,10 @@ func setup(m2client: Node, assets_root: String,
|
||||
# 特效注册表(P5)—— GC_SPECIFIC_EFFECT(.mse 路径) / GC_SPECIAL_EFFECT(内建 id) 在实体上播
|
||||
fx = EffectRegistry.new()
|
||||
fx.setup(_assets)
|
||||
# §3.7 __ProcessDataAttackSuccess:命中特效(m_dwBattleHitEffectID)挂在实体挂载点下播
|
||||
if net_play:
|
||||
net_play.fx = fx
|
||||
net_play.fx_parent = _mount
|
||||
|
||||
# 技能(P6)—— K 键技能窗,数字键 1-4 → 快捷栏 0-3 / F1-F4 → 4-7 / Ctrl+数字 = 表情,+ 技能特效表
|
||||
if assets_root != "":
|
||||
@@ -280,6 +284,10 @@ func setup(m2client: Node, assets_root: String,
|
||||
for lang in ["en", "common"]:
|
||||
if skill_table.load_file(assets_root.path_join("locale/locale/%s/skilldesc.txt" % lang)):
|
||||
break
|
||||
# LoadLocaleData:RegisterSkillDesc 之后 RegisterSkillTable(技能射程 TARGET_RANGE)。
|
||||
for lang in ["en", "common"]:
|
||||
if skill_table.load_table(assets_root.path_join("locale/locale/%s/skilltable.txt" % lang)):
|
||||
break
|
||||
skill_fx = SkillFx.new()
|
||||
skill_fx.setup(fx, skill_table)
|
||||
skills = SkillUI.new()
|
||||
|
||||
Reference in New Issue
Block a user