Search in sources :

Example 1 with JsonDocBasic

use of betterquesting.api.jdoc.JsonDocBasic in project BetterQuesting by Funwayguy.

the class GuiQuestEditor method actionPerformed.

@Override
public void actionPerformed(GuiButton button) {
    super.actionPerformed(button);
    if (// Rewards
    button.id == 1) {
        mc.displayGuiScreen(new GuiRewardEditor(this, quest));
    } else if (// Tasks
    button.id == 2) {
        mc.displayGuiScreen(new GuiTaskEditor(this, quest));
    } else if (// Prerequisites
    button.id == 3) {
        mc.displayGuiScreen(new GuiPrerequisiteEditor(this, quest));
    } else if (// Raw JSON
    button.id == 4) {
        this.lastEdit = new NBTTagCompound();
        quest.writeToNBT(lastEdit, EnumSaveType.CONFIG);
        JsonDocEvent event = new JsonDocEvent(new JsonDocBasic(null, "jdoc.betterquesting.quest"));
        MinecraftForge.EVENT_BUS.post(event);
        mc.displayGuiScreen(new GuiJsonEditor(this, lastEdit, event.getJdocResult()));
    } else if (button.id == 5) {
        boolean main = !quest.getProperties().getProperty(NativeProps.MAIN);
        quest.getProperties().setProperty(NativeProps.MAIN, main);
        button.displayString = I18n.format("betterquesting.btn.is_main") + ": " + main;
        SendChanges();
    } else if (button.id == 6) {
        EnumLogic[] logicList = EnumLogic.values();
        EnumLogic logic = quest.getProperties().getProperty(NativeProps.LOGIC_QUEST);
        logic = logicList[(logic.ordinal() + 1) % logicList.length];
        quest.getProperties().setProperty(NativeProps.LOGIC_QUEST, logic);
        button.displayString = I18n.format("betterquesting.btn.logic") + ": " + logic;
        SendChanges();
    } else if (button.id == 7) {
        EnumQuestVisibility[] visList = EnumQuestVisibility.values();
        EnumQuestVisibility vis = quest.getProperties().getProperty(NativeProps.VISIBILITY);
        vis = visList[(vis.ordinal() + 1) % visList.length];
        quest.getProperties().setProperty(NativeProps.VISIBILITY, vis);
        button.displayString = I18n.format("betterquesting.btn.show") + ": " + vis;
        SendChanges();
    }
}
Also used : EnumLogic(betterquesting.api.enums.EnumLogic) GuiTaskEditor(betterquesting.client.gui.editors.tasks.GuiTaskEditor) JsonDocEvent(betterquesting.api.events.JsonDocEvent) JsonDocBasic(betterquesting.api.jdoc.JsonDocBasic) NBTTagCompound(net.minecraft.nbt.NBTTagCompound) EnumQuestVisibility(betterquesting.api.enums.EnumQuestVisibility) GuiRewardEditor(betterquesting.client.gui.editors.rewards.GuiRewardEditor) GuiJsonEditor(betterquesting.client.gui.editors.json.scrolling.GuiJsonEditor)

Aggregations

EnumLogic (betterquesting.api.enums.EnumLogic)1 EnumQuestVisibility (betterquesting.api.enums.EnumQuestVisibility)1 JsonDocEvent (betterquesting.api.events.JsonDocEvent)1 JsonDocBasic (betterquesting.api.jdoc.JsonDocBasic)1 GuiJsonEditor (betterquesting.client.gui.editors.json.scrolling.GuiJsonEditor)1 GuiRewardEditor (betterquesting.client.gui.editors.rewards.GuiRewardEditor)1 GuiTaskEditor (betterquesting.client.gui.editors.tasks.GuiTaskEditor)1 NBTTagCompound (net.minecraft.nbt.NBTTagCompound)1