• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

Difference between revisions of "ProtectionStones"

From Minecraft插件百科
Jump to: navigation, search
(创建本页)
(Tag: 段首空两格)
 
(整理格式)
(Tag: 段首空两格)
Line 9: Line 9:
 
|源地址    = https://dev.bukkit.org/projects/protectionstones
 
|源地址    = https://dev.bukkit.org/projects/protectionstones
 
}}
 
}}
 
 
== 简介 ==
 
== 简介 ==
 
ProtectionStones是一个功能强大,自定义性很强的领地插件<br />
 
ProtectionStones是一个功能强大,自定义性很强的领地插件<br />
Line 22: Line 21:
 
点击式更改权限,免除指令麻烦<br />
 
点击式更改权限,免除指令麻烦<br />
 
......
 
......
 
 
=== 原文 ===
 
=== 原文 ===
 +
<pre>
 
     Ever needed an easy, yet powerful way to prevent grief, and protect a certain area?
 
     Ever needed an easy, yet powerful way to prevent grief, and protect a certain area?
 
      
 
      
 
     This plugin allows players to protect land using a block that they place down. It creates a WorldGuard region at a set radius (configurable) around where the block is placed. The plugin also allows players to add and remove people to the region, as well as set flags (defined in the config).
 
     This plugin allows players to protect land using a block that they place down. It creates a WorldGuard region at a set radius (configurable) around where the block is placed. The plugin also allows players to add and remove people to the region, as well as set flags (defined in the config).
   
+
</pre>
 
== 前置要求 ==
 
== 前置要求 ==
 
