From cfc6537f974b606b6e86e52f259556a3650a6e5c Mon Sep 17 00:00:00 2001 From: zhenhui <1276357500@qq.com> Date: Fri, 27 Mar 2026 10:26:58 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=A5=96=E5=8A=B1=E9=85=8D?= =?UTF-8?q?=E7=BD=AE/=E6=8C=89=E8=A7=84=E5=88=99=E4=B8=80=E9=94=AE?= =?UTF-8?q?=E7=94=9F=E6=88=90=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../locales/langs/en/dice/reward_config.json | 11 ++--- .../locales/langs/zh/dice/reward_config.json | 17 ++++---- .../plugin/dice/reward_config/index/index.vue | 25 +++++++++++ .../index/modules/edit-dialog.vue | 16 ++++++- .../utils/generateIndexByRules.ts | 43 ++++++++++++------- 5 files changed, 82 insertions(+), 30 deletions(-) diff --git a/saiadmin-artd/src/locales/langs/en/dice/reward_config.json b/saiadmin-artd/src/locales/langs/en/dice/reward_config.json index bc5b719..6d8d20c 100644 --- a/saiadmin-artd/src/locales/langs/en/dice/reward_config.json +++ b/saiadmin-artd/src/locales/langs/en/dice/reward_config.json @@ -14,6 +14,7 @@ "colDisplayText": "Display Text", "colDisplayTextEn": "Display Text (EN)", "colRealEv": "Real Settlement", + "colRealReward": "Player Real Reward", "colTier": "Tier", "colRemark": "Remark", "placeholderTierSelect": "Tier", @@ -53,7 +54,7 @@ "infoNoBigwin": "No BIGWIN rows. Set tier to BIGWIN in the Reward Index tab first.", "btnRuleGenerate": "Generate by rules", "ruleGenerateTitle": "Generate reward index by rules", - "ruleGenerateRules": "[Generation logic (same as Create Reward Reference)]\n• 26 cells ordered by id ascending are positions 0–25; each row’s grid_number is 5–30 and unique.\n• Roll D (5–30): start at the cell whose grid_number equals D (start_index); clockwise landing = (start position + D) mod 26; counter-clockwise = start − D (if negative, +26).\n• Each reference row’s “dice points” column is the roll D; tier / real_ev / display text come from the config at the landing id.\n\n[Leopard rolls]\nFor rolls 5, 10, 15, 20, 25, 30, clockwise and counter-clockwise landing tiers must NOT be T4 or T5 (avoid leopard roll + penalty / try again).\n\n[real_ev vs tier]\nreal < −100 → T4; −100 < real < 0 → T3; 0 < real < 100 → T2; 100 < real < 500 → T1; T5 “try again” real_ev=0. Set per-tier real_ev standards below; values are written into the config and can be edited later.\n\n[Inputs]\nT1/T4/T5: fixed weighted counts. T2: minimum weighted count — clockwise and counter-clockwise must satisfy the corresponding constraints (one value per tier, applied to both directions). real_ev standards: one value per tier. Generated T1–T4 use ui_text / ui_text_en = 100 + real_ev (same EN); T5 uses “try again” / “Once again”. Remarks still distinguish break-even vs small win where applicable.", + "ruleGenerateRules": "[Generation logic (same as Create Reward Reference)]\n• 26 cells ordered by id ascending are positions 0–25; each row’s grid_number is 5–30 and unique.\n• Roll D (5–30): start at the cell whose grid_number equals D (start_index); clockwise landing = (start position + D) mod 26; counter-clockwise = start − D (if negative, +26).\n• Each reference row’s “dice points” column is the roll D; tier / real_ev / display text come from the config at the landing id.\n\n[Leopard rolls]\nFor rolls 5, 10, 15, 20, 25, 30, clockwise and counter-clockwise landing tiers must NOT be T4 or T5 (avoid leopard roll + penalty / once again).\n\n[Settlement amount vs tier]\nSettlement < 0 → T4; 0 < Settlement < 100 → T3; 100 < Settlement < 200 → T2; Settlement > 200 → T1; T5 “once again” settlement = 0. You can set a unified settlement standard for each tier below; generated rows write those values into the config, and details can be edited later in the table.\n\n[Inputs in this dialog]\nCount: T1/T4/T5 are fixed; T2 is minimum. Clockwise and counter-clockwise weighted counts (each roll result counts once) must each satisfy the entered values; T1, T4, and T5 are entered separately.\nSettlement standard: all cells in the same tier use the same value. On generation, T1–T4 use ui_text / ui_text_en = settlement real_ev; T5 is fixed to \"再来一次\" / \"Once again\". Remarks still distinguish break-even / small win, etc.", "ruleGenT1Row": "T1 (big prize)", "ruleGenT2Row": "T2 (small win / break-even)", "ruleGenT3RealEvOnly": "T3 (rake)", @@ -63,10 +64,10 @@ "ruleGenFixedCount": "Fixed count (CW & CCW)", "ruleGenRealEvStd": "real_ev standard", "ruleGenRealEvEditHint": "After saving, you can still edit display text, EN, real_ev and remarks per row in the table above.", - "ruleGenInvalidT1RealEv": "T1 real_ev must satisfy 100 < value < 500", - "ruleGenInvalidT2RealEv": "T2 real_ev must satisfy 0 < value < 100", - "ruleGenInvalidT3RealEv": "T3 real_ev must satisfy -100 < value < 0", - "ruleGenInvalidT4RealEv": "T4 real_ev must satisfy value < -100", + "ruleGenInvalidT1RealEv": "T1 settlement amount must satisfy: value > 200", + "ruleGenInvalidT2RealEv": "T2 settlement amount must satisfy: 100 < value < 200", + "ruleGenInvalidT3RealEv": "T3 settlement amount must satisfy: 0 < value < 100", + "ruleGenInvalidT4RealEv": "T4 settlement amount must satisfy: value < 0", "ruleGenInvalidT5RealEv": "T5 “try again” real_ev must be 0", "ruleGenT1Min": "T1 fixed count (CW & CCW)", "ruleGenT2Min": "T2 min (CW & CCW)", diff --git a/saiadmin-artd/src/locales/langs/zh/dice/reward_config.json b/saiadmin-artd/src/locales/langs/zh/dice/reward_config.json index 6ad4774..fda999f 100644 --- a/saiadmin-artd/src/locales/langs/zh/dice/reward_config.json +++ b/saiadmin-artd/src/locales/langs/zh/dice/reward_config.json @@ -13,7 +13,8 @@ "colDicePoints": "色子点数", "colDisplayText": "显示文本", "colDisplayTextEn": "显示文本(英文)", - "colRealEv": "真实结算", + "colRealEv": "结算金额", + "colRealReward": "玩家实际中奖", "colTier": "所属档位", "colRemark": "备注", "placeholderTierSelect": "档位", @@ -53,7 +54,7 @@ "infoNoBigwin": "暂无 BIGWIN 档位配置,请先在「奖励索引」中设置 tier 为 BIGWIN", "btnRuleGenerate": "按规则生成", "ruleGenerateTitle": "按规则生成奖励索引", - "ruleGenerateRules": "【生成逻辑(与创建奖励对照一致)】\n• 盘面 26 格按 id 升序为位置 0~25;每条配置的 grid_number 为 5~30 且不重复。\n• 摇取点数 D(5~30):起点为「grid_number=D」所在格位的 id(即 start_index),顺时针落点位置 = (起点位置 + D) mod 26,逆时针落点 = 起点位置 − D(若小于 0 则 +26)。\n• 对照表每条记录的「色子点数」列为摇取点数 D;档位、真实结算、显示文案取自落点格位对应 id 的配置。\n\n【豹子摇取点数】\n摇取点数为 5、10、15、20、25、30 时,其顺/逆时针落点档位不能为 T4、T5(避免对照表上出现豹子点数 + 惩罚/再来一次)。\n\n【real_ev 与 tier】\nreal < −100 → T4;−100 < real < 0 → T3;0 < real < 100 → T2;100 < real < 500 → T1;T5「再来一次」real_ev=0。下方可为各档位填写统一的 real_ev 标准,生成时写入配置;细则可稍后在表格中再改。\n\n【本弹窗输入】\n条数:T1/T4/T5「固定」;T2「不少于」——顺时针与逆时针的加权条数(每条摇取结果计一次)须分别满足所填数值;T1、T4 与 T5 分开填写。\nreal_ev 标准:同档位各格使用同一数值。生成时 T1~T4 的 ui_text / ui_text_en 均为「100+真实结算」;T5 固定为「再来一次」/「Once again」。备注仍区分完美回本/小赚等。", + "ruleGenerateRules": "【生成逻辑(与创建奖励对照一致)】\n• 盘面 26 格按 id 升序为位置 0~25;每条配置的 grid_number 为 5~30 且不重复。\n• 摇取点数 D(5~30):起点为「grid_number=D」所在格位的 id(即 start_index),顺时针落点位置 = (起点位置 + D) mod 26,逆时针落点 = 起点位置 − D(若小于 0 则 +26)。\n• 对照表每条记录的「色子点数」列为摇取点数 D;档位、真实结算、显示文案取自落点格位对应 id 的配置。\n\n【豹子摇取点数】\n摇取点数为 5、10、15、20、25、30 时,其顺/逆时针落点档位不能为 T4、T5(避免对照表上出现豹子点数 + 惩罚/再来一次)。\n\n【结算金额 与 档位】\n结算金额 < 0 → T4;0 < 结算金额 < 100 → T3;100 < 结算金额 < 200 → T2;200 < 结算金额 → T1;T5「再来一次」结算金额=0。下方可为各档位填写统一的 结算金额 标准,生成时写入配置;细则可稍后在表格中再改。\n\n【本弹窗输入】\n条数:T1/T4/T5「固定」;T2「不少于」——顺时针与逆时针的加权条数(每条摇取结果计一次)须分别满足所填数值;T1、T4 与 T5 分开填写。\n结算金额 标准:同档位各格使用同一数值。生成时 T1~T4 的 显示文本 / 显示文本(英文) = 结算金额;T5 固定为「再来一次」/「Once again」。备注仍区分完美回本/小赚等。", "ruleGenT1Row": "T1 大奖", "ruleGenT2Row": "T2 小赚/回本", "ruleGenT3RealEvOnly": "T3 抽水", @@ -61,13 +62,13 @@ "ruleGenT5Row": "T5 再来一次", "ruleGenMinCount": "最少条数", "ruleGenFixedCount": "固定条数(顺/逆)", - "ruleGenRealEvStd": "real_ev 标准", + "ruleGenRealEvStd": "结算金额", "ruleGenRealEvEditHint": "生成并保存后,仍可在本页表格中逐条修改显示文案、英文、真实结算与备注。", - "ruleGenInvalidT1RealEv": "T1 的 real_ev 须满足:100 < 值 < 500", - "ruleGenInvalidT2RealEv": "T2 的 real_ev 须满足:0 < 值 < 100", - "ruleGenInvalidT3RealEv": "T3 的 real_ev 须满足:-100 < 值 < 0", - "ruleGenInvalidT4RealEv": "T4 的 real_ev 须满足:值 < -100", - "ruleGenInvalidT5RealEv": "T5「再来一次」的 real_ev 须为 0", + "ruleGenInvalidT1RealEv": "T1 的 结算金额 满足:200 < 值", + "ruleGenInvalidT2RealEv": "T2 的 结算金额 满足:100 < 值 < 200", + "ruleGenInvalidT3RealEv": "T3 的 结算金额 满足:0 < 值 < 100", + "ruleGenInvalidT4RealEv": "T4 的 结算金额 满足:值 < 0", + "ruleGenInvalidT5RealEv": "T5「再来一次」的 结算金额 须为 0", "ruleGenT1Min": "T1 固定条数(顺/逆)", "ruleGenT2Min": "T2 最少条数(顺/逆)", "ruleGenT4Max": "T4 固定条数(顺/逆)", diff --git a/saiadmin-artd/src/views/plugin/dice/reward_config/index/index.vue b/saiadmin-artd/src/views/plugin/dice/reward_config/index/index.vue index 5bd08a3..d923fcd 100644 --- a/saiadmin-artd/src/views/plugin/dice/reward_config/index/index.vue +++ b/saiadmin-artd/src/views/plugin/dice/reward_config/index/index.vue @@ -78,12 +78,18 @@ + + +