原版服务器公告

By MCSugar_cane    2017/10/13

一个非常简单适用的服务器告示系统,适用版本为1.8-1.12

原版服务器公告

图片就介绍到这里,下面是思路以及代码部分~


整体思路:

利用"stat.leaveGame"准则来实现的一个小系统,当玩家离开服务器后,其分数会增加1,所以就可以通过检测其分数是否增加到一定值来输出相应指令。


创建变量:

  1. /scoreboard objectives add lg stat.leaveGame

高频执行:

  1. /scoreboard players add @a lg 0
  2. /execute @a[score_lg_min=0,score_lg=0] ~ ~ ~ tellraw @p [{"text":"╭──────────────────── < MCSC > ────────────────────╮\n\n","color":"gold","bold":true},{"text":" \u00a7a玩家: ","color":"green","bold":false},{"selector":"@p","color":"aqua","bold":"false"},{"text":"\n 欢迎来到Sur服务器,本服务器为无OP服,当前服务器为纯净服,当前搭载系统:\n\u00a7c僵尸加强 \u00a77By MCSugar_cane;\n\u00a72经验储存 \u00a77By MCSugar_cane;\u00a72超级雪人 \u00a77By MCSugar_cane","color":"gold","bold":false},{"text":"\n\n╰──────────────────── < MCSC > ────────────────────╯\n","color":"gold","bold":true}]
  3. /scoreboard players set @a[score_lg_min=0,score_lg=0] lg -1

因为stat.leaveGame只会在玩家退出游戏后才会被触发,使玩家lg分数增加1,所以这里为了识别第一次进入游戏的玩家,且不影响老玩家,我们将所有lg分数没有值的玩家的值变为0,其他玩家计分板不变(01)。进而通告lg为0的玩家后(02),再将lg为0的玩家的lg设置为-1(03),这样在退出游戏后,其lg会增加1而变为0,又重复上述过程。


欢迎加群交流划水:481528679