{| class="wikitable"
 
{| class="wikitable"
Line 49: Line 48:
 
原文
 
原文
 
<pre>
 
<pre>
    To install ProtectionStones, make sure youhave the requirements above already installed. You can simply just add theplugin to the plugins folder, and it will generate the default configuration.
+
To install ProtectionStones, make sure youhave the requirements above already installed. You can simply just add theplugin to the plugins folder, and it will generate the default configuration.
   
+
 
    Adding new blocks:
+
Adding new blocks:
    To add new protection blocks, go intoplugins/ProtectionStones/blocks, and copy and paste the default block1.tomlfile and rename it (ex. block2.toml). Then, you have to change the"type" and "alias" fields in the new  block config, sincethere cannot be duplicates.
+
To add new protection blocks, go intoplugins/ProtectionStones/blocks, and copy and paste the default block1.tomlfile and rename it (ex. block2.toml). Then, you have to change the"type" and "alias" fields in the new  block config, sincethere cannot be duplicates.
   
+
 
    Configuring flags:
+
Configuring flags:
    Flags allow for customisation of regionbehaviour. ProtectionStones uses WorldGuard flags, meaning that WorldGuard isactually doing the protecting, not ProtectionStones. You can view the list ofWorldGuard flags here.
+
Flags allow for customisation of regionbehaviour. ProtectionStones uses WorldGuard flags, meaning that WorldGuard isactually doing the protecting, not ProtectionStones. You can view the list ofWorldGuard flags here.
   
+
 
    It is also possible to use other pluginsthat add flags to WorldGuard, such as WorldGuard Extra Flags and use them inProtectionStones.
+
It is also possible to use other pluginsthat add flags to WorldGuard, such as WorldGuard Extra Flags and use them inProtectionStones.
   
+
 
    Permissions:
+
Permissions:
    The permission list is on the wiki:https://github.com/espidev/ProtectionStones/wiki/Permissions. By default, nopermissions are given to players, so you have to add them explicitly. You canalso view the recommended  permissions to give for commands here.
+
The permission list is on the wiki:https://github.com/espidev/ProtectionStones/wiki/Permissions. By default, nopermissions are given to players, so you have to add them explicitly. You canalso view the recommended  permissions to give for commands here.
   
+
 
    Other Recommendations:
+
Other Recommendations:
    WorldGuard by default prevents hoppers fromgoing between regions. I recommend setting "ignore-hopper-item-move-events"in WorldGuard's config to false to fix this.
+
WorldGuard by default prevents hoppers fromgoing between regions. I recommend setting "ignore-hopper-item-move-events"in WorldGuard's config to false to fix this.
   
+
 
    If you want to protect against water andlava flow, you can set "high-frequency-flags" and"protect-against-liquid-flow" to true in WorldGuard's config.
+
If you want to protect against water andlava flow, you can set "high-frequency-flags" and"protect-against-liquid-flow" to true in WorldGuard's config.
   
+
 
    WorldGuard config: https://worldguard.readthedocs.io/en/latest/config/
+
WorldGuard config: https://worldguard.readthedocs.io/en/latest/config/
   
+
 
    Default Config Files:
+
Default Config Files:
    Wiki:https://github.com/espidev/ProtectionStones/wiki/Configuration
+
Wiki:https://github.com/espidev/ProtectionStones/wiki/Configuration
   
+
 
    Translated Versions of messages.yml:
+
Translated Versions of messages.yml:
    Interested in having the plugin messages ina different language? Users have contributed translated versions of themessages.yml file. Contact me if you want to supply a messages.yml file in adifferent language!
+
Interested in having the plugin messages ina different language? Users have contributed translated versions of themessages.yml file. Contact me if you want to supply a messages.yml file in adifferent language!
    https://github.com/espidev/ProtectionStones/wiki/Translated-messages.yml
+
https://github.com/espidev/ProtectionStones/wiki/Translated-messages.yml
 
</pre>
 
</pre>
 
== 指令大全 ==
 
== 指令大全 ==
 
=== 普通指令 ===
 
=== 普通指令 ===
指令 权限 描述
+
{| class="wikitable"
/ps get [block] protectionstones.get 获得一个保护石(扣除金币,需要设置)
+
|-
/ps give [block] [player] protectionstones.give 给与一个保护石(不扣除金币)
+
! 指令 !! 权限 !! 描述
/ps info members|owners|flags protectionstones.info 查看当前领地成员/所有者/权限
+
|-
/ps add|remove [playername] protectionstones.members 增加/删除一位成员
+
| ps get [block] || protectionstones.get || 获得一个保护石(扣除金币,需要设置)
/ps addowner|removeowner [playername] protectionstones.owners 增加/删除一位所有者
+
|-
/ps flag [flag] [value|null|default] protectionstones.flags 设为领地权限
+
| ps give [block] [player] || protectionstones.give || 给与一个保护石(不扣除金币)
/ps rent  [lease|rent|stopleasing|stoprenting] protectionstones.rent 租赁/出租/停止租赁/停止出租
+
|-
/ps tax protectionstones.tax 税收相关指令
+
| ps info members|owners|flags || protectionstones.info || 查看当前领地成员| 所有者| 权限
/ps buy protectionstones.buysell 购买你所在的领地
+
|-
/ps sell [price|stop] protectionstones.buysell 出售你所在的领地并设定价格/停止出售领地
+
| ps add|remove [playername] || protectionstones.members || 增加/删除一位成员
/ps hide protectionstones.hide 隐藏保护石
+
|-
/ps unhide protectionstones.unhide 取消隐藏保护石
+
| ps addowner|removeowner [playername] || protectionstones.owners || 增加/删除一位所有者
/ps setparent [region|none] protectionstones.setparent 为当前区域设置父级,不懂查这里
+
|-
/ps name [name|none] protectionstones.name 为领地设置名称/取消名称
+
| ps flag [flag] [value|null|default] || protectionstones.flags || 设为领地权限
/ps home [name/id (optional)] protectionstones.home 传送回领地
+
|-
/ps sethome protectionstones.sethome 设置领地家传送地点
+
| ps rent  [lease|rent|stopleasing|stoprenting] || protectionstones.rent || 租赁/出租/停止租赁/停止出租
/ps tp [id/player] [num (optional)] protectionstones.tp 传送到某个领地/某个玩家的领地
+
|-
/ps toggle protectionstones.toggle 开启/关闭保护石放置提示信息
+
| ps tax || protectionstones.tax || 税收相关指令
/ps view protectionstones.view 开启/关闭保护石放置提示信息
+
|-
/ps unclaim protectionstones.unclaim 放弃/删除领地
+
| ps buy || protectionstones.buysell || 购买你所在的领地
/ps priority [number|null] protectionstones.priority 设置领地优先级
+
|-
/ps region [list|remove|disown] [player] protectionstones.region [管理指令,不建议给玩家]使用指令查询或者编辑其他玩家或者自己领地的相关信息
+
| ps sell [price|stop] || protectionstones.buysell || 出售你所在的领地并设定价格/停止出售领地
/ps list [playername (optional)] protectionstones.list 列出你/其他玩家所拥有的的领地
+
|-
/ps count [playername (optional)] protectionstones.count 列出你/其他玩家所拥有的的领地数量
+
| ps hide || protectionstones.hide || 隐藏保护石
/ps merge protectionstones.merge 与邻近领地合并
+
|-
 +
| ps unhide || protectionstones.unhide || 取消隐藏保护石
 +
|-
 +
| ps setparent [region|none] || protectionstones.setparent || 为当前区域设置父级,不懂查[https://www.mcbbs.net/plugin.php?id=link_redirect&target=https%3A%2F%2Fworldguard.enginehub.org%2Fen%2Flatest%2Fregions%2Fpriorities%2F 这里]
 +
|-
 +
| ps name [name|none] || protectionstones.name || 为领地设置名称/取消名称
 +
|-
 +
| ps home [name| id (optional)] || protectionstones.home || 传送回领地
 +
|-
 +
| ps sethome || protectionstones.sethome || 设置领地家传送地点
 +
|-
 +
| ps tp [id| player] [num (optional)] || protectionstones.tp || 传送到某个领地/某个玩家的领地
 +
|-
 +
| ps toggle || protectionstones.toggle || 开启/关闭保护石放置提示信息
 +
|-
 +
| ps view || protectionstones.view || 开启/关闭保护石放置提示信息
 +
|-
 +
| ps unclaim || protectionstones.unclaim || 放弃/删除领地
 +
|-
 +
| ps priority [number|null] || protectionstones.priority || 设置领地优先级
 +
|-
 +
| ps region [list|remove|disown] [player] || protectionstones.region || '''管理指令,不建议给玩家'''使用指令查询或者编辑其他玩家或者自己领地的相关信息
 +
|-
 +
| ps list [playername (optional)] || protectionstones.list || 列出你/其他玩家所拥有的的领地
 +
|-
 +
| ps count [playername (optional)] || protectionstones.count || 列出你/其他玩家所拥有的的领地数量
 +
|-
 +
| ps merge || protectionstones.merge || 与邻近领地合并
 +
|}
 +
 
  
 
=== 管理员指令 ===
 
=== 管理员指令 ===
Line 123: Line 151:
 
/ps reload protectionstones.admin 重载插件配置文件
 
/ps reload protectionstones.admin 重载插件配置文件
 
权限
 
权限
本插件没有默认权限,需要手动给予,各位服主参考下面自行斟酌是否给予权限
+
'''本插件没有默认权限,需要手动给予,各位服主参考下面自行斟酌是否给予权限'''
展开 / 收起隐藏文字
 
  
 
权限 描述 是否推荐给玩家
 
权限 描述 是否推荐给玩家
Line 177: Line 204:
  
 
下面是...部分可以填入的参数
 
下面是...部分可以填入的参数
展开 / 收起隐藏文字
 
  
 
参数 描述
 
参数 描述
Line 200: Line 226:
  
  
配置文件变量
+
== PAPI变量 ==
 
据作者所说,所有配置都可以显示为PAPI变量,引用他们的办法就是在通用引用变量后面加上这个部分的参数。
 
据作者所说,所有配置都可以显示为PAPI变量,引用他们的办法就是在通用引用变量后面加上这个部分的参数。
 
比如说你要引用某种保护石的价格,那就就是%protectionstones_config_block_[alias]_block_data_price%。
 
比如说你要引用某种保护石的价格,那就就是%protectionstones_config_block_[alias]_block_data_price%。
 
alias指保护石的名称,格式基本相同,举一反三即可。
 
alias指保护石的名称,格式基本相同,举一反三即可。
全局配置变量
+
=== 全局配置变量 ===
 
引用方法:
 
引用方法:
 +
<pre>
 
%protectionstones_config_...%
 
%protectionstones_config_...%
 +
</pre>
 
特殊格式变量:
 
特殊格式变量:
 +
<pre>
 
%protectionstones_config_economy_max_rent_period_pretty%
 
%protectionstones_config_economy_max_rent_period_pretty%
 
%protectionstones_config_economy_min_rent_period_pretty%
 
%protectionstones_config_economy_min_rent_period_pretty%
保护石配置变量
+
</pre>
 +
=== 保护石配置变量 ===
 
引用方法:
 
引用方法:
 +
<pre>
 
%protectionstones_config_block_[alias]_...%
 
%protectionstones_config_block_[alias]_...%
 
%protectionstones_currentregion_config_...%
 
%protectionstones_currentregion_config_...%
 
%protectionstones_region_[identifier]_config_...%
 
%protectionstones_region_[identifier]_config_...%
 +
</pre>
 
可以填入的参数:
 
可以填入的参数:
 +
<pre>
 
economy_tax_period_pretty
 
economy_tax_period_pretty
 
economy_tax_payment_time_pretty
 
economy_tax_payment_time_pretty
玩家变量
+
</pre>
 +
=== 玩家变量 ===
 
引用方法:
 
引用方法:
 +
<pre>
 
%protectionstones_currentplayer_...%
 
%protectionstones_currentplayer_...%
 +
</pre>
 
可以填入的参数
 
可以填入的参数
 +
<pre>
 
global_region_limit 当前玩家所在领地最大人数,-1表示无限制
 
global_region_limit 当前玩家所在领地最大人数,-1表示无限制
 
region_limit_[alias] 特定类型保护块的最大限制 (用保护石名称替换[alias])
 
region_limit_[alias] 特定类型保护块的最大限制 (用保护石名称替换[alias])
 +
</pre>
  
 
== 配置文件 ==
 
== 配置文件 ==
 
config.toml(2.7.0-2020.4.4)
 
config.toml(2.7.0-2020.4.4)
 
<pre>
 
<pre>
    # 不要更改配置文件版本,除非你知道你在做什么!
+
# 不要更改配置文件版本,除非你知道你在做什么!
    config_version = 12
+
config_version = 12
    uuidupdated = true
+
uuidupdated = true
   
+
 
    # ---------------------------------------------------------------------------------------
+
# ---------------------------------------------------------------------------------------
    # 保护石配置
+
# 保护石配置
    # 方块配置已经移到 blocks 文件夹下了
+
# 方块配置已经移到 blocks 文件夹下了
    # 如果要创建新的保护石方块,复制 block1.toml 重命名然后按照原格式修改即可
+
# 如果要创建新的保护石方块,复制 block1.toml 重命名然后按照原格式修改即可
    # 如果你的配置文件看起来比较乱可能是因为配置文件的逐步更新,如果想调整回来考虑用默认配置文件(汉化会掉)
+
# 如果你的配置文件看起来比较乱可能是因为配置文件的逐步更新,如果想调整回来考虑用默认配置文件(汉化会掉)
    # 如果你需要默认配置,可以去 https://github.com/espidev/ProtectionStones/tree/master/src/main/resources 查看
+
# 如果你需要默认配置,可以去 https://github.com/espidev/ProtectionStones/tree/master/src/main/resources 查看
    # ---------------------------------------------------------------------------------------
+
# ---------------------------------------------------------------------------------------
   
+
 
    # 防止保护石的冷却时间 (单位:秒) 设置 -1 禁用此项
+
# 防止保护石的冷却时间 (单位:秒) 设置 -1 禁用此项
    placing_cooldown = -1
+
placing_cooldown = -1
   
+
 
    # 设置为 true 将不会阻止服务器通过UUID缓存启动
+
# 设置为 true 将不会阻止服务器通过UUID缓存启动
    # 在缓存加载完成之前/ps add 和 /ps remove 指令在离线模式(offline)下将会失效
+
# 在缓存加载完成之前/ps add 和 /ps remove 指令在离线模式(offline)下将会失效
    async_load_uuid_cache = false
+
async_load_uuid_cache = false
   
+
 
    # 是否允许领地有相同的名字 (相关指令/ps name).
+
# 是否允许领地有相同的名字 (相关指令/ps name).
    # 如果设置为 true ,允许玩家创建相同名称的领地,但必须在领地名称后面增加数字
+
# 如果设置为 true ,允许玩家创建相同名称的领地,但必须在领地名称后面增加数字
    allow_duplicate_region_names = false
+
allow_duplicate_region_names = false
   
+
 
    # /ps view 指令的冷却间隔
+
# /ps view 指令的冷却间隔
    # 可以防止滥用指令导致的滞后
+
# 可以防止滥用指令导致的滞后
    ps_view_cooldown = 10
+
ps_view_cooldown = 10
   
+
 
    # 保护石插件的基础指令 (如果指令冲突时可以更改这里,比如和plotsquared就冲突)
+
# 保护石插件的基础指令 (如果指令冲突时可以更改这里,比如和plotsquared就冲突)
    base_command = "ps"
+
base_command = "ps"
   
+
 
    # 命令别称
+
# 命令别称
    aliases = [
+
aliases = [
        "pstone",
+
    "pstone",
        "protectionstone",
+
    "protectionstone",
        "protectionstones"
+
    "protectionstones"
    ]
+
]
   
+
 
    # 当你删除领地的时候,如果你的背包满了,是否将物品丢出来 (相关指令/ps unclaim)
+
# 当你删除领地的时候,如果你的背包满了,是否将物品丢出来 (相关指令/ps unclaim)
    # 设置为 false 时,如果背包已满,将会阻止你删除领地,并发送提示信息
+
# 设置为 false 时,如果背包已满,将会阻止你删除领地,并发送提示信息
    drop_item_when_inventory_full = true
+
drop_item_when_inventory_full = true
   
+
 
    # 放置新的保护石是否必须与玩家已经拥有的保护石的范围相邻或者重叠
+
# 放置新的保护石是否必须与玩家已经拥有的保护石的范围相邻或者重叠
    # 这项设置可以让世界变得更简洁并且减少分散的居住点
+
# 这项设置可以让世界变得更简洁并且减少分散的居住点
    # 玩家可以创建最多不相邻的领地数量的权限为 protectionstones.region.adjacent.x (默认值:1 设置-1无视此项)
+
# 玩家可以创建最多不相邻的领地数量的权限为 protectionstones.region.adjacent.x (默认值:1 设置-1无视此项)
    # 当然如果你有权限 protectionstones.admin 也可以绕过 :)
+
# 当然如果你有权限 protectionstones.admin 也可以绕过 :)
    regions_must_be_adjacent = false
+
regions_must_be_adjacent = false
   
+
 
    # 是否允许玩家将新领地与老的领地合并创建一个新的更大的领地(重叠情况下)
+
# 是否允许玩家将新领地与老的领地合并创建一个新的更大的领地(重叠情况下)
    # 拥有权限 protectionstones.admin 可以将任意领地合并(包括其他玩家的!)
+
# 拥有权限 protectionstones.admin 可以将任意领地合并(包括其他玩家的!)
    # 合并区域需要权限 protectionstones.merge 才能使用 (相关指令/ps merge)
+
# 合并区域需要权限 protectionstones.merge 才能使用 (相关指令/ps merge)
    # 注意: 由于WorldGuard插件的限制,合并区域将会自动忽略Y周范围,更改为0-255
+
# 注意: 由于WorldGuard插件的限制,合并区域将会自动忽略Y周范围,更改为0-255
    # 因为多边形区域只能是二维的,不能是三维
+
# 因为多边形区域只能是二维的,不能是三维
    allow_merging_regions = true
+
allow_merging_regions = true
   
+
 
    # 是否允许合并的区域中间有一部分区域不受保护
+
# 是否允许合并的区域中间有一部分区域不受保护
    # 只会在合并过程中生效,不会影响已经合并且中间有未领地域的领地
+
# 只会在合并过程中生效,不会影响已经合并且中间有未领地域的领地
    allow_merging_holes = true
+
allow_merging_holes = true
   
+
 
    [economy]
+
[economy]
        # 设置租用价格限制. 设置为-1禁用此项
+
    # 设置租用价格限制. 设置为-1禁用此项
        max_rent_price = -1.0
+
    max_rent_price = -1.0
        min_rent_price = 1.0
+
    min_rent_price = 1.0
      
+
 
        # 设置租用支付租金的间隔,单位秒 (86400 秒 = 1 天). 设置-1禁用此项
+
     # 设置租用支付租金的间隔,单位秒 (86400 秒 = 1 天). 设置-1禁用此项
        max_rent_period = -1
+
    max_rent_period = -1
        min_rent_period = 1
+
    min_rent_period = 1
      
+
 
        #是否开启领地税收
+
     #是否开启领地税收
        # 税收配置可以在每个保护块的配置文件更改
+
    # 税收配置可以在每个保护块的配置文件更改
        # 是否启用 tax相 关指令
+
    # 是否启用 tax相 关指令
        # 如果你有自己的领地,你可以给每一个领地设置一个"自动玩家"(指自动收取税收的玩家
+
    # 如果你有自己的领地,你可以给每一个领地设置一个"自动玩家"(指自动收取税收的玩家
        # 可以通过指令 /ps admin settaxautopayers 设置,这将更新服务器中所有的领地
+
    # 可以通过指令 /ps admin settaxautopayers 设置,这将更新服务器中所有的领地
        tax_enabled = true
+
    tax_enabled = true
      
+
 
        # 未缴纳税收时,是否在玩家加入游戏时通知他们
+
     # 未缴纳税收时,是否在玩家加入游戏时通知他们
        tax_message_on_join = true
+
    tax_message_on_join = true
 
</pre>
 
</pre>
 
message.yml(2.7.0-2020.4.4)
 
message.yml(2.7.0-2020.4.4)
 
<pre>
 
<pre>
    cooldown: '&6警告: &7请等待 %time% 秒之后再放置保护石!'
+
cooldown: '&6警告: &7请等待 %time% 秒之后再放置保护石!'
    no_such_command: '&c指令无效. 请使用 /ps help 查看帮助'
+
no_such_command: '&c指令无效. 请使用 /ps help 查看帮助'
    no_access: '&c您不能这么做.'
+
no_access: '&c您不能这么做.'
    no_room_in_inventory: '&c您的背包没有足够的空间.'
+
no_room_in_inventory: '&c您的背包没有足够的空间.'
    no_room_dropping_on_floor: '&c您的背包空间不足,已将保护石散落在地面上'
+
no_room_dropping_on_floor: '&c您的背包空间不足,已将保护石散落在地面上'
    invalid_block: '&c无效的保护石.'
+
invalid_block: '&c无效的保护石.'
    not_enough_money: '&c您没有足够的钱! 您需要 %price%.'
+
not_enough_money: '&c您没有足够的钱! 您需要 %price%.'
    paid_money: '&b您支付了 $%price%.'
+
paid_money: '&b您支付了 $%price%.'
    invalid_world: '&c无效世界.'
+
invalid_world: '&c无效世界.'
    must_be_player: '&c只有玩家才能执行这个命令.'
+
must_be_player: '&c只有玩家才能执行这个命令.'
    go_back_page: 返回上一页.
+
go_back_page: 返回上一页.
    go_next_page: 前往下一页.
+
go_next_page: 前往下一页.
    help: |-
+
help: |-
      &8&m=====&r 保护石 帮助菜单 &8&m=====
+
  &8&m=====&r 保护石 帮助菜单 &8&m=====
      &b> &7/ps help
+
  &b> &7/ps help
    help_next: '&7使用 /ps help %page% 查看下一页帮助!'
+
help_next: '&7使用 /ps help %page% 查看下一页帮助!'
    command_requires_player_name: '&c此命令需要输入玩家名称.'
+
command_requires_player_name: '&c此命令需要输入玩家名称.'
    no_permission_toggle: '&c您没有权限使用切换指令的权限.'
+
no_permission_toggle: '&c您没有权限使用切换指令的权限.'
    no_permission_create: '&c您没有权限防置保护石.'
+
no_permission_create: '&c您没有权限防置保护石.'
    no_permission_destroy: '&c您没有权限破坏保护石'
+
no_permission_destroy: '&c您没有权限破坏保护石'
    no_permission_members: '&c您没有使用成员命令的权限.'
+
no_permission_members: '&c您没有使用成员命令的权限.'
    no_permission_owners: '&c您没有使用所有者命令的权限.'
+
no_permission_owners: '&c您没有使用所有者命令的权限.'
    no_permission_admin: '&c您没有使用该命令的权限.'
+
no_permission_admin: '&c您没有使用该命令的权限.'
    no_permission_count: '&c您没有使用该命令的权限.'
+
no_permission_count: '&c您没有使用该命令的权限.'
    no_permission_count_others: '&c您没有使用该命令的权限.'
+
no_permission_count_others: '&c您没有使用该命令的权限.'
    no_permission_flags: '&c您没有使用权限命令的权限.'
+
no_permission_flags: '&c您没有使用权限命令的权限.'
    no_permission_per_flag: '&c您没有使用该权限的权限.'
+
no_permission_per_flag: '&c您没有使用该权限的权限.'
    no_permission_rent: '&c您没有租用的权限.'
+
no_permission_rent: '&c您没有租用的权限.'
    no_permission_tax: '&c您没有使用税收命令的权限.'
+
no_permission_tax: '&c您没有使用税收命令的权限.'
    no_permission_buysell: '&c您没有买卖领地的权限.'
+
no_permission_buysell: '&c您没有买卖领地的权限.'
    no_permission_unhide: '&c您没有取消隐藏保护石的权限.'
+
no_permission_unhide: '&c您没有取消隐藏保护石的权限.'
    no_permission_hide: '&c您没有隐藏保护石的权限.'
+
no_permission_hide: '&c您没有隐藏保护石的权限.'
    no_permission_info: '&c您没有使用领地信息命令的权限.'
+
no_permission_info: '&c您没有使用领地信息命令的权限.'
    no_permission_priority: '&c您没有使用优先级命令的权限.'
+
no_permission_priority: '&c您没有使用优先级命令的权限.'
    no_permission_region: '&c您没有使用领地命令的权限.'
+
no_permission_region: '&c您没有使用领地命令的权限.'
    no_permission_tp: '&c您没有传送到其他玩家的领地的权限.'
+
no_permission_tp: '&c您没有传送到其他玩家的领地的权限.'
    no_permission_home: '&c你没有权限传送到你的保护石.'
+
no_permission_home: '&c你没有权限传送到你的保护石.'
    no_permission_unclaim: '&c您没有使用取消声明命令的权限.'
+
no_permission_unclaim: '&c您没有使用取消声明命令的权限.'
    no_permission_view: '&c您没有使用视图命令的权限.'
+
no_permission_view: '&c您没有使用视图命令的权限.'
    no_permission_give: '&c您没有使用给予命令的权限.'
+
no_permission_give: '&c您没有使用给予命令的权限.'
    no_permission_get: '&c您没有使用获得命令的权限.'
+
no_permission_get: '&c您没有使用获得命令的权限.'
    no_permission_sethome: '&c您没有使用设置家命令的权限.'
+
no_permission_sethome: '&c您没有使用设置家命令的权限.'
    no_permission_list: '&c您没有使用列表命令的权限.'
+
no_permission_list: '&c您没有使用列表命令的权限.'
    no_permission_list_others: '&c您没有查看其他人列表的权限.'
+
no_permission_list_others: '&c您没有查看其他人列表的权限.'
    no_permission_name: '&c您没有使用命名命令的权限.'
+
no_permission_name: '&c您没有使用命名命令的权限.'
    no_permission_setparent: '&c您没有使用设置从属命令的权限.'
+
no_permission_setparent: '&c您没有使用设置从属命令的权限.'
    no_permission_setparent_others: '&c您没有从其他人的区域继承的权限.'
+
no_permission_setparent_others: '&c您没有从其他人的区域继承的权限.'
    no_permission_merge: '&c您没有权限使用 /ps merge.'
+
no_permission_merge: '&c您没有权限使用 /ps merge.'
    psregion:
+
psregion:
      added_to_region: '&b%player%&7 已添加到此领地.'
+
  added_to_region: '&b%player%&7 已添加到此领地.'
      added_to_region_specific: '&b%player%&7 已添加到领地 %region%.'
+
  added_to_region_specific: '&b%player%&7 已添加到领地 %region%.'
      removed_from_region: '&b%player%&7 已从该领地中删除.'
+
  removed_from_region: '&b%player%&7 已从该领地中删除.'
      removed_from_region_specific: '&b%player%&7 已从领地 %region% 中删除.'
+
  removed_from_region_specific: '&b%player%&7 已从领地 %region% 中删除.'
      not_in_region: '&c你不在领地!'
+
  not_in_region: '&c你不在领地!'
      player_not_found: '&c玩家无效.'
+
  player_not_found: '&c玩家无效.'
      not_ps_region: '&c不是领地.'
+
  not_ps_region: '&c不是领地.'
      region_does_not_exist: '&c领地不存在.'
+
  region_does_not_exist: '&c领地不存在.'
      no_regions_owned: '&c当前世界您没有领地!'
+
  no_regions_owned: '&c当前世界您没有领地!'
      no_region_permission: '&c您没有在此领地执行此操作的权限.'
+
  no_region_permission: '&c您没有在此领地执行此操作的权限.'
      protected: '&b此区域现已被保护.'
+
  protected: '&b此区域现已被保护.'
      no_longer_protected: '&e此区域不再被保护.'
+
  no_longer_protected: '&e此区域不再被保护.'
      cant_protect_that: '&c你不能保护那个区域.'
+
  cant_protect_that: '&c你不能保护那个区域.'
      reached_region_limit: '&c您不能拥有更多的领地了,已达限制 (%limit%).'
+
  reached_region_limit: '&c您不能拥有更多的领地了,已达限制 (%limit%).'
      reached_per_block_region_limit: '&c您不拥有更多此类型的领地,已达限制(%limit%).'
+
  reached_per_block_region_limit: '&c您不拥有更多此类型的领地,已达限制(%limit%).'
      world_denied_create: '&c你不能在这个世界上创建领地.'
+
  world_denied_create: '&c你不能在这个世界上创建领地.'
      region_overlap: '&c不能在此处放置保护石,因为它与另一个区域重叠.'
+
  region_overlap: '&c不能在此处放置保护石,因为它与另一个区域重叠.'
      region_too_close: '&c您的领地距离其他人的太近了,至少保持%num% 格远!'
+
  region_too_close: '&c您的领地距离其他人的太近了,至少保持%num% 格远!'
      cant_teleport: '&c您的传送被领地拒绝!'
+
  cant_teleport: '&c您的传送被领地拒绝!'
      specify_id_instead_of_alias: |-
+
  specify_id_instead_of_alias: |-
        &7找到多个带有此名称的领地!请使用 ID 替换
+
    &7找到多个带有此名称的领地!请使用 ID 替换
        具有此名称的区领地: &b%regions%
+
    具有此名称的区领地: &b%regions%
      region_not_adjacent: '&c您距离您已创建的领地太远了!尝试将保护石靠近已拥有的其他领地.'
+
  region_not_adjacent: '&c您距离您已创建的领地太远了!尝试将保护石靠近已拥有的其他领地.'
      not_overlapping: '&c这些领地不会相互重叠!'
+
  not_overlapping: '&c这些领地不会相互重叠!'
      multi_region_does_not_exist: 其中一个领地不存在!
+
  multi_region_does_not_exist: 其中一个领地不存在!
      no_region_holes: '&c领地内检测到未受保护的区域!这是禁止的!'
+
  no_region_holes: '&c领地内检测到未受保护的区域!这是禁止的!'
      delete_region_prevented: '&7无法删除该区域,可能是因为在现有领地中有未被保护的区域.'
+
  delete_region_prevented: '&7无法删除该区域,可能是因为在现有领地中有未被保护的区域.'
      not_owner: '&c您不是此把湖区的所有者!'
+
  not_owner: '&c您不是此把湖区的所有者!'
      cannot_merge_rented_region: '&c无法合并区域,因为区域 %region% 正在出租中!'
+
  cannot_merge_rented_region: '&c无法合并区域,因为区域 %region% 正在出租中!'
      no_permission_region_type: '&c您没有使用此领地类型的权限.'
+
  no_permission_region_type: '&c您没有使用此领地类型的权限.'
      hidden: '&7保护石已被隐藏.'
+
  hidden: '&7保护石已被隐藏.'
    toggle:
+
toggle:
      help: '&b> &7/ps toggle'
+
  help: '&b> &7/ps toggle'
      help_desc: 使用此命令打开或关闭保护石放置信息.
+
  help_desc: 使用此命令打开或关闭保护石放置信息.
      toggle_on: '&b保护石放置信息已打开.'
+
  toggle_on: '&b保护石放置信息已打开.'
      toggle_off: '&b保护石放置信息已关闭.'
+
  toggle_off: '&b保护石放置信息已关闭.'
    count:
+
count:
      count_help: '&b> &7/ps count [player (optional)]'
+
  count_help: '&b> &7/ps count [player (optional)]'
      count_help_desc: 查看您或其他玩家拥有的领地数.
+
  count_help_desc: 查看您或其他玩家拥有的领地数.
      personal_region_count: '&7当前世界您拥有的领地数目: &b%num%'
+
  personal_region_count: '&7当前世界您拥有的领地数目: &b%num%'
      personal_region_count_merged: '&7- 包括合并领地: &b%num%'
+
  personal_region_count_merged: '&7- 包括合并领地: &b%num%'
      other_region_count: '&7%player%在当前世界所拥有的领地数目: &b%num%'
+
  other_region_count: '&7%player%在当前世界所拥有的领地数目: &b%num%'
      other_region_count_merged: '&7- 包括合并领地: &b%num%'
+
  other_region_count_merged: '&7- 包括合并领地: &b%num%'
    flag:
+
flag:
      help: '&b> &7/ps flag [flagname] [value|null|default]'
+
  help: '&b> &7/ps flag [flagname] [value|null|default]'
      help_desc: 使用此命令在您的领地中设置权限.
+
  help_desc: 使用此命令在您的领地中设置权限.
      flag_set: '&b%flag%&7 权限已被设置'
+
  flag_set: '&b%flag%&7 权限已被设置'
      flag_not_set: '&b%flag%&7 权限已被取消. 请检查您的数值.'
+
  flag_not_set: '&b%flag%&7 权限已被取消. 请检查您的数值.'
      gui_header: '&8&m=====&r 权限 (点击更改) &8&m====='
+
  gui_header: '&8&m=====&r 权限 (点击更改) &8&m====='
      gui_hover_set: '&b点击设置.'
+
  gui_hover_set: '&b点击设置.'
      gui_hover_set_text: |-
+
  gui_hover_set_text: |-
        &b点击更改.&f
+
    &b点击更改.&f
        当前设置:
+
    当前设置:
        %value%
+
    %value%
      hover_change_group: 单击以将此权限设置为仅应用于 %group%.
+
  hover_change_group: 单击以将此权限设置为仅应用于 %group%.
      hover_change_group_null: '&c在更改组之前,必须先设置此权限值.'
+
  hover_change_group_null: '&c在更改组之前,必须先设置此权限值.'
    rent:
+
rent:
      help: '&b> &7/ps rent'
+
  help: '&b> &7/ps rent'
      help_desc: 使用此命令管理租金 (买卖).
+
  help_desc: 使用此命令管理租金 (买卖).
      help_header: '&8&m=====&r 租赁帮助 &8&m====='
+
  help_header: '&8&m=====&r 租赁帮助 &8&m====='
      already_renting: '&c这个领地已经被租出去了!您必须先停止租赁该领地.'
+
  already_renting: '&c这个领地已经被租出去了!您必须先停止租赁该领地.'
      not_rented: '&c此领地拒绝出租.'
+
  not_rented: '&c此领地拒绝出租.'
      lease_success: |-
+
  lease_success: |-
        &b领地租赁条款设定:
+
    &b领地租赁条款设定:
        &b价格: &7%price%
+
    &b价格: &7%price%
        &b付款方式: &7%period%
+
    &b付款方式: &7%period%
      stopped: '&b租赁停止.'
+
  stopped: '&b租赁停止.'
      evicted: '&7已被逐出的租户 %tenant%.'
+
  evicted: '&7已被逐出的租户 %tenant%.'
      not_renting: '&c此领地未出租给租户.'
+
  not_renting: '&c此领地未出租给租户.'
      paid_landlord: '&b%tenant%&7 &7已经为 &b%region% 支付 &b$%price%&7.'
+
  paid_landlord: '&b%tenant%&7 &7已经为 &b%region% 支付 &b$%price%&7.'
      paid_tenant: '&7已向领地 &b%region% &7的&b %landlord% &7支付&b $%price%&7.'
+
  paid_tenant: '&7已向领地 &b%region% &7的&b %landlord% &7支付&b $%price%&7.'
      renting_landlord: '&b%player%&7 现在正在出租领地 &b%region%&7.'
+
  renting_landlord: '&b%player%&7 现在正在出租领地 &b%region%&7.'
      renting_tenant: '&7你现在正在出租领地 &b%region%&7 价格: &b%price%&7 每&b%period%&7.'
+
  renting_tenant: '&7你现在正在出租领地 &b%region%&7 价格: &b%price%&7 每&b%period%&7.'
      not_tenant: '&c您不是此领地的租户!'
+
  not_tenant: '&c您不是此领地的租户!'
      tenant_stopped_landlord: '&b%player%&7 已停止出租领地 &b%region%&7. 现在可供其他玩家租用.'
+
  tenant_stopped_landlord: '&b%player%&7 已停止出租领地 &b%region%&7. 现在可供其他玩家租用.'
      tenant_stopped_tenant: '&b您已停止出租领地 %region%.'
+
  tenant_stopped_tenant: '&b您已停止出租领地 %region%.'
      being_sold: '&c该领地正在出售! 先使用 /ps sell stop.'
+
  being_sold: '&c该领地正在出售! 先使用 /ps sell stop.'
      evict_no_money_tenant: '&7您已经被领地 &b%region% &7&cevicted 由于您没有足够的钱来还清租金,至少需要 %price%.'
+
  evict_no_money_tenant: '&7您已经被领地 &b%region% &7&cevicted 由于您没有足够的钱来还清租金,至少需要 %price%.'
      evict_no_money_landlord: '&b%tenant%&7 已经从领地 &b%region%&7 &cevicted& 因为他们无法支付租金.'
+
  evict_no_money_landlord: '&b%tenant%&7 已经从领地 &b%region%&7 &cevicted& 因为他们无法支付租金.'
      cannot_rent_own_region: '&c您不能租用自己的领地!'
+
  cannot_rent_own_region: '&c您不能租用自己的领地!'
      reached_limit: '&c您已达到最多租用领地的上限!'
+
  reached_limit: '&c您已达到最多租用领地的上限!'
      price_too_low: '&c租金太低 (必须大于 %price%).'
+
  price_too_low: '&c租金太低 (必须大于 %price%).'
      price_too_high: '&c租金太高 (必须低于 %price%).'
+
  price_too_high: '&c租金太高 (必须低于 %price%).'
      period_too_short: '&c租期太短 (必须大于 %period% 秒).'
+
  period_too_short: '&c租期太短 (必须大于 %period% 秒).'
      period_too_long: '&c租期太长 (必须小于 %period% 秒).'
+
  period_too_long: '&c租期太长 (必须小于 %period% 秒).'
      period_invalid: '&c无效的时间格式!示例: 24h 即一天.'
+
  period_invalid: '&c无效的时间格式!示例: 24h 即一天.'
      cannot_break_while_renting: '&c领地已被租出,您无法破坏该领地.'
+
  cannot_break_while_renting: '&c领地已被租出,您无法破坏该领地.'
    tax:
+
tax:
      help: '&b> &7/ps tax'
+
  help: '&b> &7/ps tax'
      help_desc: 使用此命令管理和支付税收.
+
  help_desc: 使用此命令管理和支付税收.
      help_header: '&8&m=====&r 税收帮助 &8&m====='
+
  help_header: '&8&m=====&r 税收帮助 &8&m====='
      disabled_region: '&c禁用此领地的税款.'
+
  disabled_region: '&c禁用此领地的税款.'
      set_as_autopayer: '&7领地 &b%region% &7的税收将自动从您的余额中扣除'
+
  set_as_autopayer: '&7领地 &b%region% &7的税收将自动从您的余额中扣除'
      set_no_autopayer: '&7领地 &b%region% &7的税收现在必须手动支付.'
+
  set_no_autopayer: '&7领地 &b%region% &7的税收现在必须手动支付.'
      paid: '&7已为领地 &b%region%&7 支付 &b$%amount%.'
+
  paid: '&7已为领地 &b%region%&7 支付 &b$%amount%.'
      info_header: '&8&m=====&r 税收信息 (点击查看更多信息) &8&m====='
+
  info_header: '&8&m=====&r 税收信息 (点击查看更多信息) &8&m====='
      join_msg_pending_payments: |-
+
  join_msg_pending_payments: |-
        &7您有 &b$%money%&7 税收待支付!
+
    &7您有 &b$%money%&7 税收待支付!
        使用/ps tax info 查看更多信息 .
+
    使用/ps tax info 查看更多信息 .
      player_region_info: '&7> &b%region%&7 - &6待缴纳: &3$%money% '
+
  player_region_info: '&7> &b%region%&7 - &6待缴纳: &3$%money% '
      player_region_info_autopayer: '&7> &b%region%&7 - &6待缴纳 &7(自动扣除) &3$%money%'
+
  player_region_info_autopayer: '&7> &b%region%&7 - &6待缴纳 &7(自动扣除) &3$%money%'
      click_to_show_more_info: 单击以显示更多信息.
+
  click_to_show_more_info: 单击以显示更多信息.
      region_info_header: '&8&m=====&r %region% 税收信息 &8&m====='
+
  region_info_header: '&8&m=====&r %region% 税收信息 &8&m====='
      region_info: |-
+
  region_info: |-
        &9税率: &7$%taxrate% (所有合并的领地的总和)
+
    &9税率: &7$%taxrate% (所有合并的领地的总和)
        &9税周期之间的时间: &7%taxperiod%
+
    &9税周期之间的时间: &7%taxperiod%
        &9税周期纳税时间: &7%taxpaymentperiod%
+
    &9税周期纳税时间: &7%taxpaymentperiod%
        &9税收自动纳税人: &7%taxautopayer%
+
    &9税收自动纳税人: &7%taxautopayer%
        &9欠税: &7$%taxowed%
+
    &9欠税: &7$%taxowed%
      next_page: '&7使用 /ps tax info -p %page% 查看下一页!'
+
  next_page: '&7使用 /ps tax info -p %page% 查看下一页!'
    buy:
+
buy:
      help: '&b> &7/ps buy'
+
  help: '&b> &7/ps buy'
      help_desc: 购买您当前所在的领地.
+
  help_desc: 购买您当前所在的领地.
      not_for_sale: '&c此领地不出售.'
+
  not_for_sale: '&c此领地不出售.'
      stop_sell: '&7该领地现在不出售.'
+
  stop_sell: '&7该领地现在不出售.'
      sold_buyer: '&7从 &b%player% &7以 &b$%price% &7购买了领地 &b%region%&7.'
+
  sold_buyer: '&7从 &b%player% &7以 &b$%price% &7购买了领地 &b%region%&7.'
      sold_seller: '&7从 &b%player% &7以 &b$%price% &7出售了领地 &b%region%&7.'
+
  sold_seller: '&7从 &b%player% &7以 &b$%price% &7出售了领地 &b%region%&7.'
    sell:
+
sell:
      help: '&b> &7/ps sell [price|stop]'
+
  help: '&b> &7/ps sell [price|stop]'
      help_desc: 卖掉你当前所在的领地.
+
  help_desc: 卖掉你当前所在的领地.
      rented_out: '&c这个地区被租出去了!你必须停止出租它才能出售.'
+
  rented_out: '&c这个地区被租出去了!你必须停止出租它才能出售.'
      for_sale: '&7该领地现在正以 &b$%price% &7的价格出售.'
+
  for_sale: '&7该领地现在正以 &b$%price% &7的价格出售.'
    visibility:
+
visibility:
      hide_help: '&b> &7/ps hide'
+
  hide_help: '&b> &7/ps hide'
      hide_help_desc: 使用此命令隐藏或取消隐藏保护石.
+
  hide_help_desc: 使用此命令隐藏或取消隐藏保护石.
      unhide_help: '&b> &7/ps unhide'
+
  unhide_help: '&b> &7/ps unhide'
      unhide_help_desc: 使用此命令隐藏或取消隐藏保护石.
+
  unhide_help_desc: 使用此命令隐藏或取消隐藏保护石.
      already_not_hidden: '&7保护石已经取消隐藏了!'
+
  already_not_hidden: '&7保护石已经取消隐藏了!'
      already_hidden: '&7保护石已经隐藏了!'
+
  already_hidden: '&7保护石已经隐藏了!'
    info:
+
info:
      help: '&b> &7/ps info members|owners|flags'
+
  help: '&b> &7/ps info members|owners|flags'
      help_desc: 在领地内使用此命令以查看有关它的详细信息.
+
  help_desc: 在领地内使用此命令以查看有关它的详细信息.
      header: '&8&m=====&r 领地信息 &8&m====='
+
  header: '&8&m=====&r 领地信息 &8&m====='
      type: '&9Type: &7'
+
  type: '&9Type: &7'
      may_be_merged: (可与其他类型合并)
+
  may_be_merged: (可与其他类型合并)
      merged: '&9合并的领地: &7'
+
  merged: '&9合并的领地: &7'
      members: '&9成员: &7'
+
  members: '&9成员: &7'
      no_members: '&c(没有协助成员)'
+
  no_members: '&c(没有协助成员)'
      owners: '&9所有者: &7'
+
  owners: '&9所有者: &7'
      no_owners: '&c(没有所有者)'
+
  no_owners: '&c(没有所有者)'
      flags: '&9权限: &7'
+
  flags: '&9权限: &7'
      region: '&9领地: &b'
+
  region: '&9领地: &b'
      priority: '&9优先权: &b'
+
  priority: '&9优先权: &b'
      parent: '&9从属: &b'
+
  parent: '&9从属: &b'
      bounds: '&9边界: &b'
+
  bounds: '&9边界: &b'
      seller: '&9卖家: &7'
+
  seller: '&9卖家: &7'
      price: '&9价格: &7'
+
  price: '&9价格: &7'
      tenant: '&9租户: &7'
+
  tenant: '&9租户: &7'
      landlord: '&9房东: &7'
+
  landlord: '&9房东: &7'
      rent: '&9Rent: &7'
+
  rent: '&9Rent: &7'
      available_for_sale: '&b该地区当前可出售!'
+
  available_for_sale: '&b该地区当前可出售!'
      available_for_rent: '&b该地区当前可出租!'
+
  available_for_rent: '&b该地区当前可出租!'
    priority:
+
priority:
      help: '&b> &7/ps priority [number|null]'
+
  help: '&b> &7/ps priority [number|null]'
      help_desc: 使用此命令设置您所在领地的优先级.
+
  help_desc: 使用此命令设置您所在领地的优先级.
      info: '&7优先级: %priority%'
+
  info: '&7优先级: %priority%'
      set: '&e优先级已设置.'
+
  set: '&e优先级已设置.'
      error: '&c输入解析无效,检查是否输入错误?'
+
  error: '&c输入解析无效,检查是否输入错误?'
    region:
+
region:
      help: '&b> &7/ps region [list|remove|disown] [playername]'
+
  help: '&b> &7/ps region [list|remove|disown] [playername]'
      help_desc: 使用此命令可以查找信息或编辑其他玩家(或您自己的)领地.
+
  help_desc: 使用此命令可以查找信息或编辑其他玩家(或您自己的)领地.
      not_found_for_player: '&7此世界上未找到 %player% 的领地.'
+
  not_found_for_player: '&7此世界上未找到 %player% 的领地.'
      list: '&7%player%在此世界上的领地: &b %regions%'
+
  list: '&7%player%在此世界上的领地: &b %regions%'
      remove: '&e%player%在此世界上的领地已被移除,并且也从 %player% 部分拥有的领地中删除.'
+
  remove: '&e%player%在此世界上的领地已被移除,并且也从 %player% 部分拥有的领地中删除.'
      error_search: '&c在搜索玩家 %player% 的领地时发生错误. 请确保您输入了正确的名称.'
+
  error_search: '&c在搜索玩家 %player% 的领地时发生错误. 请确保您输入了正确的名称.'
    tp:
+
tp:
      help: '&b> &7/ps tp [id/player] [num (optional)]'
+
  help: '&b> &7/ps tp [id/player] [num (optional)]'
      help_desc: 将您传送到改玩家的领地之一.
+
  help_desc: 将您传送到改玩家的领地之一.
      number_above_zero: '&c请输入高于 0 的数字.'
+
  number_above_zero: '&c请输入高于 0 的数字.'
      valid_number: '&c请输入有效的数字.'
+
  valid_number: '&c请输入有效的数字.'
      only_has_regions: '&c%player% 在这个世界上仅有 %num% 领地!'
+
  only_has_regions: '&c%player% 在这个世界上仅有 %num% 领地!'
      tping: '&a传送中...'
+
  tping: '&a传送中...'
      error_name: '&c传送到领地时出错!(分析WorldGuard区域名称错误)'
+
  error_name: '&c传送到领地时出错!(分析WorldGuard区域名称错误)'
      error_tp: '&c查找要传送到的领地时出错!'
+
  error_tp: '&c查找要传送到的领地时出错!'
      in_seconds: '&7将在 &b%seconds%&7 秒后传送.'
+
  in_seconds: '&7将在 &b%seconds%&7 秒后传送.'
      cancelled_moved: '&c传送已取消,请勿移动!'
+
  cancelled_moved: '&c传送已取消,请勿移动!'
    home:
+
home:
      help: '&b> &7/ps home [name/id]'
+
  help: '&b> &7/ps home [name/id]'
      help_desc: 将您传送到您的其中一个领地.
+
  help_desc: 将您传送到您的其中一个领地.
      header: '&8&m=====&r 家 (点击传送) &8&m====='
+
  header: '&8&m=====&r 家 (点击传送) &8&m====='
      click_to_tp: 点击传送!
+
  click_to_tp: 点击传送!
      next_page: '&7使用 /ps home -p %page% 查看下一页!'
+
  next_page: '&7使用 /ps home -p %page% 查看下一页!'
    unclaim:
+
unclaim:
      help: '&b> &7/ps unclaim'
+
  help: '&b> &7/ps unclaim'
      help_desc: 使用此命令拾取已放置的保护石并移除该领地.
+
  help_desc: 使用此命令拾取已放置的保护石并移除该领地.
    view:
+
view:
      help: '&b> &7/ps view'
+
  help: '&b> &7/ps view'
      help_desc: 使用此命令查看领地的边界.
+
  help_desc: 使用此命令查看领地的边界.
      cooldown: '&c请等待一会再使用 /ps view.'
+
  cooldown: '&c请等待一会再使用 /ps view.'
      generating: '&7生成边界中...'
+
  generating: '&7生成边界中...'
      generate_done: '&a已完成! 边界显示将在30秒后消失!'
+
  generate_done: '&a已完成! 边界显示将在30秒后消失!'
      removing: |-
+
  removing: |-
        &b移除边界中...
+
    &b移除边界中...
        &a如果您仍然看到幽灵方块,请重新登录游戏!
+
    &a如果您仍然看到幽灵方块,请重新登录游戏!
    admin:
+
admin:
      help: '&b> &7/ps admin'
+
  help: '&b> &7/ps admin'
      help_desc: 使用 /ps admin help 查看更多信息.
+
  help_desc: 使用 /ps admin help 查看更多信息.
      cleanup_header: |-
+
  cleanup_header: |-
        &e清理 %arg% %days% days
+
    &e清理 %arg% %days% days
        ================
+
    ================
      cleanup_footer: |-
+
  cleanup_footer: |-
        &e================
+
    &e================
        已完成 %arg% 的清理.
+
    已完成 %arg% 的清理.
      hide_toggled: '&e此世界所有保护石一直是 %message% '
+
  hide_toggled: '&e此世界所有保护石一直是 %message% '
      last_logon: '&e%player% 上次登录在 %days% 天前.'
+
  last_logon: '&e%player% 上次登录在 %days% 天前.'
      is_banned: '&e%player% 已被封禁.'
+
  is_banned: '&e%player% 已被封禁.'
      error_parsing: '&c错误天数参数,你确定没有输入错误?'
+
  error_parsing: '&c错误天数参数,你确定没有输入错误?'
      console_world: '&c最后一个参数必须是世界.'
+
  console_world: '&c最后一个参数必须是世界.'
      lastlogons_header: |-
+
  lastlogons_header: |-
        &e%days% 天+:
+
    &e%days% 天+:
        ================
+
    ================
      lastlogons_line: '&e%player% %time% 天'
+
  lastlogons_line: '&e%player% %time% 天'
      lastlogons_footer: |-
+
  lastlogons_footer: |-
        &e================
+
    &e================
        %count% 玩家总数显示
+
    %count% 玩家总数显示
        %checked% 已检查的玩家总数
+
    %checked% 已检查的玩家总数
    reload:
+
reload:
      help: '&b> &7/ps reload'
+
  help: '&b> &7/ps reload'
      help_desc: 从配置中重新加载设置.
+
  help_desc: 从配置中重新加载设置.
      start: '&b重载配置中...'
+
  start: '&b重载配置中...'
      complete: '&b配置重载完成!'
+
  complete: '&b配置重载完成!'
    addremove:
+
addremove:
      help: '&b> &7/ps add|remove [playername]'
+
  help: '&b> &7/ps add|remove [playername]'
      help_desc: 使用此命令可以添加或删除领地的成员.
+
  help_desc: 使用此命令可以添加或删除领地的成员.
      owner_help: '&b> &7/ps addowner|removeowner [playername]'
+
  owner_help: '&b> &7/ps addowner|removeowner [playername]'
      owner_help_desc: 使用此命令可以添加或删除领地的所有者.
+
  owner_help_desc: 使用此命令可以添加或删除领地的所有者.
    get:
+
get:
      help: '&b> &7/ps get [block]'
+
  help: '&b> &7/ps get [block]'
      help_desc: 使用此命令获取或购买保护石.
+
  help_desc: 使用此命令获取或购买保护石.
      gotten: '&b将保护石添加到库存!'
+
  gotten: '&b将保护石添加到库存!'
      no_permission_block: '&c您没有获取保护石的权限.'
+
  no_permission_block: '&c您没有获取保护石的权限.'
      header: '&8&m=====&r 保护石 (点击获取) &8&m====='
+
  header: '&8&m=====&r 保护石 (点击获取) &8&m====='
      gui_block: '&7> &b%alias% (%xradius% x %zradius%) ($%price%)'
+
  gui_block: '&7> &b%alias% (%xradius% x %zradius%) ($%price%)'
      gui_hover: 点击购买一个 %alias%!
+
  gui_hover: 点击购买一个 %alias%!
    give:
+
give:
      help: '&b> &7/ps give [block] [player]'
+
  help: '&b> &7/ps give [block] [player]'
      help_desc: 使用此命令给与玩家保护块.
+
  help_desc: 使用此命令给与玩家保护块.
      given: '&7Gave &b%block%&7 to &b%player%&7.'
+
  given: '&7Gave &b%block%&7 to &b%player%&7.'
      no_inventory_room: '&c玩家没有足够的库存室.'
+
  no_inventory_room: '&c玩家没有足够的库存室.'
    sethome:
+
sethome:
      help: '&b> &7/ps sethome'
+
  help: '&b> &7/ps sethome'
      help_desc: 使用此命令将领地的家位置设置为当前位置.
+
  help_desc: 使用此命令将领地的家位置设置为当前位置.
      set: '&7领地家 &b%psid%&7 已被设置.'
+
  set: '&7领地家 &b%psid%&7 已被设置.'
    list:
+
list:
      help: '&b> &7/ps list [player (optional)]'
+
  help: '&b> &7/ps list [player (optional)]'
      help_desc: 使用此命令可以列出您或其他玩家拥有的领地.
+
  help_desc: 使用此命令可以列出您或其他玩家拥有的领地.
      header: '&8&m=====&r %player%的领地s &8&m====='
+
  header: '&8&m=====&r %player%的领地s &8&m====='
      owner: '&7所有者:'
+
  owner: '&7所有者:'
      member: '&7成员:'
+
  member: '&7成员:'
    name:
+
name:
      help: '&b> &7/ps name [name|none]'
+
  help: '&b> &7/ps name [name|none]'
      help_desc: 使用此命令可为您的领地设置昵称,以便更轻松地识别领地.
+
  help_desc: 使用此命令可为您的领地设置昵称,以便更轻松地识别领地.
      removed: '&7移除掉领地 %id% 的昵称.'
+
  removed: '&7移除掉领地 %id% 的昵称.'
      set_name: '&7将领地 %id% 的昵称设置为 &b%name%&7.'
+
  set_name: '&7将领地 %id% 的昵称设置为 &b%name%&7.'
      taken: '&7领地昵称 &b%name%&7 已经被使用! 尝试换一个.'
+
  taken: '&7领地昵称 &b%name%&7 已经被使用! 尝试换一个.'
    setparent:
+
setparent:
      help: '&b> &7/ps setparent [region|none]'
+
  help: '&b> &7/ps setparent [region|none]'
      help_desc: 使用此命令可以允许此领地继承其他领地的属性(所有者、成员、权限等)
+
  help_desc: 使用此命令可以允许此领地继承其他领地的属性(所有者、成员、权限等)
      success: '&7已成功设置领地 &b%id%&7 从属于&b%parent%&7.'
+
  success: '&7已成功设置领地 &b%id%&7 从属于&b%parent%&7.'
      success_remove: '&7已成功移除掉领地 &b%id%&7 的从属.'
+
  success_remove: '&7已成功移除掉领地 &b%id%&7 的从属.'
      circular_inheritance: '&c检测到循环继承 (父级已经继承了当前区域?). 父级未设置.'
+
  circular_inheritance: '&c检测到循环继承 (父级已经继承了当前区域?). 父级未设置.'
    merge:
+
merge:
      help: '&b> &7/ps merge'
+
  help: '&b> &7/ps merge'
      help_desc: 使用此命令将您所在的领地与其他重叠领地合并。
+
  help_desc: 使用此命令将您所在的领地与其他重叠领地合并。
      disabled: 配置文件已禁用领地合并!
+
  disabled: 配置文件已禁用领地合并!
      merged: '&b已成功合并领地!'
+
  merged: '&b已成功合并领地!'
      header: '&8&m=====&r 合并 %region% (点击合并) &8&m====='
+
  header: '&8&m=====&r 合并 %region% (点击合并) &8&m====='
      warning: '&7注意: 这将删除当前领地的所有设置!'
+
  warning: '&7注意: 这将删除当前领地的所有设置!'
      not_allowed: '&c不允许合并此类型领地.'
+
  not_allowed: '&c不允许合并此类型领地.'
      into: '&b当前领地与其他可以合并的地区重叠!'
+
  into: '&b当前领地与其他可以合并的地区重叠!'
      no_region: '&7没有重叠的领地可以合并.'
+
  no_region: '&7没有重叠的领地可以合并.'
      click_to_merge: 单击以合并 %region%!
+
  click_to_merge: 单击以合并 %region%!
      auto_merged: '&7自动与 &b%region%&7 合并.'
+
  auto_merged: '&7自动与 &b%region%&7 合并.'
 
</pre>
 
</pre>
 
block1.toml(2.7.0-2020.4.4)
 
block1.toml(2.7.0-2020.4.4)
 
<pre>
 
<pre>
    # 在下面自定义你的保护石
+
# 在下面自定义你的保护石
    # 可用的保护石类型参考这里: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html#
+
# 可用的保护石类型参考这里: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html#
    # --------------------------------------------------------------------------------------------------
+
# --------------------------------------------------------------------------------------------------
    # 如果你想要使用玩家头颅,你可以这样写"PLAYER_HEAD:player_name" (举例: "PLAYER_HEAD:Notch")
+
# 如果你想要使用玩家头颅,你可以这样写"PLAYER_HEAD:player_name" (举例: "PLAYER_HEAD:Notch")
    # 使用自定义玩家头颅,你需要头颅的base64值. 比如在网站minecraft-heads.com上,你可以找到 vaule 值.
+
# 使用自定义玩家头颅,你需要头颅的base64值. 比如在网站minecraft-heads.com上,你可以找到 vaule 值.
    # 使用UUID玩家头颅,请去 https://sessionserver.mojang.com/session/minecraft/profile/PUT-UUID-HERE并且复制 "value" 值(不包括引号).
+
# 使用UUID玩家头颅,请去 https://sessionserver.mojang.com/session/minecraft/profile/PUT-UUID-HERE并且复制 "value" 值(不包括引号).
    # 拿到 value 值之后按照这个格式即可 "PLAYER_HEAD:value"
+
# 拿到 value 值之后按照这个格式即可 "PLAYER_HEAD:value"
    type = "EMERALD_ORE"
+
type = "EMERALD_ORE"
   
+
 
    # 另一种表示保护石的方法
+
# 另一种表示保护石的方法
    # 可以使用 /ps give 和 /ps get 获取
+
# 可以使用 /ps give 和 /ps get 获取
    # 必须是一个词或者数字 (不能有空格)
+
# 必须是一个词或者数字 (不能有空格)
    alias = "64"
+
alias = "64"
   
+
 
    # 是否将保护石的获取方式限制为仅可通过指令/ps get 或者/ps give或者自定义合成配方.
+
# 是否将保护石的获取方式限制为仅可通过指令/ps get 或者/ps give或者自定义合成配方.
    # 其他方法获得的方块 (例如挖矿) 将不能作为保护石使用(比如默认的钻石矿,如果这样关闭了,你精准镐采集的钻石矿是可以直接当成保护石方块来用的,不推荐关闭).
+
# 其他方法获得的方块 (例如挖矿) 将不能作为保护石使用(比如默认的钻石矿,如果这样关闭了,你精准镐采集的钻石矿是可以直接当成保护石方块来用的,不推荐关闭).
    # 可以有效防止玩家从其他渠道获得保护石,这样你就可以在商店出售它
+
# 可以有效防止玩家从其他渠道获得保护石,这样你就可以在商店出售它
    # 如果你想要玩家可以自己获得的话就关闭它
+
# 如果你想要玩家可以自己获得的话就关闭它
    restrict_obtaining = true
+
restrict_obtaining = true
   
+
 
    # 在特定的世界中启用或禁用保护石
+
# 在特定的世界中启用或禁用保护石
    # "blacklist" 模式可防止在世界 "worlds" 使用保护石
+
# "blacklist" 模式可防止在世界 "worlds" 使用保护石
    # "whitelist" 模式仅允许在世界 "worlds" 使用保护石
+
# "whitelist" 模式仅允许在世界 "worlds" 使用保护石
    # 会被权限 protectionstones.admin 权限覆盖 (默认OP拥有)
+
# 会被权限 protectionstones.admin 权限覆盖 (默认OP拥有)
    world_list_type = "blacklist"
+
world_list_type = "blacklist"
     worlds = [
+
worlds = [
         "exampleworld1",
+
    "exampleworld1",
         "exampleworld2"
+
    "exampleworld2"
 +
]
 +
 
 +
# 当世界被限制时,是否阻止保护石的放置 (黑名单 / 白名单)
 +
# 方块将可以正常放置,但是不会被此插件监听.
 +
prevent_block_place_in_restricted_world = true
 +
 
 +
[region]
 +
    # 两个不同玩家所创建的领地最小距离
 +
    # 你需要在不同的保护石配置下修改这个配置,因为不同的保护石领地的大小不同
 +
    # 设置为-1禁用此项,但是会检查是否重叠,重叠还是无法放置
 +
    distance_between_claims = -1
 +
 
 +
    # 保护石的保护半径
 +
    # y_radius设置为-1则是从基岩层到天空255层,如果设置-1无效,请自行更改为255
 +
    # y_radius不是-1时,请将 config.toml 的 "allow_merging_regions" 设置为 false
 +
    x_radius = 64
 +
    y_radius = -1
 +
    z_radius = 64
 +
 
 +
    # 偏移保护石
 +
    # 如果你想讲保护石设置为不在领地的中心,你可以在此处偏移位置
 +
    x_offset = 0
 +
    y_offset = 0
 +
    z_offset = 0
 +
 
 +
    # 自动设置领地家的位置的偏移量,默认在保护石上方
 +
    home_x_offset = 0.0
 +
    home_y_offset = 1.0
 +
    home_z_offset = 0.0
 +
 
 +
    # 设置新创建的领地的默认权限
 +
    # 可以在权限(flag)前面添加 -g [group] 来为指定组设置权限 (例: -g members pvp deny).
 +
    # 支持PAPI变量
 +
    flags = [
 +
        "pvp deny",
 +
        "tnt deny",
 +
        "greeting &l你已进入玩家 &b&l%player% &f&l的领地",
 +
        "farewell &l你已离开玩家 &b&l%player% &f&l的领地",
 +
        "greeting-action &l你已进入玩家 &b&l%player% &f&l的领地",
 +
        "farewell-action &l你已离开玩家 &b&l%player% &f&l的领地",
 +
        "creeper-explosion deny",
 +
    ]
 +
 
 +
    # 在这里列出所有者可以默认可以修改的权限
 +
    # 如果你想给某个组修改的权限, 使用-g (例: "-g all,members pvp" 即关闭其他玩家以及领地成员的PVP)
 +
    # "-g all pvp" - 可以防止玩家将本领地成员设置为成不可攻击
 +
    allowed_flags = [
 +
        "-g all pvp",
 +
        "greeting",
 +
        "greeting-title",
 +
        "greeting-action",
 +
        "farewell",
 +
        "farewell-title",
 +
        "farewell-action",
 +
        "mob-spawning",
 +
        "creeper-explosion",
 +
    ]
 +
 
 +
    # 要隐藏哪些权限,即使用/ps indo无法看到的
 +
    hidden_flags_from_info = [
 +
        "ps-merged-regions",
 +
        "ps-merged-regions-types",
 +
        "ps-block-material",
 +
        "ps-price",
 +
        "ps-landlord",
 +
        "ps-tenant",
 +
        "ps-rent-period",
 +
        "ps-rent-last-paid",
 +
        "ps-for-sale",
 +
        "ps-rent-settings",
 +
        "ps-tax-payments-due",
 +
        "ps-tax-last-payment-added",
 +
        "ps-tax-autopayer"
 +
    ]
 +
 
 +
    # 当前类型保护石的默认优先级
 +
    priority = 0
 +
 
 +
    # 是否允许创建与您的其他领地不重叠/相邻的领地
 +
    # 这是非常危险的,如果你打算设置为true,请好好考虑下
 +
    allow_overlap_unowned_regions = false
 +
 
 +
    # 是否允许玩家与此领地重叠的其他领地
 +
    # "owner" - 仅限所有者创建(默认)
 +
    # "member" - 允许成员和所有者创建. (对于城市建设比较有帮助)
 +
    # "all" - 允许所有玩家创建(危险!)
 +
    # allow_overlap_unowned_regions 不设置为true也会生效
 +
    allow_other_regions_to_overlap = "owner"
 +
 
 +
    # 是否允许此保护石创建的领地合并
 +
    # 开启这项必须先将 config.toml 中的 allow_merging_regions 设置为 true
 +
    allow_merging = true
 +
 
 +
[block_data]
 +
    # 设置保护块的名称,使用/ps give 或者 /ps get 获得
 +
    # 也可以作用于自定义合成物品 (详情看下面 custom_recipe)
 +
    # 设置''则为空
 +
    display_name = "&a&m<---&r&b 64x64 保护石 &r&a&m--->"
 +
 
 +
     # 设置保护块的标签lore,使用/ps give 或者 /ps get 获得
 +
    # 也可以作用于自定义合成物品 (详情看下面 custom_recipe)
 +
    # 设置[]则为空
 +
    lore = [
 +
        "&6(?■_■)ノ? 没能能碰我的东西!",
 +
    ]
 +
 
 +
    # 设置保护石的价格, /ps get 时会自动扣除
 +
    # 要求至少有一款经济插件 (比如 Vault, ie. Essentials)
 +
    price = 0.0
 +
 
 +
    # 是否允许使用自定义配方制作保护石
 +
    allow_craft_with_custom_recipe = false
 +
    # 自定义合成配方
 +
    # 材料代码代码在这里查询: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
 +
    # 你也可以在配方中添加其他保护石作为原料,格式:PROTECTION_STONES:名称
 +
    # ""代表空
 +
    custom_recipe = [
 +
         ["", "STONE", ""],
 +
        ["STONE", "EMERALD", "STONE"],
 +
         ["", "STONE", ""]
 +
    ]
 +
    # 制作出来的保护石数量(比如设置为2则一份材料就可以做出来两个保护石)
 +
    recipe_amount = 1
 +
 
 +
[economy]
 +
    # 此项需要先在config.toml中启动税收 (tax_enabled)
 +
    # 每个周期征收的金额
 +
    tax_amount = 0.0
 +
 
 +
    # 每个税收周期之剑的时间(单位:秒),设置-1禁用税收
 +
    tax_period = -1
 +
 
 +
    # 税收最大延期时间,如果超过这个时间玩家还未缴纳费用,将会受到惩罚(单位:秒)
 +
    tax_payment_time = 86400
 +
 
 +
    # 是否将创建领地的玩家设置成自动纳税人
 +
    start_with_tax_autopay = true
 +
 
 +
    # 租户默认所在的组(可选参数owner member).
 +
    tenant_rent_role = "member"
 +
 
 +
    # 当领地租出去时,此玩家是否仍然是所有者
 +
    landlord_still_owner = true
 +
 
 +
[behaviour]
 +
    # 防止保护石后是否自动隐藏
 +
    auto_hide = false
 +
 
 +
    # 放置后是否自动与其他领地合并(重叠/相邻)
 +
    auto_merge = false
 +
 
 +
    # 删除领地时是否返还保护石
 +
    no_drop = false
 +
 
 +
    # 是否阻止活塞推动方块,建议设置为 true
 +
    prevent_piston_push = true
 +
 
 +
    # 是否阻止爆炸破坏领地石
 +
    # 强烈建议开启
 +
    prevent_explode = true
 +
 
 +
    # 是否关闭爆炸保护,主要用于PVP/派系类服务器
 +
    # 此项要求 prevent_explode 必须是 false
 +
    destroy_region_when_explode = false
 +
 
 +
    # 精准采集: 设置为 true 时, 保护石是矿石时,将禁止被自然挖掘(比如你设置绿宝石矿为保护石,且此项为true,那么自然环境中的绿宝石矿会直接小时你就没法精准采集了)
 +
    # 这是旧版本阻止自然获得保护石方块的方法
 +
    # 建议使用新方法 "Restrict Obtaining" 这项就留着过年吧:)
 +
    prevent_silk_touch = false
 +
 
 +
    # 设置放置保护石的费用 (不同于 /ps get 的费用,这个是在放置的时候扣除的费用)
 +
    cost_to_place = 0.0
 +
 
 +
[player]
 +
    # 是否允许玩家使用shift+右键拆掉保护石
 +
    # 如果保护石是基岩或者命令方块这类无法破坏的方块,这项建议开启.
 +
    allow_shift_right_break = false
 +
 
 +
    # 是否阻止其他玩家传送到保护区 (不包括末影珍珠和紫颂果)
 +
    # 不阻止其他玩家进入, 如果你想彻底阻止玩家进入请自定设置"entry deny"
 +
    # 此项设置会被 protectionstones.tp.bypasstp 权限覆盖
 +
    prevent_teleport_in = false
 +
 
 +
    # 是否开启传送时不可移动,相关指令 /ps home /ps tp. 可以设置为0禁用.
 +
    # 开启之后只有玩家不移动才能传送
 +
    # 拥有权限 protectionstones.tp.bypasswait 可以无视
 +
    no_moving_when_tp_waiting = true
 +
    tp_waiting_seconds = 0
 +
 
 +
    # 是否阻止玩家通过 /ps get 获得此类保护石.
 +
    # 拥有权限 protectionstones.admin 可以无视
 +
    prevent_ps_get = false
 +
 
 +
    # 放置此类保护石是否需要特定的权限 (权限: protectionstones.create)
 +
    #也可以使用 /ps get (权限: protectionstones.get)
 +
    # '' 处写额外权限
 +
    permission = ''
 +
 
 +
[event]
 +
 
 +
    # 事件部分
 +
    # ~~~~~~~~~~~~~~
 +
    # 每一行事件的格式均为 'type: action'
 +
    # 下面是可以使用的类型:
 +
    # player_command - 以玩家身份执行命令
 +
    # console_command - 以控制台身份执行命令
 +
    # message - 向玩家或者控制台发送消息(支持颜色代码)
 +
    # global_message - 向玩所有家或者控制台发送消息(支持颜色代码)
 +
 
 +
    # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 +
    # 是否启用时间跟踪 (API 事件将会启用)
 +
    enable = false
 +
 
 +
    # 创建领地时执行命令 (例:玩家放置保护石)
 +
    on_region_create = [
 +
        'global_message: &l%player% 创建了领地 %region%!',
 +
    ]
 +
 
 +
    # 破坏领地时执行指令 (例:玩家拆除保护石)
 +
    on_region_destroy = [
 +
        'console_command: say %player% 取消了领地 %region%!',
 
     ]
 
     ]
   
 
    # 当世界被限制时,是否阻止保护石的放置 (黑名单 / 白名单)
 
    # 方块将可以正常放置,但是不会被此插件监听.
 
    prevent_block_place_in_restricted_world = true
 
   
 
    [region]
 
        # 两个不同玩家所创建的领地最小距离
 
        # 你需要在不同的保护石配置下修改这个配置,因为不同的保护石领地的大小不同
 
        # 设置为-1禁用此项,但是会检查是否重叠,重叠还是无法放置
 
        distance_between_claims = -1
 
   
 
        # 保护石的保护半径
 
        # y_radius设置为-1则是从基岩层到天空255层,如果设置-1无效,请自行更改为255
 
        # y_radius不是-1时,请将 config.toml 的 "allow_merging_regions" 设置为 false
 
        x_radius = 64
 
        y_radius = -1
 
        z_radius = 64
 
   
 
        # 偏移保护石
 
        # 如果你想讲保护石设置为不在领地的中心,你可以在此处偏移位置
 
        x_offset = 0
 
        y_offset = 0
 
        z_offset = 0
 
   
 
        # 自动设置领地家的位置的偏移量,默认在保护石上方
 
        home_x_offset = 0.0
 
        home_y_offset = 1.0
 
        home_z_offset = 0.0
 
   
 
        # 设置新创建的领地的默认权限
 
        # 可以在权限(flag)前面添加 -g [group] 来为指定组设置权限 (例: -g members pvp deny).
 
        # 支持PAPI变量
 
        flags = [
 
            "pvp deny",
 
            "tnt deny",
 
            "greeting &l你已进入玩家 &b&l%player% &f&l的领地",
 
            "farewell &l你已离开玩家 &b&l%player% &f&l的领地",
 
            "greeting-action &l你已进入玩家 &b&l%player% &f&l的领地",
 
            "farewell-action &l你已离开玩家 &b&l%player% &f&l的领地",
 
            "creeper-explosion deny",
 
        ]
 
   
 
        # 在这里列出所有者可以默认可以修改的权限
 
        # 如果你想给某个组修改的权限, 使用-g (例: "-g all,members pvp" 即关闭其他玩家以及领地成员的PVP)
 
        # "-g all pvp" - 可以防止玩家将本领地成员设置为成不可攻击
 
        allowed_flags = [
 
            "-g all pvp",
 
            "greeting",
 
            "greeting-title",
 
            "greeting-action",
 
            "farewell",
 
            "farewell-title",
 
            "farewell-action",
 
            "mob-spawning",
 
            "creeper-explosion",
 
        ]
 
   
 
        # 要隐藏哪些权限,即使用/ps indo无法看到的
 
        hidden_flags_from_info = [
 
            "ps-merged-regions",
 
            "ps-merged-regions-types",
 
            "ps-block-material",
 
            "ps-price",
 
            "ps-landlord",
 
            "ps-tenant",
 
            "ps-rent-period",
 
            "ps-rent-last-paid",
 
            "ps-for-sale",
 
            "ps-rent-settings",
 
            "ps-tax-payments-due",
 
            "ps-tax-last-payment-added",
 
            "ps-tax-autopayer"
 
        ]
 
   
 
        # 当前类型保护石的默认优先级
 
        priority = 0
 
   
 
        # 是否允许创建与您的其他领地不重叠/相邻的领地
 
        # 这是非常危险的,如果你打算设置为true,请好好考虑下
 
        allow_overlap_unowned_regions = false
 
   
 
        # 是否允许玩家与此领地重叠的其他领地
 
        # "owner" - 仅限所有者创建(默认)
 
        # "member" - 允许成员和所有者创建. (对于城市建设比较有帮助)
 
        # "all" - 允许所有玩家创建(危险!)
 
        # allow_overlap_unowned_regions 不设置为true也会生效
 
        allow_other_regions_to_overlap = "owner"
 
   
 
        # 是否允许此保护石创建的领地合并
 
        # 开启这项必须先将 config.toml 中的 allow_merging_regions 设置为 true
 
        allow_merging = true
 
   
 
    [block_data]
 
        # 设置保护块的名称,使用/ps give 或者 /ps get 获得
 
        # 也可以作用于自定义合成物品 (详情看下面 custom_recipe)
 
        # 设置''则为空
 
        display_name = "&a&m<---&r&b 64x64 保护石 &r&a&m--->"
 
   
 
        # 设置保护块的标签lore,使用/ps give 或者 /ps get 获得
 
        # 也可以作用于自定义合成物品 (详情看下面 custom_recipe)
 
        # 设置[]则为空
 
        lore = [
 
            "&6(?■_■)ノ? 没能能碰我的东西!",
 
        ]
 
   
 
        # 设置保护石的价格, /ps get 时会自动扣除
 
        # 要求至少有一款经济插件 (比如 Vault, ie. Essentials)
 
        price = 0.0
 
   
 
        # 是否允许使用自定义配方制作保护石
 
        allow_craft_with_custom_recipe = false
 
        # 自定义合成配方
 
        # 材料代码代码在这里查询: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
 
        # 你也可以在配方中添加其他保护石作为原料,格式:PROTECTION_STONES:名称
 
        # ""代表空
 
        custom_recipe = [
 
            ["", "STONE", ""],
 
            ["STONE", "EMERALD", "STONE"],
 
            ["", "STONE", ""]
 
        ]
 
        # 制作出来的保护石数量(比如设置为2则一份材料就可以做出来两个保护石)
 
        recipe_amount = 1
 
   
 
    [economy]
 
        # 此项需要先在config.toml中启动税收 (tax_enabled)
 
        # 每个周期征收的金额
 
        tax_amount = 0.0
 
   
 
        # 每个税收周期之剑的时间(单位:秒),设置-1禁用税收
 
        tax_period = -1
 
   
 
        # 税收最大延期时间,如果超过这个时间玩家还未缴纳费用,将会受到惩罚(单位:秒)
 
        tax_payment_time = 86400
 
   
 
        # 是否将创建领地的玩家设置成自动纳税人
 
        start_with_tax_autopay = true
 
   
 
        # 租户默认所在的组(可选参数owner member).
 
        tenant_rent_role = "member"
 
   
 
        # 当领地租出去时,此玩家是否仍然是所有者
 
        landlord_still_owner = true
 
   
 
    [behaviour]
 
        # 防止保护石后是否自动隐藏
 
        auto_hide = false
 
   
 
        # 放置后是否自动与其他领地合并(重叠/相邻)
 
        auto_merge = false
 
   
 
        # 删除领地时是否返还保护石
 
        no_drop = false
 
   
 
        # 是否阻止活塞推动方块,建议设置为 true
 
        prevent_piston_push = true
 
   
 
        # 是否阻止爆炸破坏领地石
 
        # 强烈建议开启
 
        prevent_explode = true
 
   
 
        # 是否关闭爆炸保护,主要用于PVP/派系类服务器
 
        # 此项要求 prevent_explode 必须是 false
 
        destroy_region_when_explode = false
 
   
 
        # 精准采集: 设置为 true 时, 保护石是矿石时,将禁止被自然挖掘(比如你设置绿宝石矿为保护石,且此项为true,那么自然环境中的绿宝石矿会直接小时你就没法精准采集了)
 
        # 这是旧版本阻止自然获得保护石方块的方法
 
        # 建议使用新方法 "Restrict Obtaining" 这项就留着过年吧:)
 
        prevent_silk_touch = false
 
   
 
        # 设置放置保护石的费用 (不同于 /ps get 的费用,这个是在放置的时候扣除的费用)
 
        cost_to_place = 0.0
 
   
 
    [player]
 
        # 是否允许玩家使用shift+右键拆掉保护石
 
        # 如果保护石是基岩或者命令方块这类无法破坏的方块,这项建议开启.
 
        allow_shift_right_break = false
 
   
 
        # 是否阻止其他玩家传送到保护区 (不包括末影珍珠和紫颂果)
 
        # 不阻止其他玩家进入, 如果你想彻底阻止玩家进入请自定设置"entry deny"
 
        # 此项设置会被 protectionstones.tp.bypasstp 权限覆盖
 
        prevent_teleport_in = false
 
   
 
        # 是否开启传送时不可移动,相关指令 /ps home /ps tp. 可以设置为0禁用.
 
        # 开启之后只有玩家不移动才能传送
 
        # 拥有权限 protectionstones.tp.bypasswait 可以无视
 
        no_moving_when_tp_waiting = true
 
        tp_waiting_seconds = 0
 
   
 
        # 是否阻止玩家通过 /ps get 获得此类保护石.
 
        # 拥有权限 protectionstones.admin 可以无视
 
        prevent_ps_get = false
 
   
 
        # 放置此类保护石是否需要特定的权限 (权限: protectionstones.create)
 
        #也可以使用 /ps get (权限: protectionstones.get)
 
        # '' 处写额外权限
 
        permission = ''
 
   
 
    [event]
 
   
 
        # 事件部分
 
        # ~~~~~~~~~~~~~~
 
        # 每一行事件的格式均为 'type: action'
 
        # 下面是可以使用的类型:
 
        # player_command - 以玩家身份执行命令
 
        # console_command - 以控制台身份执行命令
 
        # message - 向玩家或者控制台发送消息(支持颜色代码)
 
        # global_message - 向玩所有家或者控制台发送消息(支持颜色代码)
 
   
 
        # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
        # 是否启用时间跟踪 (API 事件将会启用)
 
        enable = false
 
   
 
        # 创建领地时执行命令 (例:玩家放置保护石)
 
        on_region_create = [
 
            'global_message: &l%player% 创建了领地 %region%!',
 
        ]
 
   
 
        # 破坏领地时执行指令 (例:玩家拆除保护石)
 
        on_region_destroy = [
 
            'console_command: say %player% 取消了领地 %region%!',
 
        ]
 
 
</pre>
 
</pre>
 
== 常见问题 ==
 
== 常见问题 ==
黑色为原作者/蓝色为我(搬运工)的回答
+
'''黑色为原作者/蓝色为我(搬运工)的回答'''
Q:添加新保护石出现错误怎么办?
+
Q:添加新保护石出现错误怎么办?<br />
A:通过控制台检查错误,大部分情况下都是以为书写不规范导致的,如果你不了解toml语法可以去这里学习https://github.com/toml-lang/toml,或者问我(这里是原作者不是我你们不要问我我不知道233). 另一个已知的问题就是windows自带的记事本会导致编码错误,请不要使用记事本,推荐使用更好的文本编辑器(比如notepad++)。
+
A:通过控制台检查错误,大部分情况下都是以为书写不规范导致的,如果你不了解toml语法可以去这里学习https://github.com/toml-lang/toml,或者问我(这里是原作者不是我你们不要问我我不知道233). 另一个已知的问题就是windows自带的记事本会导致编码错误,请不要使用记事本,推荐使用更好的文本编辑器(比如vscode)。<br />
Q:为什么我从创造背包拿出来的保护石没有作用?(我已经放下它了)
+
Q:为什么我从创造背包拿出来的保护石没有作用?(我已经放下它了)<br />
A:从2.0.0版本之后,restrict-obtaining是默认开启的,这就意味着你只能使用/ps get或者/ps give获得保护石(或者其他可以调动这个API的插件),因为它们是带有NBT数据的方块,常规情况下获得的方块是没有NBT的,所以是无效的。你可以将restrict-obtaining设置为false来避免这种情况。
+
A:从2.0.0版本之后,restrict-obtaining是默认开启的,这就意味着你只能使用/ps get或者/ps give获得保护石(或者其他可以调动这个API的插件),因为它们是带有NBT数据的方块,常规情况下获得的方块是没有NBT的,所以是无效的。你可以将restrict-obtaining设置为false来避免这种情况。<br />
Q:我如何在商店出售保护石?
+
Q:我如何在商店出售保护石?<br />
A:出售保护石有很多种方法,最简单的方法就是在配置文件设定好价格使用/ps get获取;当然你也可以使用其他插件来搭配进行/ps give指令使用,比如说shopchest chestcommands bossshop trmenu 等等菜单/商店插件(我自己加了一些)。
+
A:出售保护石有很多种方法,最简单的方法就是在配置文件设定好价格使用/ps get获取;当然你也可以使用其他插件来搭配进行/ps give指令使用,比如说shopchest chestcommands bossshop trmenu 等等菜单/商店插件(我自己加了一些)。<br />
Q:为什么玩家看不到合并菜单?
+
Q:为什么玩家看不到合并菜单?<br />
A:你需要给玩家protectionstones.merge权限
+
A:你需要给玩家protectionstones.merge权限<br />
Q:为什么有一些权限(flag)适用于成员?比如说(block-break deny)。
+
Q:为什么有一些权限(flag)适用于成员?比如说(block-break deny)。<br />
A:默认权限(flag)适用于每一个玩家,包括该领地的成员,你必须使用组(-g)来进行单独的权限设置才可以,可以参考http://worldguard.enginehub.org/en/latest/regions/flags
+
A:默认权限(flag)适用于每一个玩家,包括该领地的成员,你必须使用组(-g)来进行单独的权限设置才可以,可以参考http://worldguard.enginehub.org/en/latest/regions/flags<br />
Q:玩家已经创建领地了,但是我想更改它使用的这种方块的属性,我该怎么做?
+
Q:玩家已经创建领地了,但是我想更改它使用的这种方块的属性,我该怎么做?<br />
 
A:你可以使用指令 /ps adminchangeblock [world] [fromblock] [toblock] 来达到你想要的效果。只需要你提前创建好一个新的保护石配置文件(block.toml file) 然后重载,使用指令将旧保护石替换为新保护石即可,完成之后你就可以删除旧保护石配置了
 
A:你可以使用指令 /ps adminchangeblock [world] [fromblock] [toblock] 来达到你想要的效果。只需要你提前创建好一个新的保护石配置文件(block.toml file) 然后重载,使用指令将旧保护石替换为新保护石即可,完成之后你就可以删除旧保护石配置了
Q:为什么xxx权限(flag) 无效?
+
Q:为什么xxx权限(flag) 无效?<br />
A:权限相关的是由WorldGuard提供的,可能它的设置跟你想象的不太一样,想要具体了解的话可以参考这里https://worldguard.enginehub.org/en/latest/regions/flags/
+
A:权限相关的是由WorldGuard提供的,可能它的设置跟你想象的不太一样,想要具体了解的话可以参考这里https://worldguard.enginehub.org/en/latest/regions/flags/<br />
Q:我发现了一个BUG,该怎么修复它?
+
Q:我发现了一个BUG,该怎么修复它?<br />
A:请把相关报错,服务端版本等相关信息回复在spigot讨论页面 或者github的issue里面
+
A:请把相关报错,服务端版本等相关信息回复在spigot讨论页面 或者github的issue里面<br />
不要联系我,我只是个搬运工,我不会修插件= v =
+
不要联系我,我只是个搬运工,我不会修插件= v =<br />
Q:我想要一个新的功能!
+
Q:我想要一个新的功能!<br />
A:请回复在spigot讨论页面 或者github的issue里面. 新功能不一定会增添到这个插件里面,可能会用同样的API制作新的插件。
+
A:请回复在spigot讨论页面 或者github的issue里面. 新功能不一定会增添到这个插件里面,可能会用同样的API制作新的插件。<br />
Q:有开发人员API吗?
+
Q:有开发人员API吗?<br />
A:肯定的啊!不过目前处于测试阶段,所以肯定会改变方法,你可以在这里看到相关内容https://github.com/espidev/ProtectionStones/wiki/API
+
A:肯定的啊!不过目前处于测试阶段,所以肯定会改变方法,你可以在这里看到相关内容https://github.com/espidev/ProtectionStones/wiki/API<br />
Q:有汉化错误怎么办?
+
Q:有汉化错误怎么办?<br />
 
A:论坛私信我,因为是我真正意义上的第一款搬运插件,所以难免会有错误或者语句不通顺
 
A:论坛私信我,因为是我真正意义上的第一款搬运插件,所以难免会有错误或者语句不通顺
  
 
<ref>[https://www.mcbbs.net/forum.php?mod=viewthread&tid=1007708 MCBBS]</ref>
 
<ref>[https://www.mcbbs.net/forum.php?mod=viewthread&tid=1007708 MCBBS]</ref>

Revision as of 21:38, 12 November 2021

保护石
中文名保护石
外文名ProtectionStones
作者AxelDios
插件类型Spigot / CraftBukkit
最新版本1.9j
兼容服务端Spigot/Paper
前置插件WorldGuard, WorldEdit
源地址https://dev.bukkit.org/projects/protectionstones

简介

ProtectionStones是一个功能强大,自定义性很强的领地插件
★ 包括但不仅限于:
操作简单,适合新手,免除圈地麻烦
自由出租、出售,自由交易领地
多领地合并,管理更方便
领地税收,还原国家级待遇
自由添加保护石
自由更改获得方式,要求资金
可自定义配方,且可以多层升级
点击式更改权限,免除指令麻烦
......

原文

    Ever needed an easy, yet powerful way to prevent grief, and protect a certain area?
    
    This plugin allows players to protect land using a block that they place down. It creates a WorldGuard region at a set radius (configurable) around where the block is placed. The plugin also allows players to add and remove people to the region, as well as set flags (defined in the config).

前置要求

插件 版本 需求性
WorldGuard 7+ 必须
WorldEdit 7+ 必须
Vault * 可选(没有的话无法使用经济相关系统)
PlaceholderAPI * 可选

安装

确保你已经把上面的必须前置安装完之后再进行这一步
下载插件并放到你的plugins文件夹下,运行服务器生成配置文件
添加新的保护石:打开plugins/ProtectionStones/blocks,复制默认保护石文件block1.toml,按照原有格式自行更改,然后保存退出
配置权限:各种默认权限决定玩家创建后默认可以做的事,ProtectionStones采用的是worldguard的保护机制,这意味着起保护作用的是worldguard,所以你可以设置的权限也是worldguard,具体可以参考这里
★另外,ProtectionStones支持worldguard的flag(权限)相关的拓展
原文

To install ProtectionStones, make sure youhave the requirements above already installed. You can simply just add theplugin to the plugins folder, and it will generate the default configuration.

Adding new blocks:
To add new protection blocks, go intoplugins/ProtectionStones/blocks, and copy and paste the default block1.tomlfile and rename it (ex. block2.toml). Then, you have to change the"type" and "alias" fields in the new  block config, sincethere cannot be duplicates.

Configuring flags:
Flags allow for customisation of regionbehaviour. ProtectionStones uses WorldGuard flags, meaning that WorldGuard isactually doing the protecting, not ProtectionStones. You can view the list ofWorldGuard flags here.

It is also possible to use other pluginsthat add flags to WorldGuard, such as WorldGuard Extra Flags and use them inProtectionStones.

Permissions:
The permission list is on the wiki:https://github.com/espidev/ProtectionStones/wiki/Permissions. By default, nopermissions are given to players, so you have to add them explicitly. You canalso view the recommended   permissions to give for commands here.

Other Recommendations:
WorldGuard by default prevents hoppers fromgoing between regions. I recommend setting "ignore-hopper-item-move-events"in WorldGuard's config to false to fix this.

If you want to protect against water andlava flow, you can set "high-frequency-flags" and"protect-against-liquid-flow" to true in WorldGuard's config.

WorldGuard config: https://worldguard.readthedocs.io/en/latest/config/

Default Config Files:
Wiki:https://github.com/espidev/ProtectionStones/wiki/Configuration

Translated Versions of messages.yml:
Interested in having the plugin messages ina different language? Users have contributed translated versions of themessages.yml file. Contact me if you want to supply a messages.yml file in adifferent language!
https://github.com/espidev/ProtectionStones/wiki/Translated-messages.yml

指令大全

普通指令

指令 权限 描述
ps get [block] protectionstones.get 获得一个保护石(扣除金币,需要设置)
ps give [block] [player] protectionstones.give 给与一个保护石(不扣除金币)
owners|flags protectionstones.info 所有者| 权限
remove [playername] protectionstones.members 增加/删除一位成员
removeowner [playername] protectionstones.owners 增加/删除一位所有者
null|default] protectionstones.flags 设为领地权限
rent|stopleasing|stoprenting] protectionstones.rent 租赁/出租/停止租赁/停止出租
ps tax protectionstones.tax 税收相关指令
ps buy protectionstones.buysell 购买你所在的领地
stop] protectionstones.buysell 出售你所在的领地并设定价格/停止出售领地
ps hide protectionstones.hide 隐藏保护石
ps unhide protectionstones.unhide 取消隐藏保护石
none] protectionstones.setparent 为当前区域设置父级,不懂查这里
none] protectionstones.name 为领地设置名称/取消名称
id (optional)] protectionstones.home 传送回领地
ps sethome protectionstones.sethome 设置领地家传送地点
player] [num (optional)] protectionstones.tp 传送到某个领地/某个玩家的领地
ps toggle protectionstones.toggle 开启/关闭保护石放置提示信息
ps view protectionstones.view 开启/关闭保护石放置提示信息
ps unclaim protectionstones.unclaim 放弃/删除领地
null] protectionstones.priority 设置领地优先级
remove|disown] [player] protectionstones.region 管理指令,不建议给玩家使用指令查询或者编辑其他玩家或者自己领地的相关信息
ps list [playername (optional)] protectionstones.list 列出你/其他玩家所拥有的的领地
ps count [playername (optional)] protectionstones.count 列出你/其他玩家所拥有的的领地数量
ps merge protectionstones.merge 与邻近领地合并


