mirror of
https://github.com/songoda/EpicBosses.git
synced 2025-03-12 14:39:05 +01:00
1.0.0-SNAPSHOT-U140
+ Fully implemented the drop table type editor + Shortened the name of the GUIs
This commit is contained in:
parent
1d426ba587
commit
b0111baeef
@ -1882,7 +1882,7 @@ SpecialSettingsEditorPanel:
|
||||
- '&7the skill editor panel to configure'
|
||||
- '&7the general skill options.'
|
||||
DropTableMainEditorPanel:
|
||||
name: '&b&l{name} Drop Table Editor'
|
||||
name: '&b&l{name} Editor'
|
||||
slots: 9
|
||||
Settings:
|
||||
emptySpaceFiller: true
|
||||
@ -1927,7 +1927,7 @@ DropTableMainEditorPanel:
|
||||
- '&7Click this button to go back to'
|
||||
- '&7the drop table list page.'
|
||||
DropTableTypeEditorPanel:
|
||||
name: '&b&l{name} Drop Table Editor'
|
||||
name: '&b&l{name} Editor'
|
||||
slots: 9
|
||||
Settings:
|
||||
backButton: true
|
||||
@ -1936,7 +1936,7 @@ DropTableTypeEditorPanel:
|
||||
type: WHITE_STAINED_GLASS_PANE
|
||||
name: '&7'
|
||||
Buttons:
|
||||
backButton: 5
|
||||
backButton: 9
|
||||
Items:
|
||||
'3':
|
||||
type: SPLASH_POTION
|
||||
|
@ -199,6 +199,24 @@ public class BossAPI {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static JsonObject createNewDropTableRewards(String type) {
|
||||
if(type.equalsIgnoreCase("SPRAY")) {
|
||||
SprayTableElement sprayTableElement = new SprayTableElement(new HashMap<>(), false, 15, 15);
|
||||
|
||||
return convertObjectToJsonObject(sprayTableElement);
|
||||
} else if(type.equalsIgnoreCase("DROP")) {
|
||||
DropTableElement dropTableElement = new DropTableElement(new HashMap<>(), false, 15);
|
||||
|
||||
return convertObjectToJsonObject(dropTableElement);
|
||||
} else if(type.equalsIgnoreCase("GIVE")) {
|
||||
GiveTableElement giveTableElement = new GiveTableElement(new HashMap<>());
|
||||
|
||||
return convertObjectToJsonObject(giveTableElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static JsonObject createNewSkillCustomData(String type) {
|
||||
JsonParser jsonParser = new JsonParser();
|
||||
String jsonString;
|
||||
|
@ -47,9 +47,9 @@ public class DropTableTypeEditorPanel extends VariablePanelHandler<DropTable> {
|
||||
Panel panel = panelBuilder.getPanel()
|
||||
.setParentPanelHandler(this.bossPanelManager.getMainDropTableEditMenu(), dropTable);
|
||||
|
||||
panelBuilderCounter.getSlotsWith("Spray").forEach(slot -> panel.setOnClick(slot, getAction(dropTable, "Spray")));
|
||||
panelBuilderCounter.getSlotsWith("Drop").forEach(slot -> panel.setOnClick(slot, getAction(dropTable, "Drop")));
|
||||
panelBuilderCounter.getSlotsWith("Give").forEach(slot -> panel.setOnClick(slot, getAction(dropTable, "Give")));
|
||||
panelBuilderCounter.getSlotsWith("Spray").forEach(slot -> panel.setOnClick(slot, getSprayAction(dropTable)));
|
||||
panelBuilderCounter.getSlotsWith("Drop").forEach(slot -> panel.setOnClick(slot, getDropAction(dropTable)));
|
||||
panelBuilderCounter.getSlotsWith("Give").forEach(slot -> panel.setOnClick(slot, getGiveAction(dropTable)));
|
||||
|
||||
panel.openFor(player);
|
||||
}
|
||||
@ -59,9 +59,26 @@ public class DropTableTypeEditorPanel extends VariablePanelHandler<DropTable> {
|
||||
|
||||
}
|
||||
|
||||
private ClickAction getAction(DropTable dropTable, String button) {
|
||||
private ClickAction getSprayAction(DropTable dropTable) {
|
||||
return event -> {
|
||||
dropTable.setDropType(button.toUpperCase());
|
||||
dropTable.setDropType("SPRAY");
|
||||
dropTable.setRewards(BossAPI.createNewDropTableRewards(dropTable.getDropType()));
|
||||
save(dropTable, event);
|
||||
};
|
||||
}
|
||||
|
||||
private ClickAction getDropAction(DropTable dropTable) {
|
||||
return event -> {
|
||||
dropTable.setDropType("DROP");
|
||||
dropTable.setRewards(BossAPI.createNewDropTableRewards(dropTable.getDropType()));
|
||||
save(dropTable, event);
|
||||
};
|
||||
}
|
||||
|
||||
private ClickAction getGiveAction(DropTable dropTable) {
|
||||
return event -> {
|
||||
dropTable.setDropType("GIVE");
|
||||
dropTable.setRewards(BossAPI.createNewDropTableRewards(dropTable.getDropType()));
|
||||
save(dropTable, event);
|
||||
};
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ package com.songoda.epicbosses.panel.droptables;
|
||||
import com.songoda.epicbosses.api.BossAPI;
|
||||
import com.songoda.epicbosses.droptable.DropTable;
|
||||
import com.songoda.epicbosses.managers.BossPanelManager;
|
||||
import com.songoda.epicbosses.utils.StringUtils;
|
||||
import com.songoda.epicbosses.utils.panel.Panel;
|
||||
import com.songoda.epicbosses.utils.panel.base.handlers.VariablePanelHandler;
|
||||
import com.songoda.epicbosses.utils.panel.builder.PanelBuilder;
|
||||
@ -34,6 +35,7 @@ public class MainDropTableEditorPanel extends VariablePanelHandler<DropTable> {
|
||||
Map<String, String> replaceMap = new HashMap<>();
|
||||
|
||||
replaceMap.put("{name}", BossAPI.getDropTableName(dropTable));
|
||||
replaceMap.put("{type}", StringUtils.get().formatString(dropTable.getDropType()));
|
||||
panelBuilder.addReplaceData(replaceMap);
|
||||
|
||||
PanelBuilderCounter panelBuilderCounter = panelBuilder.getPanelBuilderCounter();
|
||||
|
2
pom.xml
2
pom.xml
@ -20,7 +20,7 @@
|
||||
|
||||
<properties>
|
||||
<!--<plugin.version>maven-version-number-SNAPSHOT-U90</plugin.version>-->
|
||||
<plugin.version>1.0.0-U139</plugin.version>
|
||||
<plugin.version>1.0.0-U140</plugin.version>
|
||||
<plugin.name>EpicBosses</plugin.name>
|
||||
<plugin.main>com.songoda.epicbosses.CustomBosses</plugin.main>
|
||||
<plugin.author>AMinecraftDev</plugin.author>
|
||||
|
Loading…
Reference in New Issue
Block a user