数学与随机
最大值
- 用法:
最大值(值1, 值2, ...) - 参数:1 个或更多数字
- 返回值:
double
text
本轮最高伤害 = 最大值(120, 185, 143)
if 本轮最高伤害 >= 180 {
消息.广播("&c有一波伤害已经超过 180")
}最小值
- 用法:
最小值(值1, 值2, ...) - 参数:1 个或更多数字
- 返回值:
double
text
最低贡献 = 最小值(玩家A输出, 玩家B输出, 玩家C输出)
日志("本场最低输出: " + 最低贡献)绝对值
- 用法:
绝对值(值) - 参数:1 个数字
- 返回值:
double
text
偏差 = 绝对值(Boss目标血量 - 当前Boss血量)
if 偏差 >= 500 {
消息.发送("&eBoss 血量已经偏离预期很多")
}向下取整
- 用法:
向下取整(值) - 参数:1 个数字
- 返回值:
long
text
整层奖励 = 向下取整(当前积分 / 3)
玩家.设置变量("奖励层数", 整层奖励)向上取整
- 用法:
向上取整(值) - 参数:1 个数字
- 返回值:
long
text
需要波次 = 向上取整(总怪物数 / 6)
副本.设置变量("预计波次", 需要波次)四舍五入
- 用法:
四舍五入(值, [小数位]) - 参数:数值;可选保留位数
- 返回值:不写小数位时是整数,写了以后是小数
text
当前倍率 = 四舍五入(1.236, 2)
消息.广播("&e当前难度倍率: " + 当前倍率)平方根
- 用法:
平方根(值) - 参数:1 个数字
- 返回值:
double
text
距离评分 = 平方根(玩家距离平方)
if 距离评分 >= 30 {
消息.发送("&7你已经离开核心战区")
}幂
- 用法:
幂(底数, 指数) - 参数:底数、指数
- 返回值:
double
text
爆发倍率 = 幂(1.15, 连击层数)
副本.设置变量("爆发倍率", 爆发倍率)随机整数
- 用法:
随机整数(最大值)或随机整数(最小值, 最大值) - 参数:1 个或 2 个整数
- 返回值:
int
text
下一波编号 = 随机整数(1, 4)
怪物组.生成("波次_" + 下一波编号)随机小数
- 用法:
随机小数(最大值)或随机小数(最小值, 最大值) - 参数:1 个或 2 个数字
- 返回值:
double
text
浮动倍率 = 随机小数(0.85, 1.15)
最终伤害 = 基础伤害 * 浮动倍率加权随机
- 用法:
加权随机(权重1, 值1, 权重2, 值2, ...) - 参数:成对写入,奇数位是权重,偶数位是结果
- 返回值:对应被抽中的值
text
品质 = 加权随机(70, "普通", 25, "稀有", 5, "史诗")
消息.广播("&6本轮掉落品质: " + 品质)