管理员指令

/ps admin help protectionstones.admin 查看管理帮助菜单 /ps admin version protectionstones.admin 查看插件当前版本 /ps admin hide|unhide protectionstones.admin 隐藏/取消隐藏当前世界所有保护石 /ps admin cleanup remove [days] [world (console)] protectionstones.admin 清理掉长期不上线玩家的领地(天数自定义)以及没有所有人的领地 /ps admin cleanup disown [days] [world (console)] protectionstones.admin 清理掉长期不上线玩家的领地(天数自定义) /ps admin flag [world] [flag] [value|null|default] protectionstones.admin 给当前世界上所有领地设置权限 /ps admin lastlogon [player] protectionstones.admin 获取玩家上次登陆时间 /ps admin lastlogons protectionstones.admin 列出所有玩家最后一次登录的信息 /ps admin stats [player (optional)] protectionstones.admin 显示插件统计数据 /ps admin recreate protectionstones.admin 重新创建所有领地(用于配置文件更改时) /ps admin settaxautopayers protectionstones.admin 为所有没有税收的领地增加自动收税系统 /ps admin forcemerge [world] protectionstones.admin 对某个世界上所有重叠的为同一所有者的领地进行合并 /ps admin changeblock [world] [fromblockalias] [toblockalias] protectionstones.admin 将某个世界某种保护石更换为另一种保护石 /ps admin fixregions protectionstones.admin 使用此指令修复当前世界所有错误的领地,在出错的时候很有用 /ps reload protectionstones.admin 重载插件配置文件 权限 本插件没有默认权限,需要手动给予,各位服主参考下面自行斟酌是否给予权限

