领地

通过GUI快速实现领地管理

Title: '&6&l领地管理'
Shape:
- '#A#B#C#D#'
- '#E#F#G#H#'
- '#I#J#K#L#'
- '#########'
- 'Z#1#2#3#4'
- '5#6#7#8##'
Buttons:
  '#':
    display:
      mats: AIR
      name:
      - '&e'
    actions:
      all:
      - 'sound: BLOCK_NOTE_BLOCK_PLING-1-2'
  Z:
    update: 2
    refresh: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_res%" == ""'
      priority: 2
      display:
        mats: barrier
        name: '&a当前位置没有领地'
        lore:
        - '&c领地管理禁用'
        slots:
        - 13
    - condition: '"%residence_user_current_owner%" != "%player_name%"'
      priority: 1
      display:
        mats: barrier
        name: '&c此位置是他人领地'
        lore:
        - '&f领地名: %residence_user_current_res%'
        - '&f领地主人: %residence_user_current_owner%'
        - '&f领地大小: %residence_user_current_qsize%'
        - ''
        - '&a点击查看详细信息'
        - ''
        - '&a如果对方给了你admin权限'
        - '&a右键此处可设置领地权限'
        slots:
        - - 13
      actions:
        left:
        - 'PLAYER: residence info'
        - CLOSE
        right:
        - 'PLAYER: residence set'
  A:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:7>
        name: '&a权限设置'
        lore:
        - '&f设置领地【 %residence_user_current_res% 】的权限'
        - '&f用于管理领地的各种活动'
        - '&f'
      actions:
        left:
        - 'PLAYER: residence set'
  B:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:6>
        name: '&a领地传送点'
        lore:
        - '&f将领地【 %residence_user_current_res% 】的传送点'
        - '&f设置为你当前所在位置(包含朝向)'
        - '&f'
        - '&e  此点为自己及其他玩家传送至该领地的出生点'
      actions:
        left:
        - 'PLAYER: residence tpset'
        - CLOSE
  C:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:38>
        name: '&a领地范围扩大'
        lore:
        - '&f将你面向的【 %residence_user_current_res% 】的边界向远处'
        - '&f扩展指定范围,具体扩大范围'
        - '&f以点击后输入的数值为准'
        - '&f'
        - '&c  根据扩大范围扣除相应货币'
      actions:
        all:
        - |-
          Catcher:
           <Type=CHAT>
           <Before=Tell: 在聊天框输入你想要扩大的距离,以扩展领地%residence_user_current_res%的范围 输入&acancel&f取消操作>
           <Valid=PLAYER: residence expand $input>
           <Invalid=TELL:&c条件不符合/不是数字/金额不足>
           <Require=TrUtils.isNumber("$input");$input / 1 == 0;TrUtils.isGreater($input, 0)>
           <Cancel=TELL:已取消...>
  D:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:39>
        name: '&a领地范围缩小'
        lore:
        - '&f将你面向的【 %residence_user_current_res% 】的边界向近处'
        - '&f缩小指定范围,具体缩小范围'
        - '&f以点击后输入的数值为准'
        - '&f'
        - '&c缩小后不返还领地创建成本'
      actions:
        all:
        - |-
          Catcher:
           <Type=CHAT>
           <Before=Tell: 在聊天框输入你想要缩小的距离,以缩小领地%residence_user_current_res%的范围 输入&acancel&f取消操作>
           <Valid=PLAYER: residence contract $input>
           <Invalid=TELL:&c条件不符合/不是数字/金额不足>
           <Require=TrUtils.isNumber("$input");$input / 1 == 0;TrUtils.isGreater($input, 0)>
           <Cancel=TELL:已取消...>
  E:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:47>
        name: '&f&l#&f权限2'
        lore:
        - '&f设置其他玩家在领地【 %residence_user_current_res% 】中'
        - '&f所拥有的权限'
        - '&f'
        - '&c请不要随意给予他人权限!!'
      actions:
        all:
        - |-
          Catcher:
           <Type=CHAT>
           <Before=Tell: 在聊天框输入%residence_user_current_res%的范围 输入&acancel&f取消操作>
           <Valid=PLAYER: residence pset $input>
           <Invalid=TELL:玩家不存在或不在线>
           <Require=TrUtils.isPlayerOnline("$input")>
           <Cancel=TELL:已取消...>
  F:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:41>
        name: '&a更改领地名字'
        lore:
        - '&f更改领地【 %residence_user_current_res% 】的名字'
        - '&f领地权限设置等不变'
        - '&f'
        - '&c更改后原名字立即失效'
      actions:
        all:
        - |-
          Catcher:
           <Type=CHAT>
           <Before=Tell: 在聊天框中为领地 %residence_user_current_res% 输入新的名字,输入&acancel&f取消操作>
           <Valid=PLAYER: residence rename %residence_user_current_res% $input>
           <Invalid=TELL:玩家不存在或不在线>
           <Require=>
           <Cancel=TELL:已取消...>
  G:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:40>
        name: '&a设置领地欢迎消息'
        lore:
        - '&f更改领地【 %residence_user_current_res% 】的欢迎消息'
        - '&f当玩家进入领地时显示'
        - '&f'
        - '&f变量:'
        - '&f&a%player &f替换为来访玩家名字'
        - '&f&a%owner  &f替换为领地主人'
        - ''
        - '&c请不要使用影响和谐的内容|查实删除领地'
      actions:
        all:
        - |-
          Catcher:
           <Type=CHAT>
           <Before=Tell: 在聊天框中输入领地 %residence_user_current_res% 的欢迎信息,输入&acancel&f取消操作>
           <Valid=PLAYER: residence message enter $input>
           <Invalid=TELL:玩家不存在或不在线>
           <Require=>
           <Cancel=TELL:已取消...>
  H:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:40>
        name: '&a设置领地离开消息'
        lore:
        - '&f更改领地【 %residence_user_current_res% 】的离开消息'
        - '&f当玩家离开领地时显示'
        - '&f'
        - '&f变量:'
        - '&f&a%player &f替换为来访玩家名字'
        - '&f&a%owner  &f替换为领地主人'
        - ''
        - '&c请不要使用影响和谐的内容|查实删除领地'
      actions:
        all:
        - |-
          Catcher:
           <Type=CHAT>
           <Before=Tell: 在聊天框中输入领地 %residence_user_current_res% 的欢迎信息,输入&acancel&f取消操作>
           <Valid=PLAYER: residence message leave $input>
           <Invalid=TELL:玩家不存在或不在线>
           <Require=>
           <Cancel=TELL:已取消...>
  I:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:44>
        name: '&a创建子领地'
        lore:
        - '&f为领地【 %residence_user_current_res% 】创建附属领地'
        - '&f请站在你想创建子领地的领地中'
        - ''
        - '&f&c如果站在子领地中'
        - '&c创建的则为子领地的附属领地'
      actions:
        all:
        - |-
          Catcher:
           <Type=CHAT>
           <Before=Tell: 在聊天框中输入领地 %residence_user_current_res% 的欢迎信息,输入&acancel&f取消操作>
           <Valid=PLAYER: residence subzone $input>
           <Invalid=TELL:玩家不存在或不在线>
           <Require=>
           <Cancel=TELL:已取消...>
  J:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:44>
        name: '&a显示子领地列表'
        lore:
        - '&f列出领地【 %residence_user_current_res% 】的附属领地'
        - ''
        - '&f&c如果站在子领地中'
        - '&c显示的则为子领地的附属领地'
      actions:
        all:
        - residence sublist
  K:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_res%" == ""'
      priority: 2
      display:
        mats: glass_pane<model-data:45>
        name: '&a创建领地'
        lore:
        - '&a当前位置为无主之地'
        - '&f你可以创建创建一个领地,在此之前你需要'
        - '&f在一块空地用&a圈地工具&f选择两个点'
        - '&e手持木棒左键选择第一个点,右键选择第二个点'
        - '&f点击后在&a聊天框&f输入领地名字并发送'
        - ''
        - '&f&f你的圈地权限余量'
        - '&f- 使用情况: %residence_user_amount%/%residence_user_maxres%'
        - '&f- 圈地价格: %residence_user_blockcost%猫猫币/方块'
        - '&f- Y轴方向大小: %residence_user_maxud%'
        - '&f- X轴方向大小: %residence_user_maxew%'
        - '&f- Z轴方向大小: %residence_user_maxns%'
        - '&f'
        - '&f&a点击创建领地'
        slots:
        - 22
    actions:
        all:
         - |-
            Catcher:
            <Type=CHAT>
            <Before=Tell:&3&l输入一个玩家的名称>
            <Valid=TELL:&3操作成功...;JS:player.chat("/tpa " + "$input")>
            <Invalid=TELL:&c玩家不在线>
            <Require=TrUtils.isPlayerOnline("$input")>
            <Cancel=TELL:&7取消操作>
  L:
    update: 20
    display:
      material: air
    icons:
    - condition: '"%residence_user_current_owner%" == "%player_name%"'
      priority: 1
      display:
        mats: glass_pane<model-data:46>
        name: '&a删除当前领地'
        lore:
        - '&f此操作将删除领地【 %residence_user_current_res% 】及其附属领地'
        - '&f请慎重考虑'
        - ''
        - '&c  删除后不返还创建成本'
      actions:
        all:
        - 'PLAYER: residence remove'
        - CLOSE

注:以上代码无法运行,请各位玩家手动输入指令。

太难了,我看了半天menu插件的文档也不知道哪里写错了。有大神请帮忙十分感谢!

最后更新于