伪装 Disguises
此部分原由duangfafa大佬撰写,由半吊子kpAjun更新以适配最新版MM,如有错误,还请各位dalao指出,萌新感激不尽qwq
怪物伪装 (换皮)
Mob 伪装依赖于插件LibsDisguises和ProtocolLib。如果没有这两个插件,它们将无法工作。可以在此处找到 LibsDisguises 的最新文档
大多数功能不需要 LibsDisguises 的高级版本,因为 LibraryAddict 是一个非常好的人。(不信)
注意: ProtocolLib 的某些版本比其他版本更好 - 有些版本破坏了生物伪装,其他玩家伪装,我们无法控制这一点。LibsDisguises 插件会尝试自动更新到工作版本,但有时可能会失败。如果是这种情况,请检查不一致,通常我们有指向工作版本的备份链接
什么是伪装?
伪装可以让你的生物看起来像一个不同的生物、一个方块,甚至是一个物品!伪装非常适合 怪物,让您可以做其他事情不可能做的事情……例如,制作看起来像僵尸的蜘蛛 - 爬墙的僵尸!。可能性是巨大的。
在 spigot 文档中找到的任何实体类型都应该正常运行。
选项
所有的伪装都有特定的选项可供他们使用。这些选项位于伪装块下,只能与伪装结合使用(它们不能单独使用)。一些选项将是特定于生物的。可以使用 找到任何实体的选项列表/dhelp <entity>
。因为这是由您的插件生成的,所以它应该始终是最新的。
*请注意,Disguise曾使用YAML列表的形式来进行设置,在最新版的插件中,如此做回导致报错Out of Date并无法正常伪装* 部分版本的中文wiki已经过时,本条目给出的是可用的句法
伪装部分的语句应该被直接置放于Mob之下,不应置于Options\Skills或者任何其他部分中,用Disguise: 开头
下面是一些可以用于伪装的设置:
- setBurning true - 使生物看起来总是在燃烧
- setBlocking true - 导致某些伪装卡在“阻挡”动画中。
- setInvisible true - 使生物永久隐形
- setName - 设置伪装的实体名称
- setShowName true - 在某些通常没有的伪装(例如方块或物品)上显示名称标签
- setSneaking true - 导致某些伪装卡在“潜行”动画中。
- setSprinting true - 导致某些伪装卡在“冲刺”动画中。
- setModifyBoundingBox false - 将此设置为 false 将使生物保留其原始碰撞箱。
- setGlowing [true/false] - 使伪装永久发光。
- setGliding [true/false] - 使伪装永久滑翔。
“发光”和“滑翔”是在 2.3.2 版本中添加的。
示例:
SneakyDisguisingMob: Type: wither_skeleton Display: 'meh' CustomKillMessages: - '<target.name> was sneaked upon! (to death)' Health: 128 Disguise: player Steve setSkin meeeh.png setBurning true setSneaking true setSprinting true setModifyBoundingBox false setDynamicName true
铭牌
铭牌功能允许您扩展玩家伪装生物的原本被限制在16字的铭牌。要使用它,只需安装Holograms插件,然后在伪装中省略“Player”字段(仍然需要“setSkin”字段!)。如果您不指定Disguise中的“Player”字段,MM将使用“Display”字段而不是使用自定义铭牌。
Monkey: Type: skeleton Display: "this display name is too long for players normally" Disguise: player Steve setSkin Kurdie.png
此功能需要 LibsDisguises 和 Holograms 插件
如果您有 premium 版的MM插件您可以使用setDynamicName
选项使用多行伪装名称
例子
一些使用伪装功能的例子:
ExampleMob: Type: skeleton Disguise: player libraryaddict setCustomName "&8Not Darkitect" setSkin Darkitect.png
ExampleMob2: Type: skeleton Health: 20 Disguise: player Ashijin setSkin Notch.png
ExampleMob3: MobType: skeleton Health: 20 Disguise: pig
这是先前实例图片中“骷髅”(实际上为僵尸)的源码:
SLSkelF: Type: ZOMBIE Equipment: - IRON_SWORD HAND - SHIELD OFFHAND - LEATHER_HELMET HEAD - LEATHER_CHESTPLATE CHEST - LEATHER_LEGGINGS LEGS - LEATHER_BOOTS FEET Display: '&BSkeletal Fighter\n&ELv.<mob.level>' Disguise: SKELETON setDynamicName```