权限 描述 是否推荐给玩家 protectionstones.create 允许玩家创建领地 是 protectionstones.destroy 允许玩家删除领地(会删除保护石) 是 protectionstones.merge 允许玩家合并领地 是 protectionstones.unclaim 允许玩家取消领地(会保留保护石) 是 protectionstones.view 允许玩家使用/ps view 是 protectionstones.info 允许玩家使用/ps info 是 protectionstones.info.others 允许玩家在其他玩家的领地使用/ps info 否 protectionstones.get 允许玩家使用/ps get. 否,除非你已经设置了价格 protectionstones.give 允许玩家使用/ps give (以管理员权限给予保护石). 否 protectionstones.count 允许玩家使用/ps count. 是 protectionstones.count.others 允许玩家使用/ps count [player]. 是 protectionstones.list 允许玩家使用/ps list. 是 protectionstones.list.others 允许玩家使用/ps list [player] 否 protectionstones.hide 允许玩家隐藏保护石 是 protectionstones.unhide 允许玩家取消隐藏保护石 是 protectionstones.setparent 允许玩家使用/ps setparent 是 protectionstones.setparent.others 允许玩家对其他玩家领地使用/ps setparent 否 protectionstones.name 允许玩家使用/ps name 是 protectionstones.home 允许玩家使用/ps home 是 protectionstones.sethome 允许玩家使用/ps sethome 是 protectionstones.tp 允许玩家使用/ps tp 否 protectionstones.tp.bypasswait 允许玩家使用/ps home以及/ps tp时无视等待时间 否 protectionstones.tp.bypassprevent 无视配置文件的设置: prevent_teleport_in 否 protectionstones.priority 允许玩家设置领地优先级 否 protectionstones.owners 允许玩家增加/删除所有者 允许玩家使用/ps info owners 是 protectionstones.members 允许玩家增加/删除成员 允许玩家使用/ps info members 是 protectionstones.flags 允许玩家设置领地权限 是 protectionstones.flags.edit.[flag] 设置为false时禁止掉玩家对某个特定权限的设定权限(例: protectionstones.flags.edit.tnt)以便禁止玩家修改某项设定 此项权限会覆盖 allowed_flags 的设定 自行斟酌 protectionstones.buysell 允许玩家使用 /ps buy 以及 /ps sell. 是 protectionstones.tax 允许玩家使用/ps tax 是 protectionstones.rent 允许玩家使用/ps rent 是 protectionstones.toggle 允许玩家切换保护石提示信息 否 protectionstones.region 允许玩家使用/ps region 否 protectionstones.adjacent.x 此项设置要求regions_must_be_adjacent为true 设置玩家最大可拥有的不相邻领地数目 -1表示无限个 自行斟酌 protectionstones.admin 允许使用/ps admin 以及/ps reload 否 protectionstones.limit.x 设置玩家最大可以拥有的领地数量,x只能是整数,如果不想限制,就不要给予这类权限 自行斟酌 protectionstones.limit.alias.x 设置玩家最多可以自定义多少个领地的别名,x只能是整数,如果不想限制,就不要给予这类权限 自行斟酌 protectionstones.superowner 允许玩家覆盖所有者权限,设置成自己的领地(类似setowner作用) 否

