← Назад к ресурсам
P

Player Extend Carpet Addition

扩展了 carpet 多假人操作, 添加假人组控制, 假人队形, 假人保存/管理, 与各种假人特性

Modrinth game-mechanics management

Описание

# [PECA] Player Extend Carpet Addition ![issues](https://img.shields.io/github/issues/FengLiuFeseliud/Player-Extend-Carpet-Addition-Mod)![forks](https://img.shields.io/github/forks/FengLiuFeseliud/Player-Extend-Carpet-Addition-Mod)![stars](https://img.shields.io/github/stars/FengLiuFeseliud/Player-Extend-Carpet-Addition-Mod)![license](https://img.shields.io/github/license/FengLiuFeseliud/Player-Extend-Carpet-Addition-Mod) 这是一个对 [地毯 carpet mod](https://github.com/gnembon/fabric-carpet) 假人方面的**扩展** 扩展了 **carpet** 多假人操作, 添加假人组控制, 假人队形, 假人保存/管理, 与各种假人特性 ## 指令 ### /playerGroup 使用此指令进行多假人操作, 进行多假人操作前必须创建一个组 使用此指令创建一个组 `/playerGroup [组名] spawn [假人数] `成功将召唤名称为 `组名 _ 假人编号的 ` 的假人, 数量为你输入的假人数 其它指令与 `/player` 一致, 不过填写的假人名变为组名, 并且组内所有假人都将执行, 唯一不一样的是 `stop` `/playerGroup [组名] stop` 可以使用 `from ...假人编号 to ...假人编号` 来控制停止的组内假人范围 `from` 代表从哪里开始停止, 不填写 `to` 将一直停止到最后一个, `to` 代表从哪里结束停止 #### 例子 ```markdown # bot 组内有 10 名假人, 停止所有假人 /playerGroup bot stop # bot 组内有 10 名假人, 从假人 5 停止到假人 10 (最后一个) /playerGroup bot stop from 5 # test 组内有 10 名假人, 从假人 3 停止到假人 8 /playerGroup test stop from 3 to 8 ``` #### 假人队形 你一定会发现 `/playerGroup` 创建出来的假人组所有假人都挤在一起, 这样的假人组根本不能完成更复杂的功能, 假人队形就是解决这个问题 在创建假人时使用 `formation` 来选择假人队形, 在队形后面填写行数 (仅支持多行的队形有行数), 最后可以填写方向 (默认视线方向) 使用 `interstice` 可以填写每个假人之间的间隔 #### formation 队形 ```markdown # 列 column # 可叠加列 (可以一格内存在多个假人) columnFold # 排 row # 可叠加排 (可以一格内存在多个假人) rowFold # 四边形 quadrangle ``` #### 例子 ```markdown # 创建一个组名为 bot 的假人组, 有 10 个假人, 并且排成一排 /playerGroup bot spawn 10 formation row # 创建一个组名为 bot 的假人组, 有 10 个假人, 并且排成一列, 方向南 /playerGroup bot spawn 10 formation row north # 创建一个组名为 bot 的假人组, 有 9 个假人, 并且排成四边形, 有三行 /playerGroup bot spawn 9 formation quadrangle 3 # 创建一个组名为 bot 的假人组, 有 9 个假人, 并且排成四边形, 有三行, 每一个假人间隔三格 /playerGroup bot spawn 9 formation quadrangle 3 interstice 3 # 创建一个组名为 bot 的假人组, 有 9 个假人, 并且排成一排, 格内存在 3 个假人, 每格假人间隔三格 /playerGroup bot spawn 9 formation rowFold 3 interstice 3 ``` #### 空假人组 你可以使用 `/playerGroup bot spawn` 直接创建一个组名为 bot 的假人组, 里面没有任何假人, 然后手动编辑假人组成员后保存, 用于需要多个假人且位置没有队形的情况 `/playerGroup bot add [假人]` 向组添加假人, 如果组已经保存在数据库将更新数据 `/playerGroup bot del [假人]` 向组删除假人, 如果组已经保存在数据库将更新数据 #### 假人组保存 使用此指令进行假人组保存 `/playerGroup [假人组名] save` 将使用 `splite` 保存数据 数据将保存在当前世界存档根目录下的 `pecaPlayer.db` 文件, 可以使用 sql/[sql 可视化工具](https://sqlitebrowser.org/) 查询 使用 `/playerGroup list` 查询所有已保存假人组 `/playerGroup id [假人组ID] execute` 执行假人组所有假人保存的操作 假人组 id 可以使用 `/playerGroup list` 找到对应假人组查看详细获得 `/playerGroup id [假人组ID] execute add [假人操作指令]` 向假人组所有假人添加操作, 使用 `%s` 代替假人名, `%s` 会被替换成下一个假人名 #### 例子 ```markdown # 有一个 id 为 1 的假人组, 内有假人 bot_1, bot_2, bot_3, bot_... # %s 将会替换成 bot_1, bot_2, bot_3, bot_... # id 为 1 的假人组, 内所有假人添加向上看操作 /playerGroup id 1 execute add "/player %s look up" ``` `/playerGroup id [假人组ID] execute set [假人操作位置] [假人操作指令]` 修改假人组所有假人在第几个的操作 `/playerGroup id [假人组ID] execute del [假人操作位置]` 删除假人组所有假人在第几个的操作 `/playerGroup id [假人组ID] execute clear` 清空假人组所有假人的操作 使用 `index` 选择仅操作第几个假人 #### 例子 ```markdown # 有一个 id 为 1 的假人组, 内有假人10个, 修改第5个假人的第2个操作为向上看 /playerGroup id 1 execute set 2 "/player %s look up" index 5 # 有一个 id 为 1 的假人组, 内有假人10个, 删除第2个假人的第1个操作 /playerGroup id 1 execute del index 2 ``` ### /playerManage 使用此指令进行假人保存/管理/快捷操作, `/playerManage` 将使用 `splite` 保存数据 数据将保存在当前世界存档根目录下的 `pecaPlayer.db` 文件, 可以使用 sql/[sql 可视化工具](https://sqlitebrowser.org/) 查询 使用此指令将当前玩家的数据保存为假人数据 `/playerManage clone [用途]` `/playerManage clone` 可以使用 `in` 修改保存数据的游戏模式, 使用 `to` 修改保存假人的名称 使用 `/playerManage [玩家名] save [用途]` 来保存指定假人/玩家的数据 使用 `/playerManage list` 列出所有保存假人 #### find 搜索 如果你保存了大量假人, 想找到一个假人, 或者你想看看一个范围有没有保存假人, 使用 `/playerManage list` 显然是不行的 这时候就可以使用 `/playerManage find` 来在数据库搜索假人, 可以从 4 种方面搜索假人 #### 例子 ```markdown # 搜索名称 /playerManage find [名称] # 搜索游戏模式 /playerManage find gamemode [模式] # 搜索维度 /playerManage find dimension [维度] # 搜索坐标 /playerManage find pos [坐标] ``` 可以一次从两个方面搜索假人 #### 例子 ```markdown # 搜索在主世界, 并且名称内带有 bot 的假人 /playerManage find dimension minecraft:overworld is bot # 搜索名称内带有 test, 并且游戏模式为生存的假人 /playerManage find test in survival # 搜索在当前玩家坐标不超过 50 的范围, 并且在地狱的假人 /playerManage find pos ~ ~ ~ inside 50 in minecraft:the_nether # 搜索名称内带有 bot, 并且在当前玩家坐标不超过 20 的范围 /playerManage find bot at ~ ~ ~ inside 20 ``` #### 假人 保存/执行 操作 假人 id 可以使用 `/playerManage list` / `/playerManage find` 找到对应假人组查看详细获得 `/playerManage id [假人ID] execute` 执行假人保存的操作 `/playerManage id [假人ID] execute add [假人操作指令]` 假人添加操作 `/playerManage id [假人ID] execute del [假人操作位置]` 删除假人在第几个的操作 `/playerManage id [假人ID] execute set [假人操作位置] [假人操作指令]` 修改假人在第几个的操作 `/playerManage id [假人ID] execute clear` 清空假人所有的操作 #### 例子 ```markdown # 有一个 id 为 1 的假人, 名称为 bot_1, 添加操作向上看 `/playerManage id [假人ID] execute add "/player bot_1 look up"` # 有一个 id 为 1 的假人, 名称为 bot_1, 修改第二个操作向上看 `/playerManage id [假人ID] execute set 2 "/player bot_1 look up"` # 有一个 id 为 1 的假人, 删除第二个操作 `/playerManage id [假人ID] del 2` ``` #### 搜索坐标范围 搜索坐标时使用 `inside` 指定搜索范围, 搜索范围为 `传入坐标(x, y, z) - inside