Impersonate

Impersonate

扮演:假设或扮演某个角色的性格

基础库

你是否曾想冒充另一位玩家?无论是为了制作动画、角色扮演、在派系中下五维国际象棋,还是仅仅为了捉弄朋友,都有很多(相对)正当的理由来冒用他人的身份。

需要最新版本的 Fabric API

概述

Impersonate 允许玩家采用其他玩家的姓名和外观。当冒充某人时,该玩家将:

  • 拥有被冒充玩家的皮肤
  • 拥有被冒充玩家的名牌
  • 以被冒充玩家的身份发送每一条聊天消息
  • 在在线玩家列表中显示为被冒充的玩家
  • 以被冒充玩家的身份签署书籍
  • 等等。

然而,他们无法欺骗被冒充玩家的宠物(如果有的话)。

为了避免管理混乱,服务器日志将始终显示真实玩家的姓名及其虚假身份。服务器操作员将同样看到持续进行的冒充行为。

本模组在服务器端运行(与原版客户端兼容),但仍建议在客户端安装,尤其是对于服务器操作员。

命令

Impersonate 添加了 /impersonate 命令,允许服务器操作员和地图制作者通过命令与API交互。

  • /impersonate disguise
    • /impersonate disguise as <名称> [<目标>] [<密钥>] :伪装一名或多名玩家
      • <名称> :要冒充的玩家名称。不必在线,甚至不必是真实存在的。
      • [<目标>](可选) :如果指定,必须是玩家的用户名或目标选择器。如果未指定,则默认为使用该命令的玩家。在命令方块中使用时,玩家不是可选项。
      • [<密钥>](可选) :如果指定,必须是作为冒充密钥的有效标识符。
    • /impersonate disguise clear [<目标>] [<密钥>] :停止一名或多名玩家的冒充
      • [<目标>](可选) :如果指定,必须是玩家的用户名或目标选择器。如果未指定,则默认为使用该命令的玩家。在命令方块中使用时,玩家不是可选项。
      • [<密钥>](可选) :如果指定,必须是先前用于启动冒充的有效标识符。如果未指定,该命令将清除所有进行中的冒充。

游戏规则

  • impersonate:fakeCapes :冒充者是否应获得被冒充玩家的披风和鞘翅。默认为 false。
  • impersonate:opRevealImpersonations :是否应向在线服务器操作员揭示进行中的冒充。默认为 true。
  • impersonate:logRevealImpersonations :是否应在服务器日志中揭示进行中的冒充。默认为 true。

作为模组开发者使用 Impersonate

你可以通过在你的 build.gradle 中插入以下内容来将 Impersonate 添加到你的开发环境中:

repositories {
    jcenter()
    maven {
        name = "Ladysnake Libs"
        url = 'https://dl.bintray.com/ladysnake/libs' }
    }
}

dependencies {
    modImplementation "io.github.ladysnake:Impersonate:${impersonate_version}"
    include "io.github.ladysnake:Impersonate:${impersonate_version}"
    // Impersonate 依赖
    include "com.github.onyxstudios.Cardinal-Components-API:cardinal-components-base:${cca_version}"
    include "com.github.onyxstudios.Cardinal-Components-API:cardinal-components-entity:${cca_version}"
}

然后你可以将库版本添加到你的 gradle.properties 文件中:

# Impersonate
impersonate_version = 1.x.y
# Cardinal Components
cca_version = 2.x.y

你可以在版本标签页找到 Impersonate 的当前版本, 并在适当的存储库找到最新的 CCA 版本。