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 两种使用方式的对照示例。

相关条目