页面、动作与生命周期
UiPage.key() 是逻辑页面 ID,UiPage.template() 是主题选择 ID。原版 menus 配置按逻辑 ID,IA pages 按模板 ID。
以下清单覆盖通用流程与专题页面。标记“同名”的页面使用自己的页面 ID 作为模板;呈现器始终以当前快照和已登记动作为准。
市场与发布
发布编辑器的模板依步骤为
wizard-type、wizard-item、wizard-terms(收购)、wizard-sale-terms(出售)、wizard-auction-terms(拍卖);最后确认使用 wizard-confirm。
输入与条件
资产与管理
v1.1 新增页面
以下专题页面的模板 ID 与页面 ID 相同,继续使用同一menus、快照和动作机制。页键、模板与按钮位置不能根据显示文字猜测。
整包、批量与容器
单品、混合整包和多个独立订单必须分别展示。未发布批量计划只在当前会话保存,不承诺重启后自动继续。
领取来源与本页确认
原
assets 页使用源 46 分类、50 全选/取消本页、51 领取所选、52 详情;源 0..35 勾选本页资产。确认只处理本页最多36项,空间不足项保留,结果未知、会话变化或离线时停止后续项。
业务物品规则
每次修改先验证独立候选再更新草稿。字段只来自
items.exposed-fields;OR 与 EXACT 提示只读,主题不能添加任意脚本或修改真实匹配值。
社区、通知与卖家
聊天通知不会自动标为已读。卖家使用1/7/30个UTC日历日;公开价格使用滚动24小时/7天/30天,不混写这两种窗口。
价格与风险复核
公开价格需要浏览权限,其余风险页需要审计权限;状态、训练和云端写入另需管理权限。案件状态不处罚玩家,进行中或未知请求不能通过主题重复发送。
自动化与收益预约
关闭未来收益提现不会自动释放已有预约。正在外部执行和未知项不同于普通可用余额,主题必须保留服务端状态与暂停说明。
管理写入工具
工具使用真实已有资金和物品;导出保留只处理本网络生成的过期导出,不删除金融记录或未解决操作。
完整源槽位参考
按页面逐项查看真实源槽位、列表移位与功能配置示例。
menus 使用源槽位,SDK 和 IA slot-icons 使用最终物理槽位;默认列表移位不能重复应用。没有登记动作的格子仅显示信息,不可从主题中创建交易回调。
首页与个人中心槽位
默认紧凑首页的原始槽位为0 头像、4 提示、8 领取、20/22/24 三类交易、31 发布/编辑草稿、45 钱包、53 我的挂单。
profile 使用 20 界面偏好、22 待核对、24 历史、29 社区、31 管理、33 自动化、35 风险与 49 返回;管理/风险入口随权限显示。待核对列表复用 history 页面。
market.enabled-types 关闭的类型在首页和发布流程隐藏,源槽位不重排。主题只能呈现已登记的可用动作,不能重新启用模式。
首页布局可通过 gui.home-layout: auto|compact|legacy 选择;已有 menus.home 在 auto 下保留旧首页,迁移规则见原版 GUI 个性化。
呈现器应读取当前快照和动作,不假设所有首页都使用同一组槽位。
数量、金额与结果
数量最大值按实际钱包、可用背包物品、策略及币种限额计算。基础主手单品拍卖取当前物品堆;多槽位发布读取明确选择的完整单品、混合整包或各独立组。充值和提现使用真实余额及可预查的后端容量。 报价变化会要求重新选择,最终提交仍重新校验,主题不得自行放宽上限。 收据提供独立的“查看/复制操作编号”动作,在聊天中显示完整编号和复制入口;摘要保持简短,inspect 与只读 API 仍保留编号。
交易展示
单品一口价按每件单价部分购买,每单最低购买量默认1,可在发布时设为1至发布数量;余量不足最低量时只能买完全部余量。收购按单价分批供货,单品与整包竞拍起价均为整标总价。整包出售也是整个组合总价,不可拆分;批量出售仍是多个独立的单价订单。 主题直接使用服务端金额、输入范围、发布时费用快照与商品说明。数量、总量与已成交量独立展示,保留真实物品属性;整包同时区分标的份数、条目数与实际物品总量。 商品时间和倒计时只反映当前展示,不替代数据库截止校验。领取仍遵守物品自身堆叠上限,空间不足时留在领取箱。 整包confirm 源 30 确认、32 取消;领取、自动化和管理确认源 30 取消、32 确认;risk-cloud-confirm 源 30 发送、32 取消。按本页动作令牌处理,不能统一猜测某个槽位永远表示确认。
动作与输入
动作清单以当前page.actions() 的槽位→不透明令牌为准。没有令牌的格子只展示信息;不得自己制造动作字符串,或将上一页面的令牌复用到新页。
每次打开或更新都替换页面身份、令牌与回调。
输入通过 UiCallbacks.input(raw),关闭通过 closed();prompt() 返回 false 时主插件继续使用聊天输入并保留草稿。
提供者生命周期
服务可能在数据库初始化后才注册。获取为空时监听
ServiceRegisterEvent,服务替换时丢弃旧句柄与页面;所属插件停用时注销,主插件会按会话保护回退。
不要在 Folia 全局线程读写玩家库存,示例不声明 Folia 认证。
Java 呈现器开发
提供者注册、页面更新、同页刷新与资源状态检查。