变量 一共有两种引用领地的方法 %protectionstones_currentregion_...% - 当前玩家所在领地 %protectionstones_region_[identifier]_...% - 通过名称/ID搜索到的领地

下面是...部分可以填入的参数

参数 描述 owners List of owners, separated by comma and space. members List of members, separated by comma and space. name The name of the region, or the id if there isn't one set. id The id of the region. type The block type of the region. alias The region's alias type. is_hidden Whether or not the protection block is hidden. home_location The location of the region's home. is_for_sale Whether or not the region is for sale. rent_stage The rent stage of the region. landlord The region's landlord if it is being rented out. rent_period The period for rent payments. rent_amount The amount tenants pay per rent period. sale_price The price as to which the region is on sale for. tax_owed How much tax is unpaid for this region. tax_autopayer The region's configured autopayer. flags The list of flags of the region. flags_[flag] Where [flag] is the name of the flag you want to get the value of.


PAPI变量

据作者所说,所有配置都可以显示为PAPI变量,引用他们的办法就是在通用引用变量后面加上这个部分的参数。 比如说你要引用某种保护石的价格,那就就是%protectionstones_config_block_[alias]_block_data_price%。 alias指保护石的名称,格式基本相同,举一反三即可。

全局配置变量

引用方法:

%protectionstones_config_...%

