Skip to content

CoreLib 动作

EmakiLevel 启用后会向 CoreLib 动作注册表追加等级与经验操作动作。它们可用于其他模块的动作列表,例如烹饪完成、锻造结果、强化阶段、技能奖励或 CoreLib 动作模板。

本页只记录 EmakiLevel 注册的 CoreLib 动作;CoreLib 自带通用动作见 CoreLib 动作系统。当前 Action ID 只使用下表中的规范名,不再提供历史别名入口。

动作 ID

动作 ID操作是否需要 amount
emakileveladdexp增加经验
emakilevelsetexp设置经验
emakilevelremoveexp扣除经验
emakileveladdlevel增加等级
emakilevelsetlevel设置等级
emakilevelremovelevel扣除等级
emakilevelreset重置指定等级类型
emakilevellevelup手动升级指定等级类型

通用参数

reset / levelup 外,等级与经验操作都使用以下参数:

参数类型必填默认值说明
typeSTRING主等级类型等级类型 ID,例如 maincombatmining
amountSTRING经验或等级数量。支持纯数字,也可写 CoreLib 表达式。等级操作会四舍五入为整数。
targetSTRING当前玩家目标在线玩家名或 UUID。留空时使用动作上下文玩家。
reasonSTRINGaction操作原因,会进入等级服务的原因字段。
auto_upgradeBOOLEANtrueemakileveladdexp 有意义,是否允许自动升级。
silentBOOLEANfalse是否抑制可选输出。

emakilevelresetemakilevellevelup 只读取 typetargetreason,不读取 amountauto_upgradesilent

示例

yaml
actions:
  # 给当前玩家增加 50 点主等级经验
  - 'emakileveladdexp type=main amount=50 reason=forge_reward'

  # 给当前玩家增加 1 级战斗等级
  - 'emakileveladdlevel type=combat amount=1 reason=boss_reward'

  # 给指定玩家设置挖矿经验
  - 'emakilevelsetexp target=PlayerName type=mining amount=200 reason=admin_adjust'

  # 重置主等级类型
  - 'emakilevelreset type=main target=PlayerName reason=admin_reset'

  # 按等级系统执行一次手动升级
  - 'emakilevellevelup type=main target=PlayerName reason=quest_reward'

使用提示

  • target 为空时必须存在玩家上下文;控制台或无玩家上下文动作链中请填写在线玩家名或 UUID。
  • amount 支持表达式时,会读取当前动作上下文中的数值型占位符和属性作为变量;无法解析的表达式会按 0 处理。
  • 等级操作(add/set/remove level)会将 amount 四舍五入为整数。