• 周年纪念勋章活动已圆满结束,如有已购买但仍未申请的用户,可以通过对应勋章的下载链接申请~
资源图标

原创 Endstone [免费]eland-endstone第一个领地插件(Ye111566-land)-三维,子领地,支持api,支持迁移iland 7.0.0

版权类型
原创
版权链接
https://github.com/ye111566/eland
Wiki/文档
https://github.com/ye111566/eland
语言支持
中文(简体)
前置组件
endstone:pip install endstone
python:https://python.org
menu:https://www.minebbs.com/resources/menu-endstone-execute.9432/
(已经附带menu插件到下载整合包了)
适配版本(基岩)
  1. 最新版本
eland

endstone首个领地插件​

相似插件对比elandulandtty
性能
开发语言pythonpythoncpp
经济系统支持jsonmoney
economyapi
umoney
jsonmoney
umoney
不支持经济系统
无需专业软件就可编辑数据
子领地
数据储存格式jsonjson数据库
菜单
子领地
api
领地价格
领地个数限值
诞生日期最早其次最新
维度3d2d3d
防火/爆/破坏/挖掘
维护难度
是否支持迁移iland
下载量(2025/
3/10)
120028122
levistone支持
源代码闭源混淆开源闭源cpp
适用类型通用通用 不注重高度 不考虑子领地不注重经济系统但注重性能

插件安装
1. 前往release下载最新版本的zip文件
2. 将解压后的 `plugins` 文件夹内的所有内容**直接合并替换**到服务器的 `plugins` 文件夹中即可。

配置文件​

JSON:
{
    "price": 1,
    "money": "json",
    "protect":false,
    "task":true,
    "max_land":5
}
price:价格
money:经济系统类型,使用economyapi请改此为economyapi,使用umoney或者jsonmoney请使用json
protect和task已经不再使用
max_land 一个玩家最多的领地数量
price:一立方体的价格

领地数据文件说明和修改​

你可以直接修改land.json来完成数据后台修改,注意修改完成后记得输入指令
/land reload更新缓存数据
JSON:
{
    "ye111566": [
        {
            "20250304235508": {//领地的名字
                "posa": "72, 65, 4",//坐标a
                "posb": "76, 64, 8",//坐标b
                "dim": "Overworld",//维度
                "member": [],//成员列表
                "tpposx": "72",//传送点x
                "tpposy": "65",//传送点y
                "tpposz": "4",//传送点z
                "anti_right_click_block": [],//禁止右键的方块列表
                "permission": [
                    {
                        "containter": "false"//陌生人右键方块
                    },
                    {
                        "build": "false"//陌生人建筑
                    },
                    {
                        "mine": "false"//陌生人挖掘
                    },
                    {
                        "tp": "false"//公共传送
                    }
                ],
                "mobgriefing": false,//生物爆炸
                "fire": false,//火焰
                "explode": false,//生物爆炸
                "in": false,//是否为子领地
                "son": [//子领地列表
                    "father_2dfd48e6-f911-11ef-819c-00d49e32bde1",//子领地名字
                    "father_945ea7c5-f911-11ef-ad7d-00d49e32bde1"//子领地名字
                ]
            }
        },
        {
            "father_2dfd48e6-f911-11ef-819c-00d49e32bde1": {//另外一个领地的名字
                "posa": "76, 64, 8",
                "posb": "75, 65, 7",
                "dim": "Overworld",
                "member": [],
                "tpposx": "76",
                "tpposy": "64",
                "tpposz": "8",
                "anti_right_click_block": [],
                "permission": [
                    {
                        "containter": "false"
                    },
                    {
                        "build": "false"
                    },
                    {
                        "mine": "false"
                    },
                    {
                        "tp": "false"
                    }
                ],
                "mobgriefing": false,
                "fire": false,
                "explode": false,
                "in": true,
                "father": "20250304235508",//父领地名字
                "son": []//子领地列表(对于一个父领地请勿动此处!)
            }
        },
        {
            "father_945ea7c5-f911-11ef-ad7d-00d49e32bde1": {
                "posa": "75, 65, 7",
                "posb": "76, 64, 8",
                "dim": "Overworld",
                "member": [],
                "tpposx": "75",
                "tpposy": "65",
                "tpposz": "7",
                "anti_right_click_block": [],
                "permission": [
                    {
                        "containter": "false"
                    },
                    {
                        "build": "false"
                    },
                    {
                        "mine": "false"
                    },
                    {
                        "tp": "false"
                    }
                ],
                "mobgriefing": false,
                "fire": false,
                "explode": false,
                "in": true,
                "father": "20250304235508",
                "son": []
            }
        }
    ],
        "otherplayer":...
}
关于经济系统
本插件诞生的时候 还没有jsonmoney
因为本插件所以才诞生了jsonmoney
本插件圈地的经济数据存在
plugins文件夹->money文件夹下的money.json
采用字典的存储方法
{"名字":钱数量}

