完善…模块

This commit is contained in:
延皓
2022-07-11 15:40:55 +08:00
parent 4a69d7d927
commit d85e07874f
49 changed files with 181 additions and 37 deletions
@@ -0,0 +1,21 @@
{
"criteria": {
"on_entered_nether_portal": {
"trigger": "minecraft:changed_dimension",
"conditions": {
"player": {
"location": {
"block": {
"blocks": [
"minecraft:nether_portal"
]
}
}
}
}
}
},
"rewards": {
"function": "fz:game_event/player/on_entered_nether_portal"
}
}
@@ -1,2 +0,0 @@
data modify storage fz:global fz.cache.dimension.id set from entity @s Dimension
data modify storage fz:global fz.cache.dimension.name set value '{"nbt": "fz.cache.dimension.id", "storage": "fz:global"}'
@@ -0,0 +1 @@
data modify storage fz:global fz.api.dimension.name set value '{"nbt": "fz.cache.dimension.id", "storage": "fz:global"}'
@@ -0,0 +1 @@
execute if data storage fz:global fz.api.dimension{id:'minecraft:overworld'} run data modify storage fz:global fz.api.dimension.name set value '{"text": "主世界", "color": "dark_green"}'
@@ -0,0 +1 @@
execute if data storage fz:global fz.api.dimension{id:'minecraft:the_end'} run data modify storage fz:global fz.api.dimension.name set value '{"text": "末地", "color": "dark_gray"}'
@@ -0,0 +1 @@
execute if data storage fz:global fz.api.dimension{id:'minecraft:the_nether'} run data modify storage fz:global fz.api.dimension.name set value '{"text": "下界", "color": "dark_red"}'
@@ -1 +0,0 @@
execute if data storage fz:global fz.cache.dimension{id:'minecraft:overworld'} run data modify storage fz:global fz.cache.dimension.name set value '{"text": "主世界", "color": "dark_green"}'
@@ -1 +0,0 @@
execute if data storage fz:global fz.cache.dimension{id:'minecraft:the_nether'} run data modify storage fz:global fz.cache.dimension.name set value '{"text": "下届", "color": "dark_red"}'
@@ -0,0 +1,2 @@
data modify storage fz:global fz.api.dimension.id set from entity @s Dimension
data remove storage fz:global fz.api.dimension.name
@@ -1,7 +1,7 @@
# 调用者:advancements/fz:~ # 调用者:advancements/fz:~
## ##
execute if score fz.logger.level fz.variable.integer matches ..400 run tellraw @a [{"nbt": "fz.level.fine", "interpret": true, "storage": "fz:logger"}, {"text": "事件已触发:玩家"}, {"selector": "@s"}, {"text": "飞行了1m"}] execute if score fz.logger.level fz.variable.integer matches ..300 run tellraw @a [{"nbt": "fz.level.fine", "interpret": true, "storage": "fz:logger"}, {"text": "事件已触发:玩家"}, {"selector": "@s"}, {"text": "飞行了1m"}]
## ##
scoreboard players operation fz.var.score fz.variable.integer = @s fz.event.aviating_distance scoreboard players operation fz.var.score fz.variable.integer = @s fz.event.aviating_distance
@@ -0,0 +1,6 @@
##
execute if score fz.logger.level fz.variable.integer matches ..400 run tellraw @a [{"nbt": "fz.level.debug", "interpret": true, "storage": "fz:logger"}, {"text": "事件已触发:玩家"}, {"selector": "@s"}, {"text": "进入了下届传送门"}]
function #fz:game_event/player/on_entered_nether_portal
advancement revoke @s only fz:game_event/on_entered_nether_portal
@@ -1,7 +1,7 @@
# 调用者:advancements/fz:~ # 调用者:advancements/fz:~
## ##
execute if score fz.logger.level fz.variable.integer matches ..400 run tellraw @a [{"nbt": "fz.level.fine", "interpret": true, "storage": "fz:logger"}, {"text": "事件已触发:玩家"}, {"selector": "@s"}, {"text": "使用了工具"}] execute if score fz.logger.level fz.variable.integer matches ..300 run tellraw @a [{"nbt": "fz.level.fine", "interpret": true, "storage": "fz:logger"}, {"text": "事件已触发:玩家"}, {"selector": "@s"}, {"text": "使用了工具"}]
## ##
function #fz:game_event/player/on_used_tool function #fz:game_event/player/on_used_tool
@@ -1,5 +1,6 @@
data modify storage fz:here fz.cache.nether_pos set value [0, 0] data modify storage fz:here fz.nether_pos set value [0, 0]
execute store result storage fz:here fz.cache.nether_pos[0] int 0.125 run data get entity @s Pos[0] execute store result storage fz:here fz.nether_pos[0] int 0.125 run data get entity @s Pos[0]
execute store result storage fz:here fz.cache.nether_pos[1] int 0.125 run data get entity @s Pos[2] execute store result storage fz:here fz.nether_pos[1] int 0.125 run data get entity @s Pos[2]
data modify storage fz:global fz.api.dimension.id set value "minecraft:the_nether"
data modify storage fz:here fz.cache.message[2] set value '[{"text": ",对应", "color": "white"}, {"text": "下届", "color": "dark_red"}, {"text": ""}, [{"text": "[", "color": "green"}, {"nbt": "fz.cache.nether_pos[0]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.cache.nether_pos[1]", "storage": "fz:here"}, {"text": "]"}]]' function #fz:api/get_dimension_name
data modify storage fz:here fz.message[2] set value '[{"text": ",对应", "color": "white"}, {"nbt": "fz.api.dimension.name", "interpret": true, "storage": "fz:global"}, [{"text": "[", "color": "green"}, {"nbt": "fz.nether_pos[0]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.nether_pos[1]", "storage": "fz:here"}, {"text": "]"}]]'
@@ -1,5 +1,6 @@
data modify storage fz:here fz.cache.overworld_pos set value [0, 0] data modify storage fz:here fz.overworld_pos set value [0, 0]
execute store result storage fz:here fz.cache.overworld_pos[0] int 8 run data get entity @s Pos[0] execute store result storage fz:here fz.overworld_pos[0] int 8 run data get entity @s Pos[0]
execute store result storage fz:here fz.cache.overworld_pos[1] int 8 run data get entity @s Pos[2] execute store result storage fz:here fz.overworld_pos[1] int 8 run data get entity @s Pos[2]
data modify storage fz:global fz.api.dimension.id set value "minecraft:overworld"
data modify storage fz:here fz.cache.message[2] set value '[{"text": ",对应", "color": "white"}, {"text": "主世界", "color": "dark_green"}, {"text": ""}, [{"text": "[", "color": "green"}, {"nbt": "fz.cache.overworld_pos[0]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.cache.overworld_pos[1]", "storage": "fz:here"}, {"text": "]"}]]' function #fz:api/get_dimension_name
data modify storage fz:here fz.message[2] set value '[{"text": ",对应", "color": "white"}, {"nbt": "fz.api.dimension.name", "interpret": true, "storage": "fz:global"}, [{"text": "[", "color": "green"}, {"nbt": "fz.overworld_pos[0]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.overworld_pos[1]", "storage": "fz:here"}, {"text": "]"}]]'
@@ -1 +1 @@
execute if data storage fz:global fz.cache.dimension{id:"minecraft:overworld"} run function fz:module/here/get_dimension_message/if_overworld execute if data storage fz:global fz.api.dimension{id:"minecraft:overworld"} run function fz:module/here/get_dimension_message/if_overworld
@@ -1 +1 @@
execute if data storage fz:global fz.cache.dimension{id:"minecraft:the_nether"} run function fz:module/here/get_dimension_message/if_the_nether execute if data storage fz:global fz.api.dimension{id:"minecraft:the_nether"} run function fz:module/here/get_dimension_message/if_the_nether
@@ -1,8 +1,10 @@
## fz.cache.pos已在install中初始化 ## fz.cache.pos已在install中初始化
execute store result storage fz:here fz.cache.pos[0] int 1 run data get entity @s Pos[0] execute store result storage fz:here fz.pos[0] int 1 run data get entity @s Pos[0]
execute store result storage fz:here fz.cache.pos[1] int 1 run data get entity @s Pos[1] execute store result storage fz:here fz.pos[1] int 1 run data get entity @s Pos[1]
execute store result storage fz:here fz.cache.pos[2] int 1 run data get entity @s Pos[2] execute store result storage fz:here fz.pos[2] int 1 run data get entity @s Pos[2]
data modify storage fz:here fz.cache.message set value ['{"nbt": "fz.cache.dimension.name", "interpret": true, "storage": "fz:global"}', '[{"text": "[", "color": "green"}, {"nbt": "fz.cache.pos[0]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.cache.pos[1]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.cache.pos[2]", "storage": "fz:here"}, {"text": "]"}]', ''] data modify storage fz:here fz.message[0] set from storage fz:global fz.api.dimension.name
data modify storage fz:here fz.message[1] set value '[{"text": "[", "color": "green"}, {"nbt": "fz.pos[0]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.pos[1]", "storage": "fz:here"}, {"text": ", "}, {"nbt": "fz.pos[2]", "storage": "fz:here"}, {"text": "]"}]'
data modify storage fz:here fz.message[2] set value ''
## ##
execute if score fz.logger.level fz.variable.integer matches ..400 run tellraw @a [{"nbt": "fz.level.debug", "interpret": true, "storage": "fz:logger"}, {"text": "玩家"}, {"selector": "@s"}, {"text": "获取了位置信息"}] execute if score fz.logger.level fz.variable.integer matches ..400 run tellraw @a [{"nbt": "fz.level.debug", "interpret": true, "storage": "fz:logger"}, {"text": "玩家"}, {"selector": "@s"}, {"text": "获取了位置信息"}]
@@ -1 +1 @@
tellraw @a [{"text": "", "color": "white"}, {"selector": "@s"}, {"text": "说:"}, {"text": "我在"}, {"nbt": "fz.cache.message[0]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.cache.message[1]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.cache.message[2]", "interpret": true, "storage": "fz:here"}] tellraw @a [{"text": "", "color": "white"}, {"selector": "@s"}, {"text": "说:"}, {"text": "我在"}, {"nbt": "fz.message[0]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.message[1]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.message[2]", "interpret": true, "storage": "fz:here"}]
@@ -1,4 +1,5 @@
data modify storage fz:here fz.cache.pos set value [0, 0, 0] data modify storage fz:here fz.pos set value [0, 0, 0]
data modify storage fz:here fz.message set value ['', '', '']
## ##
data modify storage fz:installed fz.module.here set value 1b data modify storage fz:installed fz.module.here set value 1b
@@ -1 +1 @@
tellraw @s [{"text": "你在", "color": "white"}, {"nbt": "fz.cache.message[0]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.cache.message[1]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.cache.message[2]", "interpret": true, "storage": "fz:here"}] tellraw @s [{"text": "你在", "color": "white"}, {"nbt": "fz.message[0]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.message[1]", "interpret": true, "storage": "fz:here"}, {"nbt": "fz.message[2]", "interpret": true, "storage": "fz:here"}]
@@ -1,5 +1,4 @@
data modify storage fz:global fz.cache.dimension.id set from entity @s LastDeathLocation.dimension data modify storage fz:global fz.api.dimension.id set from entity @s LastDeathLocation.dimension
data modify storage fz:global fz.cache.dimension.name set from entity @s LastDeathLocation.dimension
## fz.cache.pos已在install中初始化 ## fz.cache.pos已在install中初始化
execute store result storage fz:last_death fz.cache.pos[0] int 1 run data get entity @s LastDeathLocation.pos[0] execute store result storage fz:last_death fz.cache.pos[0] int 1 run data get entity @s LastDeathLocation.pos[0]
execute store result storage fz:last_death fz.cache.pos[1] int 1 run data get entity @s LastDeathLocation.pos[1] execute store result storage fz:last_death fz.cache.pos[1] int 1 run data get entity @s LastDeathLocation.pos[1]
@@ -1 +1 @@
tellraw @s [{"text": "上次死亡"}, {"nbt": "fz.cache.dimension.name", "interpret": true, "storage": "fz:global"}, [{"text": "[", "color": "green"}, {"nbt": "fz.cache.pos[0]", "storage": "fz:last_death"}, {"text": ", "}, {"nbt": "fz.cache.pos[1]", "storage": "fz:last_death"}, {"text": ", "}, {"nbt": "fz.cache.pos[2]", "storage": "fz:last_death"}, {"text": "]"}]] tellraw @s [{"text": "你上次死亡于"}, {"nbt": "fz.api.dimension.name", "interpret": true, "storage": "fz:global"}, [{"text": "[", "color": "green"}, {"nbt": "fz.cache.pos[0]", "storage": "fz:last_death"}, {"text": ", "}, {"nbt": "fz.cache.pos[1]", "storage": "fz:last_death"}, {"text": ", "}, {"nbt": "fz.cache.pos[2]", "storage": "fz:last_death"}, {"text": "]"}]]
@@ -0,0 +1,5 @@
execute if predicate fz:in_dimension_overworld run scoreboard players set @s fz.module.last_nether_portal.dimension 0
execute if predicate fz:in_dimension_the_nether run scoreboard players set @s fz.module.last_nether_portal.dimension -1
execute store result score @s fz.module.last_nether_portal.x run data get entity @s Pos[0]
execute store result score @s fz.module.last_nether_portal.y run data get entity @s Pos[1]
execute store result score @s fz.module.last_nether_portal.z run data get entity @s Pos[2]
@@ -0,0 +1,2 @@
execute if score @s fz.module.last_nether_portal.dimension matches 0 run data modify storage fz:global fz.api.dimension.id set value "minecraft:overworld"
execute if score @s fz.module.last_nether_portal.dimension matches -1 run data modify storage fz:global fz.api.dimension.id set value "minecraft:the_nether"
@@ -0,0 +1 @@
tellraw @a [{"selector": "@s"}, [{"text": "说:我上次穿出的下界传送门位于", "color": "white"}, {"nbt": "fz.message", "interpret": true, "storage": "fz:last_nether_portal"}]]
@@ -0,0 +1,5 @@
scoreboard objectives add fz.module.last_nether_portal.dimension dummy
scoreboard objectives add fz.module.last_nether_portal.x dummy
scoreboard objectives add fz.module.last_nether_portal.y dummy
scoreboard objectives add fz.module.last_nether_portal.z dummy
data modify storage fz:last_nether_portal fz.message set value '[{"nbt": "fz.api.dimension.name", "interpret": true, "storage": "fz:global"}, [{"text": "[", "color": "green"}, {"score": {"name": "@s", "objective": "fz.module.last_nether_portal.x"}}, {"text": ", "}, {"score": {"name": "@s", "objective": "fz.module.last_nether_portal.z"}}, {"text": ", "}, {"score": {"name": "@s", "objective": "fz.module.last_nether_portal.z"}}, {"text": "]"}]]'
@@ -0,0 +1 @@
tellraw @a [{"text": "你上次穿出的下界传送门位于"}, {"nbt": "fz.message", "interpret": true, "storage": "fz:last_nether_portal"}]
@@ -0,0 +1,4 @@
scoreboard objectives remove fz.module.last_nether_portal.x
scoreboard objectives remove fz.module.last_nether_portal.y
scoreboard objectives remove fz.module.last_nether_portal.z
data remove storage fz:last_nether_portal fz
@@ -44,7 +44,7 @@ scoreboard objectives add fz.module.scoreboard.display.kill_count dummy
team add fz.module.scoreboard.display.kill_count team add fz.module.scoreboard.display.kill_count
### ###
scoreboard objectives add fz.module.scoreboard.placement_count dummy scoreboard objectives add fz.module.scoreboard.display.placement_count dummy
team add fz.module.scoreboard.display.placement_count team add fz.module.scoreboard.display.placement_count
### ###
@@ -1,5 +1,5 @@
## ##
scoreboard objectives remove fz.variable.integer scoreboard objectives remove fz.variable.integer
## ##
data remove storage fz:config fz data remove storage fz:global fz
@@ -0,0 +1,9 @@
{
"condition": "minecraft:entity_properties",
"entity": "this",
"predicate": {
"location": {
"dimension": "minecraft:overworld"
}
}
}
@@ -0,0 +1,9 @@
{
"condition": "minecraft:entity_properties",
"entity": "this",
"predicate": {
"location": {
"dimension": "minecraft:the_nether"
}
}
}
@@ -1,7 +1,9 @@
{ {
"replace": false, "replace": false,
"values": [ "values": [
"fz:api/get_dimension_name/overworld", "fz:api/get_dimension_name/default",
"fz:api/get_dimension_name/the_nether" "#fz:api/get_dimension_name/minecraft/overworld",
"#fz:api/get_dimension_name/minecraft/the_end",
"#fz:api/get_dimension_name/minecraft/the_nether"
] ]
} }
@@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"fz:api/get_dimension_name/minecraft/overworld"
]
}
@@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"fz:api/get_dimension_name/minecraft/the_end"
]
}
@@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"fz:api/get_dimension_name/minecraft/the_nether"
]
}
@@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"fz:api/get_player_dimension"
]
}
@@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"#fz:module/last_nether_portal/event/on_entered_nether_portal"
]
}
@@ -2,7 +2,6 @@
"replace": false, "replace": false,
"values": [ "values": [
"fz:module/config/on_click", "fz:module/config/on_click",
"#fz:module/config/display", "#fz:module/scoreboard/config/on_click"
"fz:module/scoreboard/config/on_click"
] ]
} }
@@ -1,7 +1,8 @@
{ {
"replace": false, "replace": false,
"values": [ "values": [
"#fz:api/get_dimension", "#fz:api/get_player_dimension",
"#fz:api/get_dimension_name",
"fz:module/here/get_message", "fz:module/here/get_message",
"#fz:module/here/get_dimension_message" "#fz:module/here/get_dimension_message"
] ]
@@ -0,0 +1,8 @@
{
"replace": false,
"values": [
"#fz:api/get_player_dimension",
"#fz:api/get_dimension_name",
"fz:module/last_nether_portal/event/on_entered_nether_portal"
]
}
@@ -1,7 +1,7 @@
{ {
"replace": false, "replace": false,
"values": [ "values": [
"fz:api/get_dimension", "fz:module/last_nether_portal/get_message",
"#fz:api/get_dimension_name" "#fz:api/get_dimension_name"
] ]
} }
@@ -0,0 +1,7 @@
{
"replace": false,
"values": [
"#fz:module/last_nether_portal/get_message",
"fz:module/last_nether_portal/global_message"
]
}
@@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"fz:module/last_nether_portal/install"
]
}
@@ -0,0 +1,7 @@
{
"replace": false,
"values": [
"#fz:module/last_nether_portal/get_message",
"fz:module/last_nether_portal/private_message"
]
}
@@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"fz:module/last_nether_portal/uninstall"
]
}
@@ -0,0 +1,7 @@
{
"replace": false,
"values": [
"fz:module/scoreboard/config/on_click",
"#fz:module/config/display"
]
}
@@ -5,6 +5,7 @@
"#fz:module/health/install", "#fz:module/health/install",
"#fz:module/here/install", "#fz:module/here/install",
"#fz:module/last_death/install", "#fz:module/last_death/install",
"#fz:module/last_nether_portal/install",
"#fz:module/scoreboard/install" "#fz:module/scoreboard/install"
] ]
} }
@@ -5,6 +5,7 @@
"#fz:module/health/uninstall", "#fz:module/health/uninstall",
"#fz:module/here/uninstall", "#fz:module/here/uninstall",
"#fz:module/last_death/uninstall", "#fz:module/last_death/uninstall",
"#fz:module/last_nether_portal/uninstall",
"#fz:module/scoreboard/uninstall" "#fz:module/scoreboard/uninstall"
] ]
} }