- CD_LEFT/CD_RIGHT/CD_SELF(1150-1152)由文字精灵改为多帧图数字精灵: 资源 NUM_COUNTDOWN,纯秒数无后缀;对应布局节点 P_COUNTDOWN 的 h 改取 NUM_STYLE.COUNTDOWN.charHeight,w 留到运行时注入。 - 结算得分 RESULT_SCORE_LEFT/RIGHT/SELF(1805-1807)同理由文字精灵改为 数字图精灵(NUM_RESULT_WIN/NUM_RESULT_LOSE),与大局结算已有的 ACC_TPL_SCORE_NUM 保持一致;布局节点随之调整,移除不再使用的 TEXT_STYLE.SCORE_BIG。 - NUM_CALL_SCORE 第16帧由"待美术与规则确认"改为明确的"无后缀"(叫分档位 面板只显示纯数字,"N子"角标是独立文字精灵);NUM_MAIN_SUIT_COUNT / NUM_RESULT_WIN / NUM_RESULT_LOSE 第16帧仍待确认,不改。 - Layout_Action.js 的 CALL_BTN_SCORE_TEXT、Layout_Result.js 的 RESULT_SCORE_TEXT 改名为 CALL_BTN_SCORE_NUM / RESULT_SCORE_NUM: 两者驱动的都是数字图精灵,_TEXT 后缀误导;同步测试引用。 - docs/client/development-guide/02:订正"SpriteManager 第1154行"这一失效 行号引用(回退后该行号落在 setTextWithWidth 体内),改为不写死行号。 - docs_dev 清单同步:§2.4/§5.4/§5.6/§6.6/§6.9 倒计时与结算得分的精灵类型 描述、§6.6/§6.9 对应布局参数。 - test_constants.js 的 NUM_STYLE 同源守卫表新增 COUNTDOWN、RESULT_WIN、 RESULT_LOSE 三对(连同改名后的 CALL_BTN_SCORE_NUM),共 6 条新断言。 精灵总数、布局节点总数均未变(378 / 61),只改类型与命名,不增删。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
69 lines
2.7 KiB
JavaScript
69 lines
2.7 KiB
JavaScript
///////////////////////////////////////////////////////////////
|
||
////////// EQW_Layout: 结算区配置(清单 §6.9)//////////////////
|
||
///////////////////////////////////////////////////////////////
|
||
// 【纯数据文件】无函数、无副作用;依赖 LayoutConstants.js 先加载
|
||
// (引用其 EQW_Layout.TEXT_STYLE.*,属 EQW_Layout 内部自引用)。
|
||
var EQW_Layout = EQW_Layout || {};
|
||
|
||
EQW_Layout.RESULT_BOTTOM_PANEL = { kind: 'point', x: 430, y: 140, w: 420, h: 148 };
|
||
|
||
//底牌说明文字:贴面板底部,纯文字,清单未给宽高
|
||
EQW_Layout.RESULT_BOTTOM_TEXT = {
|
||
kind: 'attach', targetKind: 'layout', target: 'RESULT_BOTTOM_PANEL',
|
||
hAlign: 'center', vAlign: 'bottom', offsetY: -14,
|
||
runtime: ['w', 'h']
|
||
};
|
||
|
||
//三家分数光晕
|
||
EQW_Layout.RESULT_GLOW = {
|
||
kind: 'point', w: 225, h: 100,
|
||
bySeat: {
|
||
LEFT: { x: 175, y: 150 },
|
||
RIGHT: { x: 865, y: 150 },
|
||
SELF: { x: 490, y: 340 }
|
||
}
|
||
};
|
||
|
||
//三家总分大字(多帧图数字精灵,非文字精灵,2026-08-27):贴对应光晕居中。
|
||
//target 直接指向光晕精灵键(固定,非动态);高度恒为单字高,取 NUM_STYLE.RESULT_WIN.charHeight
|
||
//(与 NUM_STYLE.RESULT_LOSE 相同,SSOT);宽度随位数变化,留到运行时注入
|
||
//节点名去掉 _TEXT 后缀改为 _NUM:与 CALL_BTN_SCORE_NUM 同一理由,_TEXT 会让人误以为是文字精灵
|
||
EQW_Layout.RESULT_SCORE_NUM = {
|
||
kind: 'attach', targetKind: 'sprite', hAlign: 'center', vAlign: 'middle',
|
||
h: EQW_Layout.NUM_STYLE.RESULT_WIN.charHeight, runtime: ['w'],
|
||
bySeat: {
|
||
LEFT: { target: 'RESULT_GLOW_LEFT' },
|
||
RIGHT: { target: 'RESULT_GLOW_RIGHT' },
|
||
SELF: { target: 'RESULT_GLOW_SELF' }
|
||
}
|
||
};
|
||
|
||
//三家『牌局分』:贴对应光晕左下
|
||
EQW_Layout.RESULT_JF_TEXT = {
|
||
kind: 'attach', targetKind: 'sprite', hAlign: 'left', vAlign: 'bottom', offsetX: -15, offsetY: 24,
|
||
runtime: ['w', 'h'],
|
||
bySeat: {
|
||
LEFT: { target: 'RESULT_GLOW_LEFT' },
|
||
RIGHT: { target: 'RESULT_GLOW_RIGHT' },
|
||
SELF: { target: 'RESULT_GLOW_SELF' }
|
||
}
|
||
};
|
||
|
||
//三家『冲关分』:贴对应光晕右下
|
||
EQW_Layout.RESULT_AW_TEXT = {
|
||
kind: 'attach', targetKind: 'sprite', hAlign: 'right', vAlign: 'bottom', offsetX: 15, offsetY: 24,
|
||
runtime: ['w', 'h'],
|
||
bySeat: {
|
||
LEFT: { target: 'RESULT_GLOW_LEFT' },
|
||
RIGHT: { target: 'RESULT_GLOW_RIGHT' },
|
||
SELF: { target: 'RESULT_GLOW_SELF' }
|
||
}
|
||
};
|
||
|
||
EQW_Layout.RESULT_BTN_CG = { kind: 'point', x: 535, y: 515, w: 183, h: 63 };
|
||
|
||
EQW_Layout.RESULT_BTN_NEXT = { kind: 'point', x: 835, y: 518, w: 180, h: 65 };
|
||
|
||
//冲关遮罩:透明度也是配置项
|
||
EQW_Layout.CG_MASK = { kind: 'point', x: 0, y: 0, w: 1280, h: 720, opacity: 0.72 };
|