
RPGMobs - API
一个轻量级的事件驱动API,供模组开发者挂钩RPGMobs——监听事件、查询怪物状态,并在运行时自定义行为。
RPGMobs API
一个轻量级的事件驱动API,专为模组开发者设计,用于接入 RPGMobs - 监听事件、查询精英怪状态、程序化生成精英怪,并在运行时自定义行为。
谁需要这个?
仅限模组开发者使用。 此 jar 是构建与 RPGMobs 集成的模组时的编译时依赖项。它不应该放在 /mods 文件夹中,也不应被列为你的模组在 CurseForge 上的必需依赖项。
- 服务器管理员: 你只需要 RPGMobs 服务器插件。不要下载此 API jar。
- 模组开发者: 下载此 jar,将其放入你的
libs/文件夹,并在build.gradle中将其添加为compileOnly依赖项。
如果你的模组完全集成了 RPGMobs,请在 CurseForge 项目设置中将服务器插件(而非此 API)标记为必需依赖项。
设置
build.gradle:
dependencies {
compileOnly files('libs/RPGMobs-API-1.3.0.jar')
}
manifest.json:
{
"Dependencies": {
"Frotty27:RPG Mobs": ">=4.260326.7"
}
}
API 包含什么?
| 类 / 接口 | 用途 |
|---|---|
RPGMobsAPI |
主入口点 - 注册监听器、查询状态、生成精英怪 |
IRPGMobsEventListener |
监听器接口,包含所有 12 种事件类型的默认无操作处理程序 |
IRPGMobsQueryAPI |
只读检查精英层级、缩放、战斗状态、技能 |
IRPGMobsSpawnAPI |
程序化生成精英怪,并将现有 NPC 提升为精英怪 |
ICancellable |
支持取消的事件接口 |
事件(共 12 个)
| 事件 | 触发时机 |
|---|---|
RPGMobsSpawnedEvent |
精英怪生成时(可取消) |
RPGMobsDeathEvent |
精英怪死亡时,包含击杀者引用和位置 |
RPGMobsDropsEvent |
战利品掉落时(可取消,掉落列表可修改) |
RPGMobsDamageDealtEvent |
精英怪造成伤害时(倍数可调整) |
RPGMobsDamageReceivedEvent |
精英怪受到伤害时 |
RPGMobsAbilityStartedEvent |
技能激活时(可取消) |
RPGMobsAbilityCompletedEvent |
技能完成时 |
RPGMobsAbilityInterruptedEvent |
技能中断时 |
RPGMobsAggroEvent |
精英怪进入战斗时 |
RPGMobsDeaggroEvent |
精英怪离开战斗时 |
RPGMobsScalingAppliedEvent |
层级缩放应用于(生命值、伤害、模型)时 |
RPGMobsReconcileEvent |
配置重载时同步现有精英怪 |
快速示例
public final class MyModPlugin extends JavaPlugin {
@Override
protected void setup() {
RPGMobsAPI.registerListener(this, new IRPGMobsEventListener() {
@Override
public void onDrops(RPGMobsDropsEvent event) {
// 为 T5 精英怪添加额外掉落物
if (event.getTierIndex() >= 4) {
event.getDrops().add(myBonusItem);
}
}
@Override
public void onDeath(RPGMobsDeathEvent event) {
// 追踪精英怪击杀
myStats.recordKill(event.getEntityUuid(), event.getTierIndex());
}
});
}
}
有关完整的 API 参考,请参阅 文档。
附加文件
下载内容包括主 API jar 以及 -javadoc.jar 和 -sources.jar 文件。将这三个文件都放入你的 libs/ 文件夹,以获得完整的 IDE 支持(自动补全、内联文档、点击跳转源码)。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。