自定义实体 | 您所在的位置:网站首页 › pixivview › 自定义实体 |
自1.17之后, SpigotMC 开始提供 Mojang 混淆表版本的 Spigot 服务端,这意味着大大简化了开发难度 —— 不需要再对照混淆表一个一个看NMS 方法名 HikariLanBukkit NMS 开发实践 —— 创建你自己的自定义实体(适用于 1.16.3 - 1.16.5 版本)本篇我来介绍使用Paper API的插件如何使用Mojang mappings自定义实体 引入依赖这里使用Gradle Groovy讲解 这里有用Gradle Kotlin的例子https://github.com/PaperMC/paperweight-test-plugin/ 一共要改两处地方 build.gradle123456789plugins { ... id "io.papermc.paperweight.userdev" version "1.4.1"}dependencies { ... paperweightDevelopmentBundle "io.papermc.paper:dev-bundle:1.19.3-R0.1-SNAPSHOT" // compileOnly 'io.papermc.paper:paper-api:1.19.3-R0.1-SNAPSHOT'}settings.gradle123456pluginManagement { repositories { gradlePluginPortal() maven{ url = "https://repo.papermc.io/repository/maven-public/"} }}创建自定义实体很明显,根据已有的API,甚至是Paper API,都没有向我们提供创建自定义实体的功能。因此,想要创建自定义实体,需要使用 Mojang mappings 我们刚才依赖引入的就是(1.17- 需要使用NMS) 本例中,我们创建一个不会被破坏,只能坐一个玩家的船(不是箱船),来自我的项目 – IceBoat 继承已有实体让我们创建 GameBoat 类,继承 net.minecraft.world.entity.vehicle.Boat 类 1public class GameBoat extends Boat {}接下来,初始化该实体,实现超类构造器 12345public class GameBoat extends Boat { public GameBoat(EntityType |
CopyRight 2018-2019 实验室设备网 版权所有 |