DemoPage
基本信息
| 属性 | 值 |
|---|---|
| 类名 | betterachievementsdemo.betterachivements.DemoPage |
| 父类 | net.minecraftforge.common.AchievementPage |
| 实现接口 | ICustomIcon |
| 类型 | 抽象类 |
| 源文件 | src/demo/java/betterachievementsdemo/betterachivements/DemoPage.java |
功能
Demo mod 中的示例 AchievementPage 基类,构造时直接转发到 AchievementPage 父类,并自动实现 ICustomIcon。子类只需匿名实现 getPageIcon 即可自定义页签图标。
注意:包名拼写为
betterachivements(少一个e)—— 这是 mod 自带 demo 的原始拼写错误。
构造
public DemoPage(String name, Achievement... achievements)
直接调用 super(name, achievements)。
使用示例
private static AchievementPage page1 = new DemoPage("demoPage1", blue, red, rainbow) {
@Override
public ItemStack getPageIcon() {
return new ItemStack(Blocks.diamond_block);
}
};
// page2/page3/page4 同样的写法(演示多页)
注册:
AchievementPage.registerAchievementPage(page1);
AchievementPage.registerAchievementPage(page2);
AchievementPage.registerAchievementPage(page3);
AchievementPage.registerAchievementPage(page4);
注意:demoPage5 没有继承 DemoPage,而是用 IMCHelper.sendIconForPage("demoPage5", Blocks.gold_block) 通过 IMC 设置图标,作为 API 两种使用方式的对照示例。
相关条目
- ICustomIcon - 本类实现的接口
- DemoAchievement - 同 package 的成就类
- IMCHelper - 设置
demoPage5图标的 IMC 路径