你可以使用jsonmoney插件或umoney插件来完成快速操作money.json
如果你使用economyapi插件
你可以通过修改配置文件的money为economyapi来解决
对于umoney插件请使用此修改版本(改路径指向money文件夹)

指令说明​

Image_1726508526807.jpg

- **/land**:打开领地管理菜单。
- **/land help**:查看不使用菜单的指令圈地说明。
- **/landgui posa** 和 **/landgui posb**:用于设置领地的两个对角点(`posa` 和 `posb`)。
- 这两个指令用于创建领地时确定领地的范围,以及创建子领地时确定领地的范围
- 设置领地传送点时,`posa` 将作为传送点。

领地创建与购买​

1. 使用 `/landgui posa` 和 `/landgui posb` 设置领地的两个对角点。
2. 输入 `/landgui buy` 或 `/landgui tpset` 查看已填写的坐标。
- 如果坐标无需修改,直接点击**提交**。
- 如需修改,点击文本输入框重新输入坐标。

### 圈地方法

- **Minecraft 中的领地**:领地是一个长方体区域。
- **长方体确定方法**:通过体对角线的两个点确定。
- 在游戏中,跑到你要圈地的长方体的一角,输入 `/landgui posa`。
- 然后跑到该角的体对角线斜对面,输入 `/landgui posb`。
- 最后输入 `/landgui buy`,在弹出的菜单中根据需要修改坐标。
- 确保资金充足后,点击**提交**即可完成圈地。

文件路径一览​

1726578070095.png

关于api

self.server.plugin_manager.get_plugin('ye111566_land').pos_to_landname(x,y,z,dimname)可以输入坐标返回属于这个坐标的领地名字

self.server.plugin_manager.get_plugin('ye111566_land').landname_to_Land('主城') 可以把领地名字为主城的领地转为领地Land对象

self.server.plugin_manager.get_plugin('ye111566_land').landname_to_landdata('主城') 可以把领地名字为主城的领地转为此领地的字典

self.server.plugin_manager.get_plugin('ye111566_land').landdata_to_Land('主城') 可以把领地的字典转为领地Land对象


self.server.plugin_manager.get_plugin('ye111566_land').Player_to_landname(endstone的Player对象)可以把玩家对象转为此玩家所在的领地的名字

self.server.plugin_manager.get_plugin('ye111566_land').edit(领地名字,修改的配置项字符串,新的数据)
可以修改并且保存领地

Land对象有下列方法:

attr:father->str

返回领地的父领地

attr:son->list[str]

返回领地的子领地名字列表

attr: name->str

返回领地的名字

attr: info->dict

返回领地的信息字典

attr: posa->list[int]

返回领地的posa 如[114,51,4]

attr: posb->list[int]

返回领地的posb 如[114,51,4]

attr: tppos->list[int]

返回领地的tppos 如[114,51,4]

attr: dim->str

返回领地的维度名字 有Overworld Nether TheEnd 三种(注意大小写)

attr:dim_index->int

返回领地的维度代码 主世界0 地狱1 末地2

attr:anti_right_click_block->list[str]