特殊格式变量:

%protectionstones_config_economy_max_rent_period_pretty%
%protectionstones_config_economy_min_rent_period_pretty%

保护石配置变量

引用方法:

%protectionstones_config_block_[alias]_...%
%protectionstones_currentregion_config_...%
%protectionstones_region_[identifier]_config_...%

可以填入的参数:

economy_tax_period_pretty
economy_tax_payment_time_pretty

玩家变量

引用方法:

%protectionstones_currentplayer_...%

可以填入的参数

global_region_limit	当前玩家所在领地最大人数,-1表示无限制
region_limit_[alias]	特定类型保护块的最大限制 (用保护石名称替换[alias])

配置文件

config.toml(2.7.0-2020.4.4)

# 不要更改配置文件版本,除非你知道你在做什么!
config_version = 12
uuidupdated = true

# ---------------------------------------------------------------------------------------
# 保护石配置
# 方块配置已经移到 blocks 文件夹下了
# 如果要创建新的保护石方块,复制 block1.toml 重命名然后按照原格式修改即可
# 如果你的配置文件看起来比较乱可能是因为配置文件的逐步更新,如果想调整回来考虑用默认配置文件(汉化会掉)
# 如果你需要默认配置,可以去 https://github.com/espidev/ProtectionStones/tree/master/src/main/resources 查看
# ---------------------------------------------------------------------------------------

