【游戏】
一、规则机制
一行定骨架:rank <= r.max then return r.items。榜单奖励随名次分段:第一名独享头衔,二到十同享礼盒,十一到百共领参与礼包。段表从高到低逐段记录奖励,查询按名次落入首个满足上限的段位取出预览;段表配置驱动,运营调奖励只改表,查询逻辑零改动。
二、错误写法
-- 错误:奖励口径各界面各写一套
if rank == 1 then
show("王者头衔")
elseif rank <= 10 then
show("荣耀礼盒")
end
三、正确写法
local REWARD = {
{max = 1, items = "王者头衔"},
{max = 10, items = "荣耀礼盒"},
{max = 100, items = "参与礼包"},
}
local function rewardAt(rank)
for _, r in ipairs(REWARD) do
if rank <= r.max then
return r.items
end
end
return REWARD[#REWARD].items
end
local label = panel:getChildByName("rwText")
label:setString(rewardAt(7))
四、边界处理
名次七落入礼盒段;边界名次含于段内;超尾名次回落最低档。
五、FAQ
问:段表能调吗?
答:能,纯配置驱动调段即生效。
问:边界名次归哪段?
答:含于段内,十名拿礼盒档。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
【游戏功能】 鹰眼印的加成判定就这一行: 印在伤害加三成,印消回原价——鹰眼破军的全部机制就这一行。可这一行的前后各有一个动…
【游戏功能】 裂空斩的飞行判定就这一行: 剑气每秒飞三百五十像素,横穿全屏幕——裂空斩的全部弹道就这一行。可这一行的画面是一…
【游戏功能】 碎石拳的命中判定就这一行: 石拳的飞行坐标随插值系数实时更新——碎石拳的全部物理就这一行。可这一行的前后各有一…
【游戏功能】 暗影束缚的缠绕判定就这一行: 暗影把狼怪的控制权关掉——束缚的全部本质就这一行。可这一行的外面,四条暗影触手从…
【游戏功能】 冰牙的突起判定就这一行: 三根冰牙从狼怪脚下等间距突起——冰牙突起的全部几何就这一行。可这一行的前面是"冻住一…
【游戏功能】 石雨的落点判定就这一行: 五块碎石各带递增的预警延迟——第一块零点八秒后落,第五块一点八秒后落,石雨的全部节奏…