返回领地内禁止被右键的方块的id列表 如["minecraft:glow_frame","minecraft:grass_block"]

attr:arcb->list[str] (缩写版,同上)

返回领地内禁止被右键的方块的id列表 如["minecraft:glow_frame","minecraft:grass_block"]

attr:member->list[str]

返回领地的成员列表 如["田所浩二","宫本浩次"]

attr:containter->bool

返回是否开启右键权限

attr:mine->bool

返回是否开启挖掘权限

attr:build->bool

返回是否开启放置权限

attr:tp->bool

返回是否开启公共传送权限

attr:fire->bool

返回是否允许火焰

attr:explode

返回是否允许爆炸

attr:mobgriefing

返回是否允许生物破坏

meth:get_type()->str

返回领地的类型

有三种:

"father" 表示父领地

"normal" 表示没有子领地的普通领地

"son" 表示子领地

meth:get_owner()->str

比如a是一个Land对象

a.get_owner()得到的就是这个Land对象的主人名字

返回领地的主人名字

如"HOMO1145141919810"

Python:
#开发示例,输入一个坐标和维度返回这个地方属于的领地,然后在这个地方的领地的成员里面加上abab这个人

landapi=self.server.plugin_manager.get_plugin('ye111566_land')#获得领地的主插件类

landname=landapi.pos_to_landname(114,5,14,"Overworld")#通过坐标获得此坐标的领地名字

Land=landapi.landname_to_Land(landname)#通过领地名字获得领地对象

member=Land.member#获得这个领地对象的成员列表

newmember=member#缓存数据准备使用.append方法

newmember.append("abab")#添加abab这个成员

landapi.edit(landname,"member",newmember)#修改并且保存领地成员数据
  • Image_1726508649697.jpg
    Image_1726508649697.jpg
    43 KB · 查看: 604
  • Image_1726508652508.jpg
    Image_1726508652508.jpg
    140.8 KB · 查看: 604
  • Image_1726508660083.jpg
    Image_1726508660083.jpg
    24.7 KB · 查看: 600
  • Image_1726508679510.jpg
    Image_1726508679510.jpg
    75.1 KB · 查看: 611
  • Image_1726508682425.jpg
    Image_1726508682425.jpg
    71.4 KB · 查看: 602
  • 1726578151631.jpeg
    1726578151631.jpeg
    35.3 KB · 查看: 808
  • 1726578166957.png
    1726578166957.png
    45 KB · 查看: 802
  • 1726578177013.png
    1726578177013.png
    81.1 KB · 查看: 789
  • 1726578187907.png
    1726578187907.png
    65.9 KB · 查看: 777
  • 1726578196566.png
    1726578196566.png
    67.8 KB · 查看: 761
  • 1726578205352.png
    1726578205352.png
    82.4 KB · 查看: 752
  • 1726578214975.png
    1726578214975.png
    71.2 KB · 查看: 738
  • 1726578225289.png
    1726578225289.png
    22.1 KB · 查看: 713
  • 1726578397255.png
    1726578397255.png
    36 KB · 查看: 589
  • 1726578647530.png
    1726578647530.png
    24.8 KB · 查看: 833
  • 1726578696214.png
    1726578696214.png
    81.1 KB · 查看: 586
作者
ye1115660
下载
1,837
查看
2,258
首次发布
最后更新

评分

0.00 星 0 次评分

ye1115660 的其他资源

最新更新

  1. 7.0.0

    7.0.0-新增子领地系统,重构爆炸系统,代码混淆并且闭源 更改了提示系统 /land ->领地管理->新增子领地即可增加子领地 或者/land in 父领地名字 posaxyz...
  2. 5.0.4-更好的领地防火系统和性能大优化

    更好的领地防火系统,禁用打火石和烈焰弹,增加了领地数据缓存 self.cache 新增指令 /land true开启领地周期任务 /land false关闭领地周期任务 /land...
  3. 5.0.3正式版

    正式添加了对领地防火防爆防生物破坏的支持
后退
顶部 底部