照清单 §5.1–§5.8 逐条录入,键名与 ID 原样照抄;省略写法(如「结构同 202」)
全部展开写全。每个精灵注明类型/用途/资源键/帧说明,后期照此在编辑器里创建。
按协调方中途下达的结构变更,Group 与其名下精灵合并为 group 容器
(groupName: { id: 群组常量, 精灵键: 精灵ID, ... })。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
147 lines
8.0 KiB
JavaScript
147 lines
8.0 KiB
JavaScript
///////////////////////////////////////////////////////////////
|
||
////////// EQW_Sprites: 精灵结构(清单 §5.6/§5.6a/§5.7a/§5.7b 结算)
|
||
///////////////////////////////////////////////////////////////
|
||
// 子游戏精灵段 1001–2999。结构与 Sprites_Table.js 一致:
|
||
// View 下 Layer(或 Layer1/Layer2…)为图层声明,其余键是 group 容器;
|
||
// 容器内 id 为群组 ID、其余键才是精灵 id。
|
||
// 连号精灵逐条写全,不用循环生成。
|
||
var EQW_Sprites = EQW_Sprites || {};
|
||
|
||
//小局结算面板(清单 §5.6,Layer 302 群组 240)
|
||
//
|
||
//以下键号在源清单中被显式判定「不需要」,本文件不占用,留空号以便追溯:
|
||
// 1814 RESULT_JUDGE_TEXT —— 结算面板不显示判定文字,改由动画呈现(§1.8,D-8)
|
||
EQW_Sprites.AsetResultView = {
|
||
Layer: EQW_Layers.POPUP_ASET_RESULT, //302
|
||
|
||
AsetResult: {
|
||
id: EQW_Groups.ASET_RESULT, //240
|
||
|
||
RESULT_BOTTOM_PANEL: 1800, //图片:底牌区面板底,资源 EQW_Images.PANEL_BOTTOM_CARDS
|
||
RESULT_BOTTOM_TEXT: 1801, //文字:「叫分{multiple}子 底牌 {grade1}x{bottom.multiple}」
|
||
|
||
//—— 三家分数光晕,资源 EQW_Images.GLOW_RESULT,帧1=赢(橙) 帧2=输(蓝) ——
|
||
RESULT_GLOW_LEFT: 1802,
|
||
RESULT_GLOW_RIGHT: 1803,
|
||
RESULT_GLOW_SELF: 1804,
|
||
|
||
//—— 三家总分文字(aset.seatlist[i].grade)——
|
||
RESULT_SCORE_LEFT: 1805,
|
||
RESULT_SCORE_RIGHT: 1806,
|
||
RESULT_SCORE_SELF: 1807,
|
||
|
||
//—— 三家捡分子数得分文字 grade_jf【T-13】——
|
||
RESULT_JF_LEFT: 1808,
|
||
RESULT_JF_RIGHT: 1809,
|
||
RESULT_JF_SELF: 1810,
|
||
|
||
//—— 三家算奖得分文字 grade_aw【T-13】——
|
||
RESULT_AW_LEFT: 1811,
|
||
RESULT_AW_RIGHT: 1812,
|
||
RESULT_AW_SELF: 1813,
|
||
|
||
RESULT_BTN_CG: 1815, //图片:「冲关牌型」按钮,资源 EQW_Images.BTN_CG_CARDS
|
||
RESULT_BTN_CG_TEXT: 1816, //文字:按钮文案「冲关牌型」
|
||
RESULT_BTN_NEXT: 1817, //图片:「下一局」按钮,资源 EQW_Images.BTN_NEXT_ASET
|
||
RESULT_BTN_NEXT_TEXT: 1818 //文字:按钮文案「下一局」
|
||
}
|
||
};
|
||
//> 底牌 8 张精灵复用 Sprites_Cards.js 群组 215(BuryCardsView.BuryCards,1258–1265),不在此重复。
|
||
|
||
//冲关牌型叠加层(清单 §5.6a,Layer 302 群组 244,精灵复制)——
|
||
//本层的牌用 SpriteCopyUtils 运行时复制,不预置固定张数(cards 长度不定,最多可达 20 余张)。
|
||
//编辑器里只需建 5 个精灵(3 容器 + 1 牌模板 + 1 遮罩);奖数文字 3 个照常预置。
|
||
//RESULT_BTN_NEXT(1817/1818)在遮罩之上仍需可见可点,其图层内层级须高于 CG_MASK。
|
||
//清理是硬要求:关闭叠加层/组件 onDestroy 时必须 SpriteCopyUtils.removeRange(boxId, 0, cards.length),否则复制精灵残留。
|
||
EQW_Sprites.ChongGuanOverlayView = {
|
||
Layer: EQW_Layers.POPUP_ASET_RESULT, //302
|
||
|
||
ChongGuan: {
|
||
id: EQW_Groups.CHONGGUAN, //244
|
||
|
||
CG_MASK: 1820, //图片:半透黑遮罩(拉伸满屏,兼作点击关闭热区),资源 EQW_Images.MASK_DIM
|
||
CG_BOX_LEFT: 1821, //容器:左上家冲关牌容器(SpriteCopyUtils 复制的父精灵)
|
||
CG_BOX_RIGHT: 1822, //容器:右上家冲关牌容器
|
||
CG_BOX_SELF: 1823, //容器:自己冲关牌容器
|
||
CG_CARD_TPL: 1824, //模板:冲关牌模板(编辑器里放好、默认隐藏,只作样式来源),资源 EQW_Images.CARD_FACE_L
|
||
|
||
//—— 三家奖数文字,与该家的冲关牌并列显示,取 aset.seatlist[i].naward ——
|
||
CG_COUNT_LEFT: 1825,
|
||
CG_COUNT_RIGHT: 1826,
|
||
CG_COUNT_SELF: 1827
|
||
}
|
||
};
|
||
|
||
//大局总结算 / 解散结算(清单 §5.7a,Layer 303 群组 241,玩家栏用精灵复制)——
|
||
//三条玩家栏结构完全相同、仅数据不同,用 SpriteCopyUtils 复制生成;面板外壳与按钮预置。
|
||
//tag 分段(SpriteCopyUtils.createTagManager):rank 1–20 / avatar 21–40 / text 41–140(每行 6 条文字)/ score 141–160 / divider 161–180。
|
||
//清理:关闭面板时按各段 removeRange。
|
||
//解散结算复用本面板(协议 §14.1,解散包也带 account),只是 aset 各项为 0。
|
||
EQW_Sprites.AccountView = {
|
||
Layer: EQW_Layers.POPUP_ACCOUNT, //303
|
||
|
||
Account: {
|
||
id: EQW_Groups.ACCOUNT, //241
|
||
|
||
ACC_PANEL_BG: 1900, //图片:面板底(圆角浅灰绿),资源 EQW_Images.PANEL_ACCOUNT
|
||
ACC_TITLE_BAR: 1901, //图片:标题栏(青绿底),资源 EQW_Images.BAR_ACCOUNT_TITLE
|
||
ACC_TITLE_TEXT: 1902, //文字:「二七王-3人 房号… 共…局 …」
|
||
ACC_BTN_CLOSE: 1903, //图片:右上角关闭按钮,资源 EQW_Images.BTN_ACC_CLOSE
|
||
ACC_RULE_BAR: 1904, //图片:底部规则栏(浅绿底),资源 EQW_Images.BAR_ACCOUNT_RULE
|
||
ACC_RULE_TEXT: 1905, //文字:「规则:可查牌、傍王、爬坡算子」
|
||
|
||
ACC_ROW_CONTAINER: 1910, //容器:玩家栏的复制父精灵
|
||
|
||
//—— 玩家栏复制模板(tag 分段见上)——
|
||
ACC_TPL_RANK: 1911, //模板:名次徽章,资源 EQW_Images.BADGE_RANK,帧=名次1–3
|
||
ACC_TPL_AVATAR: 1912, //模板:头像,运行时贴玩家头像
|
||
ACC_TPL_TEXT: 1913, //模板:通用文字(昵称/ID/各项分数,一行一个)
|
||
ACC_TPL_SCORE_NUM: 1914, //模板:右侧总分大字(数字精灵),资源 EQW_Images.NUM_RESULT_WIN / NUM_RESULT_LOSE
|
||
ACC_TPL_DIVIDER: 1915, //模板:行间分隔线,资源 EQW_Images.LINE_DIVIDER
|
||
|
||
//—— 底部 4 个功能按钮:再来一局/分享好友/复制战绩/退出房间,资源 EQW_Images.BTN_ACCOUNT_* ——
|
||
ACC_BTN_AGAIN: 1920,
|
||
ACC_BTN_AGAIN_TEXT: 1921,
|
||
ACC_BTN_SHARE: 1922,
|
||
ACC_BTN_SHARE_TEXT: 1923,
|
||
ACC_BTN_COPY: 1924,
|
||
ACC_BTN_COPY_TEXT: 1925,
|
||
ACC_BTN_EXIT: 1926,
|
||
ACC_BTN_EXIT_TEXT: 1927
|
||
}
|
||
};
|
||
|
||
//出牌历史 / 上一轮 / 明牌 / 亮牌(清单 §5.7b,Layer 304 出牌历史、Layer 305 明牌,群组 242/243,牌用精灵复制)——
|
||
//两者版式相同(遮罩 + 每家一排牌),差别只在数据源与家数,共用同一套渲染:
|
||
//出牌历史:三家都显示,数据 = pushlist 摊平聚合到各家(§1.7 D-7);上一轮同一套精灵,只取 pushlist 末尾一项。
|
||
//明牌:只显示另两家,数据 = mingpai.others[].zhucards(§1.7 D-6)。
|
||
//亮牌:只显示一排(庄家固定主牌),数据 = liangpai.cards(§1.6),复用同一套遮罩+容器+牌模板,仅数据源与排数不同。
|
||
EQW_Sprites.HistoryMingPaiView = {
|
||
Layer1: EQW_Layers.POPUP_HISTORY, //304 出牌历史/上一轮/亮牌
|
||
Layer2: EQW_Layers.POPUP_MINGPAI, //305 明牌
|
||
|
||
History: {
|
||
id: EQW_Groups.HISTORY, //242
|
||
|
||
HIST_MASK: 1950, //图片:半透黑遮罩(兼关闭热区),资源 EQW_Images.MASK_DIM
|
||
HIST_BOX_LEFT: 1951, //容器:左上家牌容器
|
||
HIST_BOX_RIGHT: 1952, //容器:右上家牌容器
|
||
HIST_BOX_SELF: 1953, //容器:自己牌容器
|
||
HIST_CARD_TPL: 1954, //模板:牌模板,资源 EQW_Images.CARD_FACE_L
|
||
HIST_LABEL_LEFT: 1955, //文字:左上家座位标签(昵称/张数)
|
||
HIST_LABEL_RIGHT: 1956, //文字:右上家座位标签
|
||
HIST_LABEL_SELF: 1957 //文字:自己座位标签
|
||
},
|
||
|
||
MingPai: {
|
||
id: EQW_Groups.MINGPAI, //243
|
||
|
||
MING_MASK: 2000, //图片:明牌遮罩,资源 EQW_Images.MASK_DIM
|
||
MING_BOX_A: 2001, //容器:另一家A牌容器
|
||
MING_BOX_B: 2002, //容器:另一家B牌容器
|
||
MING_CARD_TPL: 2003, //模板:牌模板,资源 EQW_Images.CARD_FACE_L
|
||
MING_LABEL_A: 2004, //文字:A座位标签
|
||
MING_LABEL_B: 2005 //文字:B座位标签
|
||
}
|
||
};
|