# 防止保护石的冷却时间 (单位:秒) 设置 -1 禁用此项
placing_cooldown = -1

# 设置为 true 将不会阻止服务器通过UUID缓存启动
# 在缓存加载完成之前/ps add 和 /ps remove 指令在离线模式(offline)下将会失效
async_load_uuid_cache = false

# 是否允许领地有相同的名字 (相关指令/ps name).
# 如果设置为 true ,允许玩家创建相同名称的领地,但必须在领地名称后面增加数字
allow_duplicate_region_names = false

# /ps view 指令的冷却间隔
# 可以防止滥用指令导致的滞后
ps_view_cooldown = 10

# 保护石插件的基础指令 (如果指令冲突时可以更改这里,比如和plotsquared就冲突)
base_command = "ps"

# 命令别称
aliases = [
    "pstone",
    "protectionstone",
    "protectionstones"
]

# 当你删除领地的时候,如果你的背包满了,是否将物品丢出来 (相关指令/ps unclaim)
# 设置为 false 时,如果背包已满,将会阻止你删除领地,并发送提示信息
drop_item_when_inventory_full = true

# 放置新的保护石是否必须与玩家已经拥有的保护石的范围相邻或者重叠
# 这项设置可以让世界变得更简洁并且减少分散的居住点
# 玩家可以创建最多不相邻的领地数量的权限为 protectionstones.region.adjacent.x (默认值:1 设置-1无视此项)
# 当然如果你有权限 protectionstones.admin 也可以绕过 :)
regions_must_be_adjacent = false

# 是否允许玩家将新领地与老的领地合并创建一个新的更大的领地(重叠情况下)
# 拥有权限 protectionstones.admin 可以将任意领地合并(包括其他玩家的!)
# 合并区域需要权限 protectionstones.merge 才能使用 (相关指令/ps merge)
# 注意: 由于WorldGuard插件的限制,合并区域将会自动忽略Y周范围,更改为0-255
# 因为多边形区域只能是二维的,不能是三维
allow_merging_regions = true

# 是否允许合并的区域中间有一部分区域不受保护
# 只会在合并过程中生效,不会影响已经合并且中间有未领地域的领地
allow_merging_holes = true

[economy]
    # 设置租用价格限制. 设置为-1禁用此项
    max_rent_price = -1.0
    min_rent_price = 1.0

    # 设置租用支付租金的间隔,单位秒 (86400 秒 = 1 天). 设置-1禁用此项
    max_rent_period = -1
    min_rent_period = 1

    #是否开启领地税收
    # 税收配置可以在每个保护块的配置文件更改
    # 是否启用 tax相 关指令
    # 如果你有自己的领地,你可以给每一个领地设置一个"自动玩家"(指自动收取税收的玩家
    # 可以通过指令 /ps admin settaxautopayers 设置,这将更新服务器中所有的领地
    tax_enabled = true

    # 未缴纳税收时,是否在玩家加入游戏时通知他们
    tax_message_on_join = true

message.yml(2.7.0-2020.4.4)

cooldown: '&6警告: &7请等待 %time% 秒之后再放置保护石!'
no_such_command: '&c指令无效. 请使用 /ps help 查看帮助'
no_access: '&c您不能这么做.'
no_room_in_inventory: '&c您的背包没有足够的空间.'
no_room_dropping_on_floor: '&c您的背包空间不足,已将保护石散落在地面上'
invalid_block: '&c无效的保护石.'
not_enough_money: '&c您没有足够的钱! 您需要 %price%.'
paid_money: '&b您支付了 $%price%.'
invalid_world: '&c无效世界.'
must_be_player: '&c只有玩家才能执行这个命令.'
go_back_page: 返回上一页.
go_next_page: 前往下一页.
help: |-
  &8&m=====&r 保护石 帮助菜单 &8&m=====
  &b> &7/ps help
help_next: '&7使用 /ps help %page% 查看下一页帮助!'
command_requires_player_name: '&c此命令需要输入玩家名称.'
no_permission_toggle: '&c您没有权限使用切换指令的权限.'
no_permission_create: '&c您没有权限防置保护石.'
no_permission_destroy: '&c您没有权限破坏保护石'
no_permission_members: '&c您没有使用成员命令的权限.'
no_permission_owners: '&c您没有使用所有者命令的权限.'
no_permission_admin: '&c您没有使用该命令的权限.'
no_permission_count: '&c您没有使用该命令的权限.'
no_permission_count_others: '&c您没有使用该命令的权限.'
no_permission_flags: '&c您没有使用权限命令的权限.'
no_permission_per_flag: '&c您没有使用该权限的权限.'
no_permission_rent: '&c您没有租用的权限.'
no_permission_tax: '&c您没有使用税收命令的权限.'
no_permission_buysell: '&c您没有买卖领地的权限.'
no_permission_unhide: '&c您没有取消隐藏保护石的权限.'
no_permission_hide: '&c您没有隐藏保护石的权限.'
no_permission_info: '&c您没有使用领地信息命令的权限.'
no_permission_priority: '&c您没有使用优先级命令的权限.'
no_permission_region: '&c您没有使用领地命令的权限.'
no_permission_tp: '&c您没有传送到其他玩家的领地的权限.'
no_permission_home: '&c你没有权限传送到你的保护石.'
no_permission_unclaim: '&c您没有使用取消声明命令的权限.'
no_permission_view: '&c您没有使用视图命令的权限.'
no_permission_give: '&c您没有使用给予命令的权限.'
no_permission_get: '&c您没有使用获得命令的权限.'
no_permission_sethome: '&c您没有使用设置家命令的权限.'
no_permission_list: '&c您没有使用列表命令的权限.'
no_permission_list_others: '&c您没有查看其他人列表的权限.'
no_permission_name: '&c您没有使用命名命令的权限.'
no_permission_setparent: '&c您没有使用设置从属命令的权限.'
no_permission_setparent_others: '&c您没有从其他人的区域继承的权限.'
no_permission_merge: '&c您没有权限使用 /ps merge.'
psregion:
  added_to_region: '&b%player%&7 已添加到此领地.'
  added_to_region_specific: '&b%player%&7 已添加到领地 %region%.'
  removed_from_region: '&b%player%&7 已从该领地中删除.'
  removed_from_region_specific: '&b%player%&7 已从领地 %region% 中删除.'
  not_in_region: '&c你不在领地!'
  player_not_found: '&c玩家无效.'
  not_ps_region: '&c不是领地.'
  region_does_not_exist: '&c领地不存在.'
  no_regions_owned: '&c当前世界您没有领地!'
  no_region_permission: '&c您没有在此领地执行此操作的权限.'
  protected: '&b此区域现已被保护.'
  no_longer_protected: '&e此区域不再被保护.'
  cant_protect_that: '&c你不能保护那个区域.'
  reached_region_limit: '&c您不能拥有更多的领地了,已达限制 (%limit%).'
  reached_per_block_region_limit: '&c您不拥有更多此类型的领地,已达限制(%limit%).'
  world_denied_create: '&c你不能在这个世界上创建领地.'
  region_overlap: '&c不能在此处放置保护石,因为它与另一个区域重叠.'
  region_too_close: '&c您的领地距离其他人的太近了,至少保持%num% 格远!'
  cant_teleport: '&c您的传送被领地拒绝!'
  specify_id_instead_of_alias: |-
    &7找到多个带有此名称的领地!请使用 ID 替换
     具有此名称的区领地: &b%regions%
  region_not_adjacent: '&c您距离您已创建的领地太远了!尝试将保护石靠近已拥有的其他领地.'
  not_overlapping: '&c这些领地不会相互重叠!'
  multi_region_does_not_exist: 其中一个领地不存在!
  no_region_holes: '&c领地内检测到未受保护的区域!这是禁止的!'
  delete_region_prevented: '&7无法删除该区域,可能是因为在现有领地中有未被保护的区域.'
  not_owner: '&c您不是此把湖区的所有者!'
  cannot_merge_rented_region: '&c无法合并区域,因为区域 %region% 正在出租中!'
  no_permission_region_type: '&c您没有使用此领地类型的权限.'
  hidden: '&7保护石已被隐藏.'
toggle:
  help: '&b> &7/ps toggle'
  help_desc: 使用此命令打开或关闭保护石放置信息.
  toggle_on: '&b保护石放置信息已打开.'
  toggle_off: '&b保护石放置信息已关闭.'
count:
  count_help: '&b> &7/ps count [player (optional)]'
  count_help_desc: 查看您或其他玩家拥有的领地数.
  personal_region_count: '&7当前世界您拥有的领地数目: &b%num%'
  personal_region_count_merged: '&7- 包括合并领地: &b%num%'
  other_region_count: '&7%player%在当前世界所拥有的领地数目: &b%num%'
  other_region_count_merged: '&7- 包括合并领地: &b%num%'
flag:
  help: '&b> &7/ps flag [flagname] [value|null|default]'
  help_desc: 使用此命令在您的领地中设置权限.
  flag_set: '&b%flag%&7 权限已被设置'
  flag_not_set: '&b%flag%&7 权限已被取消. 请检查您的数值.'
  gui_header: '&8&m=====&r 权限 (点击更改) &8&m====='
  gui_hover_set: '&b点击设置.'
  gui_hover_set_text: |-
    &b点击更改.&f
    当前设置:
    %value%
  hover_change_group: 单击以将此权限设置为仅应用于 %group%.
  hover_change_group_null: '&c在更改组之前,必须先设置此权限值.'
rent:
  help: '&b> &7/ps rent'
  help_desc: 使用此命令管理租金 (买卖).
  help_header: '&8&m=====&r 租赁帮助 &8&m====='
  already_renting: '&c这个领地已经被租出去了!您必须先停止租赁该领地.'
  not_rented: '&c此领地拒绝出租.'
  lease_success: |-
    &b领地租赁条款设定:
    &b价格: &7%price%
    &b付款方式: &7%period%
  stopped: '&b租赁停止.'
  evicted: '&7已被逐出的租户 %tenant%.'
  not_renting: '&c此领地未出租给租户.'
  paid_landlord: '&b%tenant%&7 &7已经为 &b%region% 支付 &b$%price%&7.'
  paid_tenant: '&7已向领地 &b%region% &7的&b %landlord% &7支付&b $%price%&7.'
  renting_landlord: '&b%player%&7 现在正在出租领地 &b%region%&7.'
  renting_tenant: '&7你现在正在出租领地 &b%region%&7 价格: &b%price%&7 每&b%period%&7.'
  not_tenant: '&c您不是此领地的租户!'
  tenant_stopped_landlord: '&b%player%&7 已停止出租领地 &b%region%&7. 现在可供其他玩家租用.'
  tenant_stopped_tenant: '&b您已停止出租领地 %region%.'
  being_sold: '&c该领地正在出售! 先使用 /ps sell stop.'
  evict_no_money_tenant: '&7您已经被领地 &b%region% &7&cevicted 由于您没有足够的钱来还清租金,至少需要 %price%.'
  evict_no_money_landlord: '&b%tenant%&7 已经从领地 &b%region%&7 &cevicted& 因为他们无法支付租金.'
  cannot_rent_own_region: '&c您不能租用自己的领地!'
  reached_limit: '&c您已达到最多租用领地的上限!'
  price_too_low: '&c租金太低 (必须大于 %price%).'
  price_too_high: '&c租金太高 (必须低于 %price%).'
  period_too_short: '&c租期太短 (必须大于 %period% 秒).'
  period_too_long: '&c租期太长 (必须小于 %period% 秒).'
  period_invalid: '&c无效的时间格式!示例: 24h 即一天.'
  cannot_break_while_renting: '&c领地已被租出,您无法破坏该领地.'
tax:
  help: '&b> &7/ps tax'
  help_desc: 使用此命令管理和支付税收.
  help_header: '&8&m=====&r 税收帮助 &8&m====='
  disabled_region: '&c禁用此领地的税款.'
  set_as_autopayer: '&7领地 &b%region% &7的税收将自动从您的余额中扣除'
  set_no_autopayer: '&7领地 &b%region% &7的税收现在必须手动支付.'
  paid: '&7已为领地 &b%region%&7 支付 &b$%amount%.'
  info_header: '&8&m=====&r 税收信息 (点击查看更多信息) &8&m====='
  join_msg_pending_payments: |-
    &7您有 &b$%money%&7 税收待支付!
    使用/ps tax info 查看更多信息 .
  player_region_info: '&7> &b%region%&7 - &6待缴纳: &3$%money% '
  player_region_info_autopayer: '&7> &b%region%&7 - &6待缴纳 &7(自动扣除) &3$%money%'
  click_to_show_more_info: 单击以显示更多信息.
  region_info_header: '&8&m=====&r %region% 税收信息 &8&m====='
  region_info: |-
    &9税率: &7$%taxrate% (所有合并的领地的总和)
    &9税周期之间的时间: &7%taxperiod%
    &9税周期纳税时间: &7%taxpaymentperiod%
    &9税收自动纳税人: &7%taxautopayer%
    &9欠税: &7$%taxowed%
  next_page: '&7使用 /ps tax info -p %page% 查看下一页!'
buy:
  help: '&b> &7/ps buy'
  help_desc: 购买您当前所在的领地.
  not_for_sale: '&c此领地不出售.'
  stop_sell: '&7该领地现在不出售.'
  sold_buyer: '&7从 &b%player% &7以 &b$%price% &7购买了领地 &b%region%&7.'
  sold_seller: '&7从 &b%player% &7以 &b$%price% &7出售了领地 &b%region%&7.'
sell:
  help: '&b> &7/ps sell [price|stop]'
  help_desc: 卖掉你当前所在的领地.
  rented_out: '&c这个地区被租出去了!你必须停止出租它才能出售.'
  for_sale: '&7该领地现在正以 &b$%price% &7的价格出售.'
visibility:
  hide_help: '&b> &7/ps hide'
  hide_help_desc: 使用此命令隐藏或取消隐藏保护石.
  unhide_help: '&b> &7/ps unhide'
  unhide_help_desc: 使用此命令隐藏或取消隐藏保护石.
  already_not_hidden: '&7保护石已经取消隐藏了!'
  already_hidden: '&7保护石已经隐藏了!'
info:
  help: '&b> &7/ps info members|owners|flags'
  help_desc: 在领地内使用此命令以查看有关它的详细信息.
  header: '&8&m=====&r 领地信息 &8&m====='
  type: '&9Type: &7'
  may_be_merged: (可与其他类型合并)
  merged: '&9合并的领地: &7'
  members: '&9成员: &7'
  no_members: '&c(没有协助成员)'
  owners: '&9所有者: &7'
  no_owners: '&c(没有所有者)'
  flags: '&9权限: &7'
  region: '&9领地: &b'
  priority: '&9优先权: &b'
  parent: '&9从属: &b'
  bounds: '&9边界: &b'
  seller: '&9卖家: &7'
  price: '&9价格: &7'
  tenant: '&9租户: &7'
  landlord: '&9房东: &7'
  rent: '&9Rent: &7'
  available_for_sale: '&b该地区当前可出售!'
  available_for_rent: '&b该地区当前可出租!'
priority:
  help: '&b> &7/ps priority [number|null]'
  help_desc: 使用此命令设置您所在领地的优先级.
  info: '&7优先级: %priority%'
  set: '&e优先级已设置.'
  error: '&c输入解析无效,检查是否输入错误?'
region:
  help: '&b> &7/ps region [list|remove|disown] [playername]'
  help_desc: 使用此命令可以查找信息或编辑其他玩家(或您自己的)领地.
  not_found_for_player: '&7此世界上未找到 %player% 的领地.'
  list: '&7%player%在此世界上的领地: &b %regions%'
  remove: '&e%player%在此世界上的领地已被移除,并且也从 %player% 部分拥有的领地中删除.'
  error_search: '&c在搜索玩家 %player% 的领地时发生错误. 请确保您输入了正确的名称.'
tp:
  help: '&b> &7/ps tp [id/player] [num (optional)]'
  help_desc: 将您传送到改玩家的领地之一.
  number_above_zero: '&c请输入高于 0 的数字.'
  valid_number: '&c请输入有效的数字.'
  only_has_regions: '&c%player% 在这个世界上仅有 %num% 领地!'
  tping: '&a传送中...'
  error_name: '&c传送到领地时出错!(分析WorldGuard区域名称错误)'
  error_tp: '&c查找要传送到的领地时出错!'
  in_seconds: '&7将在 &b%seconds%&7 秒后传送.'
  cancelled_moved: '&c传送已取消,请勿移动!'
home:
  help: '&b> &7/ps home [name/id]'
  help_desc: 将您传送到您的其中一个领地.
  header: '&8&m=====&r 家 (点击传送) &8&m====='
  click_to_tp: 点击传送!
  next_page: '&7使用 /ps home -p %page% 查看下一页!'
unclaim:
  help: '&b> &7/ps unclaim'
  help_desc: 使用此命令拾取已放置的保护石并移除该领地.
view:
  help: '&b> &7/ps view'
  help_desc: 使用此命令查看领地的边界.
  cooldown: '&c请等待一会再使用 /ps view.'
  generating: '&7生成边界中...'
  generate_done: '&a已完成! 边界显示将在30秒后消失!'
  removing: |-
    &b移除边界中...
    &a如果您仍然看到幽灵方块,请重新登录游戏!
