|
|
配饰API (Accessory API)Github |相关wiki |源站链接支持: fabric本模组提供了一个配饰API,用于b1.7.3版本的Babric工具链。此mod提供了一个API,可以添加类似于“饰品API”和“饰品API”中的各种物品的额外槽位,并且其样式受到b1.7.3版本的Aether的启发。
开发者用法
要了解如何在Babric工具链中进行b1.7.3版本的modding,请加入[The Modification Station](链接)!
这与fabric和fabric-api非常相似,但适用于b1.7.3版本。
工作区
将Accessory API添加到你的`build.gradle`
```gradle
repositories {
maven {
name = \"Jitpack\"
url \"https://jitpack.io/\"
}
}
dependencies {
modImplementation(\'com.github.matthewperiut:accessory-api:0.5.1\') {
transitive false
}
}
```
推荐
如果你想快速了解如何使用这个API,请克隆库(最好在IDE中),然后导航到src/test/java/com/matthewperiut/testmod。
另外查看API javadocs / 文档
实施
在你的物品类中实现“配饰”(使用STAPI,将适用于任何API/mixins)
```java
public class ExampleRing extends TemplateItemBase implements Accessory
{
public Pendant(Identifier identifier)
{
super(identifier);
}
// To define trinket slots that your item can go into:
@Override
public String[] getAccessoryTypes(ItemInstance item)
{
return new String[]{ \"ring\" };
// return new String[0]; // returns no slots
// return new String[]{ \"ring\", \"cape\" }; // can be put in multiple types of slots
// return new String[]{ \"all\" }; // can be in any accessory slot
}
// other methods you can use, use @Override
// void tickWhileWorn(PlayerBase player, ItemInstance accessory)
// void onAccessoryAdded(PlayerBase player, ItemInstance accessory)
// void onAccessoryRemoved(PlayerBase player, ItemInstance accessory)
// Rendering
private YourCustomRenderer renderer;
@Override
public OptionalgetRenderer(){return Optional.ofNullable(renderer);}}```
你可以选择不同类型的默认配饰类型:
\"pendant\"
\"cape\"
\"shield\"
\"ring\"
\"gloves\"
\"misc\"
\"all\"
或使用你自己的自定义配饰类型
配饰功能解释
此功能在点击物品槽时调用,将物品传递给函数。
这提供了槽信息,以查看它是否与之兼容。
`String[] getAccessoryTypes(ItemInstance item)`
这在相关玩家的tick函数中调用,传递正在被打击的物品及玩家。
`void tickWhileWorn(PlayerBase player, ItemInstance item)`
这在与配饰相关的库存添加/移除物品时调用。
该函数提供了添加/移除配饰的玩家以及被添加/移除的物品。
`void onAccessoryAdded(PlayerBase player, ItemInstance accessory)`
`void onAccessoryRemoved(PlayerBase player, ItemInstance accessory)`
使用getRenderer提供呈现功能:
`public AccessoryRenderer getRenderer()`
创建配饰渲染器
例子:
```java
public class CustomRenderer implements AccessoryRenderer {
void renderThirdPerson(PlayerBase player, PlayerRenderer renderer, ItemInstance itemInstance, double x, double y, double z, float h, float v)
{
// 进行实体渲染操作
}
void renderFirstPerson(PlayerBase player, PlayerRenderer renderer, ItemInstance itemInstance)
{
// 进行实体第一人称渲染操作
}
}
```
与EntityRenderers类似
内置的配饰渲染器:
`CapeRenderer`
`GloveRenderer`
`NecklaceRenderer`
`ConfigurableRenderer`
截图:
https://i.sodamc.com/modrinth/V7l4lGVbxN.jpg?x-oss-process=style/forge2] https://i.sodamc.com/modrinth/rie1Zn5Hgf.jpg?x-oss-process=style/forge2]
来自Modrinth所有游戏版本b1.7.3所有类型babricfabric0.7.1accessoryapi-0.7.1.jar下载0.7.1#Release展开版本: 0.7.1支持游戏: b1.7.3类型: babricFabricRelease下载次数: 964[b1.7.3] 0.7.0accessoryapi-0.7.0.jar下载0.7.0#Release展开版本: 0.7.0支持游戏: b1.7.3类型: babricRelease下载次数: 272[b1.7.3] 0.6.3accessoryapi-0.6.3.jar下载0.6.3#ReleaseRemove GUI changes when no slots have been added展开版本: 0.6.3支持游戏: b1.7.3类型: babricRelease下载次数: 481[b1.7.3] 0.6.2accessoryapi-0.6.2.jar下载0.6.2#ReleaseFix crash w/o SPC-Babric展开版本: 0.6.2支持游戏: b1.7.3类型: babricRelease下载次数: 98[b1.7.3] 0.6.1accessoryapi-0.6.1.jar下载0.6.1#ReleaseFix spamming console展开版本: 0.6.1支持游戏: b1.7.3类型: babricRelease下载次数: 74[b1.7.3] 0.6.0accessoryapi-0.6.0.jar下载0.6.0#Release展开版本: 0.6.0支持游戏: b1.7.3类型: babricRelease下载次数: 101[b1.7.3] 0.5.5accessoryapi-0.5.5.jar下载0.5.5#Release- Allow less than vanilla number of hearts- Create Hearts command for SPC- Number of hearts now works on multiplayer展开版本: 0.5.5支持游戏: b1.7.3类型: babricRelease下载次数: 69[b1.7.3] 0.5.4accessoryapi-0.5.4.jar下载0.5.4#Release展开版本: 0.5.4支持游戏: b1.7.3类型: babricRelease下载次数: 71[b1.7.3] 0.5.3accessoryapi-0.5.3.jar下载0.5.3#Release展开版本: 0.5.3支持游戏: b1.7.3类型: babricRelease下载次数: 65[b1.7.3] 0.5.2accessoryapi-0.5.2.jar下载0.5.2#ReleaseImplementation of Extra HP展开版本: 0.5.2支持游戏: b1.7.3类型: babricRelease下载次数: 66[b1.7.3] 0.5.1accessoryapi-0.5.1.jar下载0.5.1#ReleaseInitial Release展开版本: 0.5.1支持游戏: b1.7.3类型: babricRelease下载次数: 75全部版本
markdown_parsed
文章类型:收录
layui.use([\'form\'], function(){
var form = layui.form;
});
配饰API |
楼主
2025-8-9 16:53:25
回复(0)
收起回复
|