Search in sources :

Example 1 with CycleRecipeElement

use of slimeknights.tconstruct.library.client.book.elements.CycleRecipeElement in project TinkersConstruct by SlimeKnights.

the class ContentModifier method build.

@Override
public void build(BookData book, ArrayList<BookElement> list, boolean brightSide) {
    Modifier modifier = getModifier();
    if (modifier == TinkerModifiers.empty.get() || this.recipes.isEmpty()) {
        list.add(new ImageElement(0, 0, 32, 32, ImageData.MISSING));
        System.out.println("Modifier with id " + modifierID + " not found");
        return;
    }
    this.addTitle(list, getTitle(), true, modifier.getColor());
    // description
    int y = getTitleHeight();
    int h = more_text_space ? BookScreen.PAGE_HEIGHT * 2 / 5 : BookScreen.PAGE_HEIGHT * 2 / 7;
    list.add(new TextElement(5, y, BookScreen.PAGE_WIDTH - 10, h, text));
    if (this.effects.length > 0) {
        TextData head = new TextData(I18n.get(KEY_EFFECTS));
        head.underlined = true;
        list.add(new TextElement(5, y + h, BookScreen.PAGE_WIDTH / 2 - 5, BookScreen.PAGE_HEIGHT - h - 20, head));
        List<TextData> effectData = Lists.newArrayList();
        for (String e : this.effects) {
            effectData.add(new TextData("\u25CF "));
            effectData.add(new TextData(e));
            effectData.add(new TextData("\n"));
        }
        list.add(new TextElement(5, y + 14 + h, BookScreen.PAGE_WIDTH / 2 + 5, BookScreen.PAGE_HEIGHT - h - 20, effectData));
    }
    if (recipes.size() > 1) {
        int col = book.appearance.structureButtonColor;
        int colHover = book.appearance.structureButtonColorHovered;
        list.add(new CycleRecipeElement(BookScreen.PAGE_WIDTH - ArrowButton.ArrowType.RIGHT.w - 32, 160, ArrowButton.ArrowType.RIGHT, col, colHover, this, book, list));
    }
    this.buildAndAddRecipeDisplay(book, list, this.recipes.get(this.currentRecipe), null);
}
Also used : TextElement(slimeknights.mantle.client.screen.book.element.TextElement) ImageElement(slimeknights.mantle.client.screen.book.element.ImageElement) TextData(slimeknights.mantle.client.book.data.element.TextData) CycleRecipeElement(slimeknights.tconstruct.library.client.book.elements.CycleRecipeElement) Modifier(slimeknights.tconstruct.library.modifiers.Modifier)

Aggregations

TextData (slimeknights.mantle.client.book.data.element.TextData)1 ImageElement (slimeknights.mantle.client.screen.book.element.ImageElement)1 TextElement (slimeknights.mantle.client.screen.book.element.TextElement)1 CycleRecipeElement (slimeknights.tconstruct.library.client.book.elements.CycleRecipeElement)1 Modifier (slimeknights.tconstruct.library.modifiers.Modifier)1