Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 05853884de | |||
| 5ea4c7461f | |||
| 648898966e | |||
| 153439abfc | |||
| b4b296ea9b | |||
| b1ea5bb682 | |||
| 2e9b0637c4 | |||
| 6b000ceba9 |
Vendored
+2
-3
@@ -17,7 +17,6 @@
|
||||
"storageText": "{\"nbt\": \"${1:NBT}\", \"interpret\": true, \"storage\": \"${2:A namespaced ID}\"}",
|
||||
"ifInstalled": "execute if data storage fzsd:installed fzsd.module{${1:module_name}:1b} run ${tellraw}"
|
||||
},
|
||||
"datapack.env.cmdVersion": "1.19",
|
||||
"datapack.env.jsonVersion": "1.19",
|
||||
"datapack.env.dataVersion": "1.19"
|
||||
"datapack.env.cmdVersion": "1.20",
|
||||
"datapack.env.dataVersion": "1.20"
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
|
||||
FZSD许可协议
|
||||
|
||||
2022/11/19 https://gitee.com/harvey-husky/fz-survival-datapack/blob/dev/3.0/LICENSE
|
||||
2023/6/6 https://gitee.com/harvey-husky/fz-survival-datapack/blob/dev/3.0/LICENSE
|
||||
|
||||
版权所有 © 2019-2022 延皓<https://gitee.com/harvey-husky><https://space.bilibili.com/677233356>
|
||||
版权所有 © 2019-2023 延皓<https://gitee.com/harvey-husky><https://space.bilibili.com/677233356>
|
||||
|
||||
定义:
|
||||
“该许可协议”指FZSD许可协议。
|
||||
|
||||
@@ -4,13 +4,14 @@
|
||||
|
||||
#### @Author: Harvey_Husky
|
||||
|
||||
#### Copyright (C) 2019-2022 Harvey_Husky
|
||||
#### Copyright (C) 2019-2023 Harvey_Husky
|
||||
|
||||
[Bilibili专栏](https://www.bilibili.com/read/cv4267319)(年久失修)
|
||||
|
||||
## 安装教程
|
||||
|
||||
1. 兼容性
|
||||
- `数据包 v3.1.x` 支持 `Minecraft 1.20.x`
|
||||
- `数据包 v3.0.x` 支持 `Minecraft 1.18.2-1.19.x`
|
||||
- `数据包 v2.2.x` 支持 `Minecraft 1.19.x`
|
||||
- `数据包 v2.1.x` 支持 `Minecraft 1.17.x-1.18.x`
|
||||
@@ -23,9 +24,9 @@
|
||||
7. 执行 `reload` 指令(或重新打开存档;在一些第三方服务端中可能需要改为`/minecraft:reload`)
|
||||
|
||||
|
||||
# FZ生存数据包 3.0
|
||||
# FZ生存数据包 3.1
|
||||
|
||||
[](https://gitee.com/harvey-husky/FZ-sDatapack/releases) [](https://minecraft.net/)
|
||||
[](https://gitee.com/harvey-husky/FZ-sDatapack/releases) [](https://minecraft.net/)
|
||||
|
||||
> 其他版本见[发行页面](https://gitee.com/harvey-husky/FZ-sDatapack/releases)
|
||||
|
||||
@@ -66,7 +67,7 @@
|
||||
- 需要安装 [Carpet Mod](https://github.com/gnembon/fabric-carpet/releases)
|
||||
- 从数据包 `zip` 文件的 `scripts` 目录中解压 `.sc` 文件,将其放入 `world/scripts` 中(在客户端位于 `.minecraft/saves/<存档名>/scripts` )
|
||||
- 脚本:
|
||||
- `fzsd_score.sc`(**开发中!此处列举目前已完成的**):
|
||||
- `fzsd_score.sc`:
|
||||
- 可避免Carpet假人污染计分板
|
||||
- 可以标记哪些玩家是假人
|
||||
- *注:请不要使用为假人名添加“bot”前缀的carpet扩展,本插件不支持此类假人!*
|
||||
|
||||
@@ -33,3 +33,6 @@ tellraw @s [{"text": "上一出生点:"}, [{"text": "", "color": "dark_gray"},
|
||||
|
||||
|
||||
tellraw @s [{"text": "计分板:"}, [{"text": "", "color": "dark_gray"}, [{"text": "[", "clickEvent": {"action": "run_command", "value": "/function #fzsd:module/scoreboard/install"}, "hoverEvent": {"action": "show_text", "contents": {"text": "安装", "color": "dark_green"}}}, {"text": "安装", "color": "dark_green"}, {"text": "]"}], [{"text": "[", "clickEvent": {"action": "run_command", "value": "/function #fzsd:module/scoreboard/uninstall"}, "hoverEvent": {"action": "show_text", "contents": {"text": "卸载", "color": "dark_red"}}}, {"text": "卸载", "color": "dark_red"}, {"text": "]"}]]]
|
||||
|
||||
|
||||
tellraw @s [{"text": "扫地机:"}, [{"text": "", "color": "dark_gray"}, [{"text": "[", "clickEvent": {"action": "run_command", "value": "/function #fzsd:module/sweeper/install"}, "hoverEvent": {"action": "show_text", "contents": {"text": "安装", "color": "dark_green"}}}, {"text": "安装", "color": "dark_green"}, {"text": "]"}], [{"text": "[", "clickEvent": {"action": "run_command", "value": "/function #fzsd:module/sweeper/uninstall"}, "hoverEvent": {"action": "show_text", "contents": {"text": "卸载", "color": "dark_red"}}}, {"text": "卸载", "color": "dark_red"}, {"text": "]"}]]]
|
||||
@@ -4,7 +4,7 @@
|
||||
"on_placed_block": {
|
||||
"trigger": "minecraft:placed_block",
|
||||
"conditions": {
|
||||
"player": [
|
||||
"location": [
|
||||
{
|
||||
"condition": "minecraft:reference",
|
||||
"name": "fzsd:is_real_player"
|
||||
|
||||
@@ -4,10 +4,24 @@
|
||||
"on_placed_liquid": {
|
||||
"trigger": "minecraft:placed_block",
|
||||
"conditions": {
|
||||
"item": {
|
||||
"tag": "fzsd:bucket_of_liquid"
|
||||
}
|
||||
"location": [
|
||||
{
|
||||
"condition": "minecraft:reference",
|
||||
"name": "fzsd:is_real_player"
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:location_check",
|
||||
"predicate": {
|
||||
"block": {
|
||||
"tag": "fzsd:liquid"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"rewards": {
|
||||
"function": "fzsd:game_event/advancement/on_placed_block/on_placed_liquid"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"parent": "fzsd:game_event/on_placed_block",
|
||||
"criteria": {
|
||||
"on_placed_solid": {
|
||||
"trigger": "minecraft:placed_block",
|
||||
"conditions": {
|
||||
"location": [
|
||||
{
|
||||
"condition": "minecraft:reference",
|
||||
"name": "fzsd:is_real_player"
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:inverted",
|
||||
"term":
|
||||
{
|
||||
"condition": "minecraft:location_check",
|
||||
"predicate": {
|
||||
"block": {
|
||||
"tag": "fzsd:liquid"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"rewards": {
|
||||
"function": "fzsd:game_event/advancement/on_placed_block/on_placed_solid"
|
||||
}
|
||||
}
|
||||
@@ -4,21 +4,27 @@
|
||||
"on_tools_exclude_axes_used_on_block": {
|
||||
"trigger": "minecraft:item_used_on_block",
|
||||
"conditions": {
|
||||
"player": [
|
||||
"location": [
|
||||
{
|
||||
"condition": "minecraft:reference",
|
||||
"name": "fzsd:is_real_player"
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"tag": "fzsd:tool/axes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:location_check",
|
||||
"predicate": {
|
||||
"__comment": "斧子剥树皮会触发两次,所以用目标方块限定只触发一次",
|
||||
"block": {
|
||||
"tag": "fzsd:stripped_blocks"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"item": {
|
||||
"tag": "fzsd:tool/axes"
|
||||
},
|
||||
"location": {
|
||||
"__comment": "斧子剥树皮会触发两次,所以用目标方块限定只触发一次",
|
||||
"block": {
|
||||
"tag": "fzsd:stripped_blocks"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -5,15 +5,18 @@
|
||||
"__comment": "斧子剥树皮会触发两次!",
|
||||
"trigger": "minecraft:item_used_on_block",
|
||||
"conditions": {
|
||||
"player": [
|
||||
"location": [
|
||||
{
|
||||
"condition": "minecraft:reference",
|
||||
"name": "fzsd:is_real_player"
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"tag": "fzsd:tools_exclude_axes"
|
||||
}
|
||||
}
|
||||
],
|
||||
"item": {
|
||||
"tag": "fzsd:tools_exclude_axes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -16,18 +16,11 @@
|
||||
"flags": {
|
||||
"is_sneaking": false
|
||||
},
|
||||
"__comment_type_specific": "1.19+",
|
||||
"type_specific": {
|
||||
"type": "player",
|
||||
"advancements": {
|
||||
"fzsd:game_event/on_sneak": true
|
||||
}
|
||||
},
|
||||
"__comment_player": "1.18 compat",
|
||||
"player": {
|
||||
"advancements": {
|
||||
"fzsd:game_event/on_sneak": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"name": "fzsd:is_real_player"
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:alternative",
|
||||
"condition": "minecraft:any_of",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:entity_scores",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
execute store success storage fzsd:version fzsd.need_update int 1 run data merge storage fzsd:version {fzsd: {version: '3.0.7'}}
|
||||
execute store success storage fzsd:version fzsd.need_update int 1 run data merge storage fzsd:version {fzsd: {version: '3.1.0.rc.1'}}
|
||||
execute if data storage fzsd:version fzsd{need_update: 1} run function fzsd:system/update
|
||||
function fzsd:system/carpet/try_load_fzsd_score
|
||||
function #fzsd:load
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
# 调用者:advancements/fzsd:~
|
||||
|
||||
## 运行事件
|
||||
execute if entity @s[advancements={fzsd:game_event/on_placed_block/on_placed_liquid=true}] run function #fzsd:game_event/player/on_placed_liquid
|
||||
execute if entity @s[advancements={fzsd:game_event/on_placed_block/on_placed_liquid=false}] run function #fzsd:game_event/player/on_placed_solid
|
||||
function #fzsd:game_event/player/on_placed_block
|
||||
|
||||
## 重置事件进度
|
||||
advancement revoke @s from fzsd:game_event/on_placed_block
|
||||
advancement revoke @s from fzsd:game_event/on_placed_block/on_placed_liquid
|
||||
@@ -0,0 +1,6 @@
|
||||
# 调用者:advancements/fzsd:~
|
||||
|
||||
function #fzsd:game_event/player/on_placed_liquid
|
||||
|
||||
## 重置事件进度
|
||||
advancement revoke @s from fzsd:game_event/on_placed_block/on_placed_liquid
|
||||
@@ -0,0 +1,6 @@
|
||||
# 调用者:advancements/fzsd:~
|
||||
|
||||
function #fzsd:game_event/player/on_placed_solid
|
||||
|
||||
## 重置事件进度
|
||||
advancement revoke @s from fzsd:game_event/on_placed_block/on_placed_solid
|
||||
@@ -1,2 +1,2 @@
|
||||
## 调试
|
||||
execute if score fzsd.logger.level fzsd.variable.integer matches ..400 run tellraw @a [{"nbt": "fzsd.level.debug", "interpret": true, "storage": "fzsd:logger"}, {"text": "事件已触发:玩家"}, {"selector": "@s"}, {"text": "放置了实体方块"}]
|
||||
execute if score fzsd.logger.level fzsd.variable.integer matches ..400 run tellraw @a [{"nbt": "fzsd.level.debug", "interpret": true, "storage": "fzsd:logger"}, {"text": "事件已触发:玩家"}, {"selector": "@s"}, {"text": "放置了方块"}]
|
||||
@@ -1 +1 @@
|
||||
execute if data storage fzsd:installed fzsd.module{join_message:1b} run function #fzsd:module/join_message/send_message
|
||||
execute if data storage fzsd:install fzsd.module{join_message:1b} run function #fzsd:module/join_message/send_message
|
||||
+6
-1
@@ -1,13 +1,18 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.activation
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.activation", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.activation
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.activation
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.aviating_distance
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.aviating_distance", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.aviating_distance
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.aviating_distance
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.damage_taken
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.damage_taken", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.damage_taken
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.damage_taken
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.death_count
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.death_count", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.death_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.death_count
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.dig_count
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.dig_count", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.dig_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.dig_count
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.fishing_count
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.fishing_count", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.fishing_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.fishing_count
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.general
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.general", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.general
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.general
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.kill_count
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.kill_count", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.kill_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.kill_count
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.placement_count
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.placement_count", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.placement_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.placement_count
|
||||
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
# 调用者:fzsd:module/scoreboard/carousel/try_display/~
|
||||
|
||||
## 判断颜色代码,见:https://minecraft.fandom.com/zh/wiki/%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%BB%A3%E7%A0%81
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.trade_count
|
||||
### 默认值金色放到第一位
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 if score fzsd.logger.level fzsd.variable.integer matches ..300 run tellraw @a [{"nbt": "fzsd.level.fine", "interpret": true, "storage": "fzsd:logger"}, {"text": "已为队伍"}, {"nbt": "fzsd.scoreboard.text.carousel", "interpret": true, "storage": "fzsd:module"}, {"text": "显示"}, {"nbt": "fzsd.scoreboard.text.trade_count", "interpret": true, "storage": "fzsd:module"}, {"text": "计分板"}]
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run return 6
|
||||
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 0 run scoreboard objectives setdisplay sidebar.team.black fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 1 run scoreboard objectives setdisplay sidebar.team.dark_blue fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 2 run scoreboard objectives setdisplay sidebar.team.dark_green fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 3 run scoreboard objectives setdisplay sidebar.team.dark_aqua fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 4 run scoreboard objectives setdisplay sidebar.team.dark_red fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 5 run scoreboard objectives setdisplay sidebar.team.dark_purple fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 6 run scoreboard objectives setdisplay sidebar.team.gold fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 7 run scoreboard objectives setdisplay sidebar.team.gray fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 8 run scoreboard objectives setdisplay sidebar.team.dark_gray fzsd.module.scoreboard.display.trade_count
|
||||
execute if score fzsd.module.scoreboard.carousel.color fzsd.variable.integer matches 9 run scoreboard objectives setdisplay sidebar.team.blue fzsd.module.scoreboard.display.trade_count
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"condition": "minecraft:alternative",
|
||||
"condition": "minecraft:any_of",
|
||||
"terms": [
|
||||
{
|
||||
"__comment": "主手==斧子",
|
||||
@@ -15,11 +15,11 @@
|
||||
},
|
||||
{
|
||||
"__comment": "主手!=工具&&副手==斧子",
|
||||
"condition": "minecraft:inverted",
|
||||
"term": {
|
||||
"condition": "minecraft:alternative",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:all_of",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:inverted",
|
||||
"term": {
|
||||
"condition": "minecraft:entity_properties",
|
||||
"entity": "this",
|
||||
"predicate": {
|
||||
@@ -29,23 +29,20 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:inverted",
|
||||
"term": {
|
||||
"condition": "minecraft:entity_properties",
|
||||
"entity": "this",
|
||||
"predicate": {
|
||||
"equipment": {
|
||||
"offhand": {
|
||||
"tag": "fzsd:tool/axes"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:entity_properties",
|
||||
"entity": "this",
|
||||
"predicate": {
|
||||
"equipment": {
|
||||
"offhand": {
|
||||
"tag": "fzsd:tool/axes"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"condition": "minecraft:alternative",
|
||||
"condition": "minecraft:any_of",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:reference",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"condition": "minecraft:alternative",
|
||||
"condition": "minecraft:any_of",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:entity_scores",
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"replace": false,
|
||||
"values": [
|
||||
"minecraft:water",
|
||||
"minecraft:lava"
|
||||
]
|
||||
}
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"pack": {
|
||||
"description": "FZ Survival Datapack 3.0 | Author: Harvey_Husky",
|
||||
"pack_format": 10
|
||||
"description": "FZ Survival Datapack 3.1 | Author: Harvey_Husky",
|
||||
"pack_format": 15
|
||||
}
|
||||
}
|
||||
+51
-59
@@ -19,41 +19,11 @@ require_not_null(value) -> (
|
||||
);
|
||||
|
||||
require_version(requirement) -> (
|
||||
req_0 = slice(requirement, 0, 1);
|
||||
req_1 = slice(requirement, 1, 2);
|
||||
if(req_0 == '>',
|
||||
if(req_1 == '=',
|
||||
req_ver = split('>=|\\.', requirement);
|
||||
print(player('all'), req_ver);
|
||||
cur_ver = split('\\.', global_carpet_version);
|
||||
return(number(req_ver:1) >= number(cur_ver:0)
|
||||
&& number(req_ver:2) >= number(cur_ver:1)
|
||||
&& number(req_ver:3) >= number(cur_ver:2));
|
||||
);
|
||||
req_ver = split('>|\\.', requirement);
|
||||
print(player('all'), req_ver);
|
||||
cur_ver = split('\\.', global_carpet_version);
|
||||
return(number(req_ver:1) > number(cur_ver:0)
|
||||
&& number(req_ver:2) > number(cur_ver:1)
|
||||
&& number(req_ver:3) > number(cur_ver:2));
|
||||
);
|
||||
if(req_0 == '<',
|
||||
if(req_1 == '=',
|
||||
req_ver = split('<=|\\.', requirement);
|
||||
print(player('all'), req_ver);
|
||||
cur_ver = split('\\.', global_carpet_version);
|
||||
return(number(req_ver:1) <= number(cur_ver:0)
|
||||
&& number(req_ver:2) <= number(cur_ver:1)
|
||||
&& number(req_ver:3) <= number(cur_ver:2));
|
||||
);
|
||||
req_ver = split('<|\\.', requirement);
|
||||
print(player('all'), req_ver);
|
||||
cur_ver = split('\\.', global_carpet_version);
|
||||
return(number(req_ver:1) < number(cur_ver:0)
|
||||
&& number(req_ver:2) < number(cur_ver:1)
|
||||
&& number(req_ver:3) < number(cur_ver:2));
|
||||
);
|
||||
return(false);
|
||||
req_ver = split('\\.', requirement);
|
||||
cur_ver = split('\\.', global_carpet_version);
|
||||
return(number(cur_ver:0) >= number(req_ver:0)
|
||||
&& number(cur_ver:1) >= number(req_ver:1)
|
||||
&& number(cur_ver:2) >= number(req_ver:2));
|
||||
);
|
||||
|
||||
//** 主要逻辑 **//
|
||||
@@ -73,6 +43,7 @@ global_current_scoreboard_list = [
|
||||
'fzsd.module.scoreboard.display.aviating_distance',
|
||||
'fzsd.module.scoreboard.display.placement_count'
|
||||
];
|
||||
global_server_whitelist_cache = null;
|
||||
|
||||
__config() -> {
|
||||
'scope' -> 'global',
|
||||
@@ -145,22 +116,7 @@ __config() -> {
|
||||
};
|
||||
|
||||
__on_start() -> (
|
||||
// 读取配置文件
|
||||
global_config = read_file('config', 'json');
|
||||
if(global_config == null, // carpet 1.4.69 兼容
|
||||
global_config = {};
|
||||
);
|
||||
if(length(global_config) == 0, // 读取失败或不存在
|
||||
delete_file('config', 'json'); // 避免一些意外的问题
|
||||
global_config:'config_version' = '1.0.0'; // 占位用,无实际作用
|
||||
if(require_version('>=1.99.99'), // 等待新功能支持
|
||||
global_config:'allow_spawn_whitelist_player' = false;
|
||||
write_file('config', 'json', global_config);
|
||||
,
|
||||
// else
|
||||
write_file('config', 'json', global_config);
|
||||
);
|
||||
);
|
||||
reload_configs();
|
||||
global_team_cache = read_file('team_cache', 'json');
|
||||
if(global_team_cache == null, // carpet 1.4.69 兼容
|
||||
global_team_cache = {};
|
||||
@@ -173,12 +129,14 @@ __on_close() -> (
|
||||
write_file('team_cache', 'json', global_team_cache);
|
||||
);
|
||||
|
||||
if(require_version('>=1.99.99'), // 等待新功能支持
|
||||
__on_player_command(player, message) -> (
|
||||
print(player('all'), 'command!');
|
||||
if(length(message) > 7
|
||||
&& slice(message, 0, 7) == '/player'
|
||||
&& !(global_config:'allow_spawn_whitelist_player'),
|
||||
if(require_version('1.4.112'), // 新功能支持
|
||||
__on_player_command(player, command) -> (
|
||||
l = length(command);
|
||||
if(l > 13
|
||||
&& slice(command, 0, 6) == 'player'
|
||||
&& slice(command, l - 5, l) == 'spawn'
|
||||
&& !(global_config:'allow_spawn_whitelist_player')
|
||||
&& contains(get_server_whitelist(), slice(command, 7, l - 6)),
|
||||
return('cancel');
|
||||
);
|
||||
);
|
||||
@@ -186,11 +144,11 @@ if(require_version('>=1.99.99'), // 等待新功能支持
|
||||
|
||||
__on_player_connects(player) -> (
|
||||
player_type = player ~ 'player_type';
|
||||
player_team = player ~ 'team';
|
||||
player_name = player ~ 'name';
|
||||
if(player_type == 'fake',
|
||||
(
|
||||
player_team = player ~ 'team';
|
||||
if(player_team != 'fzsd.module.scoreboard.fake',
|
||||
player_name = player ~ 'name';
|
||||
global_team_cache:player_name = player_team;
|
||||
);
|
||||
team_add('fzsd.module.scoreboard.fake', player);
|
||||
@@ -198,7 +156,9 @@ __on_player_connects(player) -> (
|
||||
),
|
||||
player_type == 'shadow',
|
||||
(
|
||||
player_team = player ~ 'team';
|
||||
if(player_team != 'fzsd.module.scoreboard.shadow',
|
||||
player_name = player ~ 'name';
|
||||
global_team_cache:player_name = player_team;
|
||||
);
|
||||
team_add('fzsd.module.scoreboard.shadow', player);
|
||||
@@ -222,6 +182,38 @@ __on_player_disconnects(player, reason) -> (
|
||||
try_restore_team_from_cache(player);
|
||||
);
|
||||
|
||||
// 获取服务器白名单
|
||||
get_server_whitelist() -> (
|
||||
if(global_server_whitelist_cache == null,
|
||||
global_server_whitelist_cache = keys(system_info('server_whitelist'));
|
||||
);
|
||||
return(global_server_whitelist_cache);
|
||||
);
|
||||
|
||||
// 重载配置文件
|
||||
reload_configs() -> (
|
||||
// 读取配置文件
|
||||
global_config = read_file('config', 'json');
|
||||
if(global_config == null, // carpet 1.4.69 兼容
|
||||
global_config = {};
|
||||
);
|
||||
config_changed = false;
|
||||
// 读取失败或不存在
|
||||
if(length(global_config) == 0,
|
||||
global_config:'config_version' = '1.0.0'; // 占位用,无实际作用
|
||||
config_changed = true;
|
||||
);
|
||||
// 新功能支持
|
||||
if(require_version('1.4.112') && !contains(global_config, 'allow_spawn_whitelist_player'),
|
||||
global_config:'allow_spawn_whitelist_player' = false;
|
||||
config_changed = true;
|
||||
);
|
||||
if(config_changed == true,
|
||||
delete_file('config', 'json'); // 避免一些意外的问题
|
||||
write_file('config', 'json', global_config);
|
||||
);
|
||||
);
|
||||
|
||||
// 获取所有计分板下的所有玩家列表
|
||||
get_scoreboard_player_list() -> (
|
||||
set = m();
|
||||
|
||||
Reference in New Issue
Block a user