admin:
  help: '&b> &7/ps admin'
  help_desc: 使用 /ps admin help 查看更多信息.
  cleanup_header: |-
    &e清理 %arg% %days% days
    ================
  cleanup_footer: |-
    &e================
    已完成 %arg% 的清理.
  hide_toggled: '&e此世界所有保护石一直是 %message% '
  last_logon: '&e%player% 上次登录在 %days% 天前.'
  is_banned: '&e%player% 已被封禁.'
  error_parsing: '&c错误天数参数,你确定没有输入错误?'
  console_world: '&c最后一个参数必须是世界.'
  lastlogons_header: |-
    &e%days% 天+:
    ================
  lastlogons_line: '&e%player% %time% 天'
  lastlogons_footer: |-
    &e================
    %count% 玩家总数显示
    %checked% 已检查的玩家总数
reload:
  help: '&b> &7/ps reload'
  help_desc: 从配置中重新加载设置.
  start: '&b重载配置中...'
  complete: '&b配置重载完成!'
addremove:
  help: '&b> &7/ps add|remove [playername]'
  help_desc: 使用此命令可以添加或删除领地的成员.
  owner_help: '&b> &7/ps addowner|removeowner [playername]'
  owner_help_desc: 使用此命令可以添加或删除领地的所有者.
get:
  help: '&b> &7/ps get [block]'
  help_desc: 使用此命令获取或购买保护石.
  gotten: '&b将保护石添加到库存!'
  no_permission_block: '&c您没有获取保护石的权限.'
  header: '&8&m=====&r 保护石 (点击获取) &8&m====='
  gui_block: '&7> &b%alias% (%xradius% x %zradius%) ($%price%)'
  gui_hover: 点击购买一个 %alias%!
give:
  help: '&b> &7/ps give [block] [player]'
  help_desc: 使用此命令给与玩家保护块.
  given: '&7Gave &b%block%&7 to &b%player%&7.'
  no_inventory_room: '&c玩家没有足够的库存室.'
sethome:
  help: '&b> &7/ps sethome'
  help_desc: 使用此命令将领地的家位置设置为当前位置.
  set: '&7领地家 &b%psid%&7 已被设置.'
list:
  help: '&b> &7/ps list [player (optional)]'
  help_desc: 使用此命令可以列出您或其他玩家拥有的领地.
  header: '&8&m=====&r %player%的领地s &8&m====='
  owner: '&7所有者:'
  member: '&7成员:'
name:
  help: '&b> &7/ps name [name|none]'
  help_desc: 使用此命令可为您的领地设置昵称,以便更轻松地识别领地.
  removed: '&7移除掉领地 %id% 的昵称.'
  set_name: '&7将领地 %id% 的昵称设置为 &b%name%&7.'
  taken: '&7领地昵称 &b%name%&7 已经被使用! 尝试换一个.'
setparent:
  help: '&b> &7/ps setparent [region|none]'
  help_desc: 使用此命令可以允许此领地继承其他领地的属性(所有者、成员、权限等)
  success: '&7已成功设置领地 &b%id%&7 从属于&b%parent%&7.'
  success_remove: '&7已成功移除掉领地 &b%id%&7 的从属.'
  circular_inheritance: '&c检测到循环继承 (父级已经继承了当前区域?). 父级未设置.'
merge:
  help: '&b> &7/ps merge'
  help_desc: 使用此命令将您所在的领地与其他重叠领地合并。
  disabled: 配置文件已禁用领地合并!
  merged: '&b已成功合并领地!'
  header: '&8&m=====&r 合并 %region% (点击合并) &8&m====='
  warning: '&7注意: 这将删除当前领地的所有设置!'
  not_allowed: '&c不允许合并此类型领地.'
  into: '&b当前领地与其他可以合并的地区重叠!'
  no_region: '&7没有重叠的领地可以合并.'
  click_to_merge: 单击以合并 %region%!
  auto_merged: '&7自动与 &b%region%&7 合并.'

block1.toml(2.7.0-2020.4.4)

# 在下面自定义你的保护石
# 可用的保护石类型参考这里: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html#
# --------------------------------------------------------------------------------------------------
# 如果你想要使用玩家头颅,你可以这样写"PLAYER_HEAD:player_name" (举例: "PLAYER_HEAD:Notch")
# 使用自定义玩家头颅,你需要头颅的base64值. 比如在网站minecraft-heads.com上,你可以找到 vaule 值.
# 使用UUID玩家头颅,请去 https://sessionserver.mojang.com/session/minecraft/profile/PUT-UUID-HERE并且复制 "value" 值(不包括引号).
# 拿到 value 值之后按照这个格式即可 "PLAYER_HEAD:value"
type = "EMERALD_ORE"

# 另一种表示保护石的方法
# 可以使用 /ps give 和 /ps get 获取
# 必须是一个词或者数字 (不能有空格)
alias = "64"

# 是否将保护石的获取方式限制为仅可通过指令/ps get 或者/ps give或者自定义合成配方.
# 其他方法获得的方块 (例如挖矿) 将不能作为保护石使用(比如默认的钻石矿,如果这样关闭了,你精准镐采集的钻石矿是可以直接当成保护石方块来用的,不推荐关闭).
# 可以有效防止玩家从其他渠道获得保护石,这样你就可以在商店出售它
# 如果你想要玩家可以自己获得的话就关闭它
restrict_obtaining = true

# 在特定的世界中启用或禁用保护石
# "blacklist" 模式可防止在世界 "worlds" 使用保护石
# "whitelist" 模式仅允许在世界 "worlds" 使用保护石
# 会被权限 protectionstones.admin 权限覆盖 (默认OP拥有)
world_list_type = "blacklist"
worlds = [
    "exampleworld1",
    "exampleworld2"
]

# 当世界被限制时,是否阻止保护石的放置 (黑名单 / 白名单)
# 方块将可以正常放置,但是不会被此插件监听.
prevent_block_place_in_restricted_world = true

[region]
    # 两个不同玩家所创建的领地最小距离
    # 你需要在不同的保护石配置下修改这个配置,因为不同的保护石领地的大小不同
    # 设置为-1禁用此项,但是会检查是否重叠,重叠还是无法放置
    distance_between_claims = -1

    # 保护石的保护半径
    # y_radius设置为-1则是从基岩层到天空255层,如果设置-1无效,请自行更改为255
    # y_radius不是-1时,请将 config.toml 的 "allow_merging_regions" 设置为 false
    x_radius = 64
    y_radius = -1
    z_radius = 64

    # 偏移保护石
    # 如果你想讲保护石设置为不在领地的中心,你可以在此处偏移位置
    x_offset = 0
    y_offset = 0
    z_offset = 0

    # 自动设置领地家的位置的偏移量,默认在保护石上方
    home_x_offset = 0.0
    home_y_offset = 1.0
    home_z_offset = 0.0

    # 设置新创建的领地的默认权限
    # 可以在权限(flag)前面添加 -g [group] 来为指定组设置权限 (例: -g members pvp deny).
    # 支持PAPI变量
    flags = [
        "pvp deny",
        "tnt deny",
        "greeting &l你已进入玩家 &b&l%player% &f&l的领地",
        "farewell &l你已离开玩家 &b&l%player% &f&l的领地",
        "greeting-action &l你已进入玩家 &b&l%player% &f&l的领地",
        "farewell-action &l你已离开玩家 &b&l%player% &f&l的领地",
        "creeper-explosion deny",
    ]

    # 在这里列出所有者可以默认可以修改的权限
    # 如果你想给某个组修改的权限, 使用-g (例: "-g all,members pvp" 即关闭其他玩家以及领地成员的PVP)
    # "-g all pvp" - 可以防止玩家将本领地成员设置为成不可攻击
    allowed_flags = [
        "-g all pvp",
        "greeting",
        "greeting-title",
        "greeting-action",
        "farewell",
        "farewell-title",
        "farewell-action",
        "mob-spawning",
        "creeper-explosion",
    ]

    # 要隐藏哪些权限,即使用/ps indo无法看到的
    hidden_flags_from_info = [
        "ps-merged-regions",
        "ps-merged-regions-types",
        "ps-block-material",
        "ps-price",
        "ps-landlord",
        "ps-tenant",
        "ps-rent-period",
        "ps-rent-last-paid",
        "ps-for-sale",
        "ps-rent-settings",
        "ps-tax-payments-due",
        "ps-tax-last-payment-added",
        "ps-tax-autopayer"
    ]

    # 当前类型保护石的默认优先级
    priority = 0

    # 是否允许创建与您的其他领地不重叠/相邻的领地
    # 这是非常危险的,如果你打算设置为true,请好好考虑下
    allow_overlap_unowned_regions = false

    # 是否允许玩家与此领地重叠的其他领地
    # "owner" - 仅限所有者创建(默认)
    # "member" - 允许成员和所有者创建. (对于城市建设比较有帮助)
    # "all" - 允许所有玩家创建(危险!)
    # allow_overlap_unowned_regions 不设置为true也会生效
    allow_other_regions_to_overlap = "owner"

    # 是否允许此保护石创建的领地合并
    # 开启这项必须先将 config.toml 中的 allow_merging_regions 设置为 true
    allow_merging = true

[block_data]
    # 设置保护块的名称,使用/ps give 或者 /ps get 获得
    # 也可以作用于自定义合成物品 (详情看下面 custom_recipe)
    # 设置''则为空
    display_name = "&a&m<---&r&b 64x64 保护石 &r&a&m--->"

    # 设置保护块的标签lore,使用/ps give 或者 /ps get 获得
    # 也可以作用于自定义合成物品 (详情看下面 custom_recipe)
    # 设置[]则为空
    lore = [
        "&6(?■_■)ノ? 没能能碰我的东西!",
    ]

    # 设置保护石的价格, /ps get 时会自动扣除
    # 要求至少有一款经济插件 (比如 Vault, ie. Essentials)
    price = 0.0

    # 是否允许使用自定义配方制作保护石
    allow_craft_with_custom_recipe = false
    # 自定义合成配方
    # 材料代码代码在这里查询: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    # 你也可以在配方中添加其他保护石作为原料,格式:PROTECTION_STONES:名称
    # ""代表空
    custom_recipe = [
        ["", "STONE", ""],
        ["STONE", "EMERALD", "STONE"],
        ["", "STONE", ""]
    ]
    # 制作出来的保护石数量(比如设置为2则一份材料就可以做出来两个保护石)
    recipe_amount = 1

[economy]
    # 此项需要先在config.toml中启动税收 (tax_enabled)
    # 每个周期征收的金额
    tax_amount = 0.0

    # 每个税收周期之剑的时间(单位:秒),设置-1禁用税收
    tax_period = -1

    # 税收最大延期时间,如果超过这个时间玩家还未缴纳费用,将会受到惩罚(单位:秒)
    tax_payment_time = 86400

    # 是否将创建领地的玩家设置成自动纳税人
    start_with_tax_autopay = true

    # 租户默认所在的组(可选参数owner member).
    tenant_rent_role = "member"

    # 当领地租出去时,此玩家是否仍然是所有者
    landlord_still_owner = true

[behaviour]
    # 防止保护石后是否自动隐藏
    auto_hide = false

    # 放置后是否自动与其他领地合并(重叠/相邻)
    auto_merge = false

    # 删除领地时是否返还保护石
    no_drop = false

    # 是否阻止活塞推动方块,建议设置为 true
    prevent_piston_push = true

    # 是否阻止爆炸破坏领地石
    # 强烈建议开启
    prevent_explode = true

    # 是否关闭爆炸保护,主要用于PVP/派系类服务器
    # 此项要求 prevent_explode 必须是 false
    destroy_region_when_explode = false

    # 精准采集: 设置为 true 时, 保护石是矿石时,将禁止被自然挖掘(比如你设置绿宝石矿为保护石,且此项为true,那么自然环境中的绿宝石矿会直接小时你就没法精准采集了)
    # 这是旧版本阻止自然获得保护石方块的方法
    # 建议使用新方法 "Restrict Obtaining" 这项就留着过年吧:)
    prevent_silk_touch = false

    # 设置放置保护石的费用 (不同于 /ps get 的费用,这个是在放置的时候扣除的费用)
    cost_to_place = 0.0

[player]
    # 是否允许玩家使用shift+右键拆掉保护石
    # 如果保护石是基岩或者命令方块这类无法破坏的方块,这项建议开启.
    allow_shift_right_break = false

    # 是否阻止其他玩家传送到保护区 (不包括末影珍珠和紫颂果)
    # 不阻止其他玩家进入, 如果你想彻底阻止玩家进入请自定设置"entry deny"
    # 此项设置会被 protectionstones.tp.bypasstp 权限覆盖
    prevent_teleport_in = false

    # 是否开启传送时不可移动,相关指令 /ps home /ps tp. 可以设置为0禁用.
    # 开启之后只有玩家不移动才能传送
    # 拥有权限 protectionstones.tp.bypasswait 可以无视
    no_moving_when_tp_waiting = true
    tp_waiting_seconds = 0

    # 是否阻止玩家通过 /ps get 获得此类保护石.
    # 拥有权限 protectionstones.admin 可以无视
    prevent_ps_get = false

    # 放置此类保护石是否需要特定的权限 (权限: protectionstones.create)
    #也可以使用 /ps get (权限: protectionstones.get)
    # '' 处写额外权限
    permission = ''

[event]

    # 事件部分
    # ~~~~~~~~~~~~~~
    # 每一行事件的格式均为 'type: action'
    # 下面是可以使用的类型:
    # player_command - 以玩家身份执行命令
    # console_command - 以控制台身份执行命令
    # message - 向玩家或者控制台发送消息(支持颜色代码)
    # global_message - 向玩所有家或者控制台发送消息(支持颜色代码)

    # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # 是否启用时间跟踪 (API 事件将会启用)
    enable = false

    # 创建领地时执行命令 (例:玩家放置保护石)
    on_region_create = [
        'global_message: &l%player% 创建了领地 %region%!',
    ]

    # 破坏领地时执行指令 (例:玩家拆除保护石)
    on_region_destroy = [
        'console_command: say %player% 取消了领地 %region%!',
    ]

常见问题

黑色为原作者/蓝色为我(搬运工)的回答 Q:添加新保护石出现错误怎么办?
A:通过控制台检查错误,大部分情况下都是以为书写不规范导致的,如果你不了解toml语法可以去这里学习https://github.com/toml-lang/toml,或者问我(这里是原作者不是我你们不要问我我不知道233). 另一个已知的问题就是windows自带的记事本会导致编码错误,请不要使用记事本,推荐使用更好的文本编辑器(比如vscode)。
Q:为什么我从创造背包拿出来的保护石没有作用?(我已经放下它了)
A:从2.0.0版本之后,restrict-obtaining是默认开启的,这就意味着你只能使用/ps get或者/ps give获得保护石(或者其他可以调动这个API的插件),因为它们是带有NBT数据的方块,常规情况下获得的方块是没有NBT的,所以是无效的。你可以将restrict-obtaining设置为false来避免这种情况。
Q:我如何在商店出售保护石?
A:出售保护石有很多种方法,最简单的方法就是在配置文件设定好价格使用/ps get获取;当然你也可以使用其他插件来搭配进行/ps give指令使用,比如说shopchest chestcommands bossshop trmenu 等等菜单/商店插件(我自己加了一些)。
Q:为什么玩家看不到合并菜单?
A:你需要给玩家protectionstones.merge权限
Q:为什么有一些权限(flag)适用于成员?比如说(block-break deny)。
A:默认权限(flag)适用于每一个玩家,包括该领地的成员,你必须使用组(-g)来进行单独的权限设置才可以,可以参考http://worldguard.enginehub.org/en/latest/regions/flags
Q:玩家已经创建领地了,但是我想更改它使用的这种方块的属性,我该怎么做?
A:你可以使用指令 /ps adminchangeblock [world] [fromblock] [toblock] 来达到你想要的效果。只需要你提前创建好一个新的保护石配置文件(block.toml file) 然后重载,使用指令将旧保护石替换为新保护石即可,完成之后你就可以删除旧保护石配置了 Q:为什么xxx权限(flag) 无效?
A:权限相关的是由WorldGuard提供的,可能它的设置跟你想象的不太一样,想要具体了解的话可以参考这里https://worldguard.enginehub.org/en/latest/regions/flags/
Q:我发现了一个BUG,该怎么修复它?
A:请把相关报错,服务端版本等相关信息回复在spigot讨论页面 或者github的issue里面
不要联系我,我只是个搬运工,我不会修插件= v =
Q:我想要一个新的功能!
A:请回复在spigot讨论页面 或者github的issue里面. 新功能不一定会增添到这个插件里面,可能会用同样的API制作新的插件。
Q:有开发人员API吗?
A:肯定的啊!不过目前处于测试阶段,所以肯定会改变方法,你可以在这里看到相关内容https://github.com/espidev/ProtectionStones/wiki/API
Q:有汉化错误怎么办?
A:论坛私信我,因为是我真正意义上的第一款搬运插件,所以难免会有错误或者语句不通顺

[1]