消息、表现与流程
消息类
消息.发送
- 用法:
消息.发送("文本") - 参数:消息文本,支持颜色符和占位符
- 返回值:无
text
消息.发送("&a你已经进入第一阶段")消息.广播
- 别名:
消息.全体 - 用法:
消息.广播("文本") - 参数:消息文本
- 返回值:无
text
消息.广播("&6Boss 房即将开启")文本里的占位符
消息类动作会先替换一轮常用占位符。
常见能直接用的有:
{玩家}:当前执行这段脚本的玩家名{uuid}:当前执行玩家的 UUID{dungeon}:当前副本模板 ID{instance}:当前副本实例 ID{事件玩家}/{事件玩家名}:当前事件触发玩家名{事件玩家UUID}:当前事件触发玩家 UUID{变量名}:如果当前副本里存在同名副本变量,也会直接替换
这里最容易写错的是 玩家 和 事件玩家。
{玩家}看的是当前执行上下文里的玩家{事件玩家}看的是触发事件的那个玩家
当前只有 玩家加入、玩家离开、玩家死亡 这三个事件会带 事件玩家。
例如在 脚本 里:
yaml
事件绑定:
玩家加入:
脚本: |
消息.广播("&e{玩家} &7加入了副本")如果你写在 玩家脚本 里,要改成:
yaml
事件绑定:
玩家加入:
玩家脚本: |
消息.发送("&e{事件玩家} &7加入了副本")因为这时候 {玩家} 指的是当前这一轮收到消息的人,不是加入的人。
消息.标题
- 用法:
消息.标题("标题", ["副标题"], [淡入], [停留], [淡出]) - 参数:标题、副标题、淡入 tick、停留 tick、淡出 tick
- 返回值:无
text
消息.标题("&c危险区域", "&7准备迎战", 10, 60, 20)标题.全体
- 用法:
标题.全体("标题", ["副标题"], [淡入], [停留], [淡出]) - 参数:标题、副标题、淡入 tick、停留 tick、淡出 tick
- 返回值:无
text
标题.全体("&4Boss 降临", "&f全队准备", 10, 70, 20)
音效.全体("ENDERDRAGON_GROWL", 1, 1)消息.动作栏
- 用法:
消息.动作栏("文本") - 参数:动作栏文本
- 返回值:无
text
消息.动作栏("&e当前积分: " + 玩家.读取变量("积分"))音效、粒子与药水
音效.播放
- 别名:
音效.发送 - 用法:
音效.播放("音效名", [音量], [音调]) - 参数:Bukkit 音效名、音量、音调
- 返回值:无
text
音效.播放("ENTITY_PLAYER_LEVELUP", 1, 1.2)音效.全体
- 用法:
音效.全体("音效名", [音量], [音调]) - 参数:Bukkit 音效名、音量、音调
- 返回值:无
text
音效.全体("BLOCK_ANVIL_LAND", 1, 0.8)
消息.广播("&c退路已经封死")粒子.播放
- 用法:
粒子.播放("粒子名", [数量], [dx], [dy], [dz]) - 参数:粒子名、数量、三个扩散值
- 返回值:无
text
粒子.播放("FLAME", 20, 0.4, 0.8, 0.4)效果.药水
- 用法:
效果.药水("效果名", [持续时间], [等级]) - 参数:药水效果名、持续时间 tick、等级
- 返回值:无
text
效果.药水("SLOWNESS", 200, 2)
消息.发送("&b寒潮压制了你的移动速度")命令与流程
命令.玩家
- 用法:
命令.玩家("命令") - 参数:玩家要执行的命令,带不带
/都可以 - 返回值:无
text
命令.玩家("spawn")命令.控制台
- 用法:
命令.控制台("命令") - 参数:控制台命令
- 返回值:无
text
命令.控制台("say " + 玩家名() + " 已经触发开场机关")如果你是在 玩家加入、玩家离开、玩家死亡 的 玩家脚本 里,想拿触发事件的人,记得改成:
text
命令.控制台("say " + 事件玩家名() + " 已经触发事件")流程.等待
- 用法:
流程.等待([tick]) - 参数:等待时长,默认
20 - 返回值:等待状态
text
消息.广播("&e10 秒后刷出第二波")
流程.等待(200)
怪物组.生成("第二波")流程.取消
- 用法:
流程.取消() - 参数:无
- 返回值:无
text
if 背包.检查("name:&6挑战门票", 1) == false {
消息.发送("&c你没有挑战门票")
流程.取消()
}