自定义生物

与MOD对接进行自定义生物的管理

相关文件位于proxies.mob包中

包结构:

  • 主目录:MobManager类。

  • instance:怪物群组实例、怪物实例等。

  • info:生物类型、生物接口等。

一,自定义生物判断、自定义生物生成

1. 自定义生物判定

欲想判断某一生物是否是自定义生物,与对应的生物类型,我们可以通过MobManager类进行判定。

//返回的MobType即自定义生物类型,若为NULL,则并非自定义生物。
MobType mobType = MobManager.getMobType(theEntity);

2. 自定义生物生成

欲想生成自定义生物,我们只需通过MobManager类进行调用即可。

//生成生物,分别传入生成坐标,生成类型
//返回的MobState即自定义生物的状态,其中将会实现一些功能封装,以判断生物状态
//或调用等。
MobState mobState = MobManager.spawnMob(theLocation, theMobType);

//对于特殊情况,如MobType中没有对应生物,我们也可以通过直接调用生物名字进行
mobState = MobManager.spawnMob(theLocation,theMobTypeName)

二,生物群组

按照尸妖社会的设定,我们的生物通常并不会单独生成,而是会成群的出现,这将需要生物群组的功能。

生物群组包含以下属性或需求:

  1. 需要一个领导者

  2. 需要拥有簇拥(杂兵)

  3. 需要有行为逻辑(现阶段为巡逻)

  4. 或许需要副领导者

因此,为了满足以上需求,本插件提供了对应接口,即IMobGroupInfo,用于获得你方对于以上需求的配置。

你可以通过以下例子来创建你的生物群组。

可以看到,为实现IMobGroupInfo,你还需要实现IMobSpawnInfo。

IMobSpawnInfo是生物生成的信息,包含以下内容:

  1. 生物类型

  2. 生物生成坐标

  3. 其他生物信息

因此,你只需对IMobSpawnInfo进行实现并于你的群组实现类中调用即可。

Last updated

Was this helpful?