# InlineHeads
[](https://jitpack.io/#BertTowne/InlineHeads)



---
## Requirements
- Java 21+
- Paper 或 Folia 1.21.4+
**警告:** 此插件需要客户端安装资源包。如果未安装资源包,客户端将无法连接到服务器。默认配置下,资源包将自动下载,也可以在 [这里](https://github.com/BertTowne/Pixelized) 找到,供高级用户使用。
---
## Description
InlineHeads 简单地允许在聊天或其他支持文本组件的地方使用玩家头颅,例如公告栏、动作条和标题。
这是一个在聊天中显示效果的例子:

看到我名字旁边的那个头颅了吗?那是我的水豚皮肤的头颅,完整分辨率,在一行聊天中。
---
## Getting Started (Server Admins)
该插件在没有使用 [MiniPlaceholders](https://modrinth.com/plugin/miniplaceholders) 的情况下将无法提供任何功能。请将 MiniPlaceholders 和 InlineHeads 的 jar 文件放入服务器的插件文件夹中,然后重启服务器。
要将玩家的头颅在文本中使用,请使用以下占位符格式:``,
其中 `[player name]` 是您想要显示其头颅的玩家的姓名。例如,要像上面图片中那样显示我的头颅,您可以使用 ``。
该插件将自动下载资源包并为您安装它。
资源包与服务器强制执行的其他资源包兼容,因此您可以在使用其他需要资源包的插件的同时使用 InlineHeads。
---
## Getting Started (Developers)
### Maven 用户:
Repository:
```xml
jitpack.io
https://jitpack.io
```
Dependency:
```xml
com.github.BertTowne
InlineHeads
v1.1.1
```
### Gradle 用户:
Repository:
```groovy
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
```
Dependency:
```groovy
dependencies {
implementation 'com.github.BertTowne:InlineHeads:v1.1.1'
}
```
InlineHeads 使用 Google 的 [Guice](https://github.com/google/guice) 依赖注入系统,所以要获得 InlineHeadsService 的实例,您可以将以下代码放在您定义类变量的位置:
```java
@Inject private InlineHeadsService inlineHeadsService;
```
然后,您可以使用服务来获取包含玩家头颅的 Component:
```java
Component head = inlineHeadsService.getHead(playerName);
```
**警告:** 此方法访问 Minotar API,因此建议谨慎使用,并且必须异步执行,以避免阻塞主线程。
从 Minotar API 中检索的图像将在最后访问后缓存 10 分钟,因此如果您需要多次获取相同的头颅,它将不会向 API 发送多次请求。
---
## How does it work?
InlineHeads 使用几种自定义字体来实现此效果:
- [Pixelized](https://github.com/BertTowne/Pixelized), 我为该插件专门创建的字体,它提供了渲染头颅所需的各个像素。
- [NegativeSpaceFont](https://github.com/AmberWat/NegativeSpaceFont), AmberWat 创建的字体,它提供了将像素组织成玩家头颅所需的间距。
虽然该插件以正确的顺序放置像素,但它会根据 [Minotar API](https://minotar.net/) 根据玩家的皮肤对其进行着色。
---