Merge branch 'development' into 'development'

Fixed up the menus

See merge request Songoda/epicenchants!1
This commit is contained in:
Brianna O'Keefe 2019-08-07 21:13:08 +00:00
commit 84dd2e024b
29 changed files with 746 additions and 236 deletions

View File

@ -8,10 +8,7 @@ import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.*;
import java.nio.file.Files;
import java.util.*;
@ -23,15 +20,15 @@ public class FileManager extends Manager<String, FileConfiguration> {
private final String directory;
private final LinkedHashSet<FileLocation> files = new LinkedHashSet<>(asList(
of("menus/main-info-menu.yml", true),
of("menus/main-info-menu.yml", true, true),
of("menus/enchanter-menu.yml", true, true),
of("menus/tinkerer-menu.yml", true, true),
of("menus/alchemist-menu.yml", true, true),
of("menus/groups/simple-menu.yml", false),
of("menus/groups/unique-menu.yml", false),
of("menus/groups/elite-menu.yml", false),
of("menus/groups/ultimate-menu.yml", false),
of("menus/groups/legendary-menu.yml", false),
of("menus/groups/simple-menu.yml", true, true),
of("menus/groups/unique-menu.yml", true, true),
of("menus/groups/elite-menu.yml", true, true),
of("menus/groups/ultimate-menu.yml", true, true),
of("menus/groups/legendary-menu.yml", true, true),
of("enchants/elite/AntiGravity.yml", false),
of("enchants/elite/Frozen.yml", false),
@ -96,7 +93,7 @@ public class FileManager extends Manager<String, FileConfiguration> {
Bukkit.getConsoleSender().sendMessage("Creating file: " + fileLocation.getPath());
try {
System.out.println(fileLocation.getResourcePath(directory) + " : " + file.toPath());
// System.out.println(fileLocation.getResourcePath(directory) + " : " + file.toPath());
copy(instance.getResource(fileLocation.getResourcePath(directory)), Files.newOutputStream(file.toPath()));
} catch (IOException e) {
e.printStackTrace();

View File

@ -18,10 +18,8 @@ import java.util.HashSet;
import java.util.Set;
import static com.songoda.epicenchants.objects.Placeholder.of;
import static com.songoda.epicenchants.utils.single.Experience.changeExp;
import static com.songoda.epicenchants.utils.single.Experience.getExp;
import static com.songoda.epicenchants.utils.single.GeneralUtils.color;
import static com.songoda.epicenchants.utils.single.GeneralUtils.getSlots;
import static com.songoda.epicenchants.utils.single.Experience.*;
import static com.songoda.epicenchants.utils.single.GeneralUtils.*;
public class AlchemistMenu extends FastInv {
private final EpicEnchants instance;
@ -58,7 +56,7 @@ public class AlchemistMenu extends FastInv {
.filter(s -> !filter.contains(s))
.map(s -> "contents." + s)
.map(config::getConfigurationSection)
.forEach(section -> addItem(getSlots(config.getString("slot")), new ItemBuilder(section).build()));
.forEach(section -> addItem(getSlots(section.getString("slot")), new ItemBuilder(section).build()));
clear(RIGHT_SLOT);
clear(LEFT_SLOT);

View File

@ -13,10 +13,8 @@ import java.util.Map;
import java.util.UUID;
import static com.songoda.epicenchants.objects.Placeholder.of;
import static com.songoda.epicenchants.utils.single.Experience.changeExp;
import static com.songoda.epicenchants.utils.single.Experience.getExp;
import static com.songoda.epicenchants.utils.single.GeneralUtils.color;
import static com.songoda.epicenchants.utils.single.GeneralUtils.getSlots;
import static com.songoda.epicenchants.utils.single.Experience.*;
import static com.songoda.epicenchants.utils.single.GeneralUtils.*;
public class EnchanterMenu extends FastInv {
private final Map<UUID, Long> DELAY = new HashMap<>();
@ -32,6 +30,7 @@ public class EnchanterMenu extends FastInv {
.stream()
.map(s -> "contents." + s)
.map(config::getConfigurationSection)
.filter(s -> s.get("group") != null)
.forEach(section -> {
int expCost = section.getInt("exp-cost");
int ecoCost = section.getInt("eco-cost");
@ -69,6 +68,13 @@ public class EnchanterMenu extends FastInv {
DELAY.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + 120);
});
});
config.getConfigurationSection("contents").getKeys(false)
.stream()
.map(s -> "contents." + s)
.map(config::getConfigurationSection)
.filter(s -> s.get("group") == null)
.forEach(section -> addItem(getSlots(section.getString("slot")), new ItemBuilder(section).build()));
}
}

View File

@ -14,7 +14,7 @@ import java.util.stream.Collectors;
import java.util.stream.IntStream;
import static com.songoda.epicenchants.objects.Placeholder.of;
import static com.songoda.epicenchants.utils.single.GeneralUtils.color;
import static com.songoda.epicenchants.utils.single.GeneralUtils.*;
import static java.util.Arrays.stream;
public class InfoMenu extends FastInv {
@ -32,6 +32,18 @@ public class InfoMenu extends FastInv {
slots = stream(split, 0, split.length).filter(StringUtils::isNumeric).map(Integer::parseInt).collect(Collectors.toSet());
}
if (config.isConfigurationSection("contents"))
config.getConfigurationSection("contents").getKeys(false)
.stream()
.map(s -> "contents." + s)
.map(config::getConfigurationSection)
.forEach(section -> addItem(getSlots(section.getString("slot")), new ItemBuilder(section).build(), event -> {
if (section.getName().contains("back")) {
instance.getInfoManager().getMainInfoMenu().open(event.getPlayer());
}
}));
Iterator<Enchant> enchantIterator = instance.getEnchantManager().getEnchants(group).iterator();
slots.stream().filter(slot -> enchantIterator.hasNext()).forEach(slot -> {
Enchant enchant = enchantIterator.next();
@ -49,12 +61,5 @@ public class InfoMenu extends FastInv {
of("enchant", enchant.getIdentifier()),
of("description", enchant.getDescription().stream().map(s -> config.getString("enchant-item.description-color") + s).collect(Collectors.toList()))).build());
});
if (config.isConfigurationSection("contents"))
config.getConfigurationSection("contents").getKeys(false)
.stream()
.map(s -> "contents." + s)
.map(config::getConfigurationSection)
.forEach(section -> addItem(section.getInt("slot"), new ItemBuilder(section).build()));
}
}

View File

@ -7,7 +7,7 @@ import com.songoda.epicenchants.utils.objects.ItemBuilder;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.event.Listener;
import static com.songoda.epicenchants.utils.single.GeneralUtils.color;
import static com.songoda.epicenchants.utils.single.GeneralUtils.*;
public class MainInfoMenu extends FastInv implements Listener {
@ -17,7 +17,7 @@ public class MainInfoMenu extends FastInv implements Listener {
.stream()
.map(s -> "contents." + s)
.map(config::getConfigurationSection)
.forEach(section -> addItem(section.getInt("slot"), new ItemBuilder(section).build(), event -> {
.forEach(section -> addItem(getSlots(section.getString("slot")), new ItemBuilder(section).build(), event -> {
Group group = instance.getGroupManager().getValue(section.getString("group"))
.orElseThrow(() -> new IllegalArgumentException("Invalid group: " + section.getString("group")));
instance.getInfoManager().getMenu(group).ifPresent(menu -> menu.open(event.getPlayer()));

View File

@ -1,18 +0,0 @@
title: "Elite enchants"
rows: 1
#Slots that you want enchants to be displayed on
slots: "ALL_SLOTS"
#The group of the enchants to be displayed
group: ELITE
enchant-item:
description-color: "&f"
material: "PAPER"
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"

View File

@ -1,18 +0,0 @@
title: "Legendary enchants"
rows: 1
#Slots that you want enchants to be displayed on
slots: "ALL_SLOTS"
#The group of the enchants to be displayed
group: LEGENDARY
enchant-item:
description-color: "&f"
material: "PAPER"
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"

View File

@ -1,18 +0,0 @@
title: "Simple enchants"
rows: 1
#Slots that you want enchants to be displayed on
slots: "ALL_SLOTS"
#The group of the enchants to be displayed
group: SIMPLE
enchant-item:
description-color: "&f"
material: "PAPER"
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"

View File

@ -1,18 +0,0 @@
title: "Ultimate enchants"
rows: 1
#Slots that you want enchants to be displayed on
slots: "ALL_SLOTS"
#The group of the enchants to be displayed
group: ULTIMATE
enchant-item:
description-color: "&f"
material: "PAPER"
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"

View File

@ -1,18 +0,0 @@
title: "Unique enchants"
rows: 1
#Slots that you want enchants to be displayed on
slots: "ALL_SLOTS"
#The group of the enchants to be displayed
group: UNIQUE
enchant-item:
description-color: "&f"
material: "PAPER"
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"

View File

@ -1,29 +0,0 @@
title: "Main info menu"
rows: 1
contents:
1:
material: "PAPER"
display-name: "&f&lSimple Enchantments"
group: SIMPLE
slot: 2
2:
material: "PAPER"
display-name: "&a&lUnique Enchantments"
group: UNIQUE
slot: 3
3:
material: "PAPER"
display-name: "&b&lElite Enchantments"
group: ELITE
slot: 4
4:
material: "PAPER"
display-name: "&e&lUltimate Enchantments"
group: ULTIMATE
slot: 5
5:
material: "PAPER"
display-name: "&6&lLegendary Enchantments"
group: LEGENDARY
slot: 6

View File

@ -1,15 +1,15 @@
title: "Alchemist"
rows: 3
rows: 5
fill:
material: STAINED_GLASS_PANE
data: 7
data: 0
display-name: "&r"
left-slot: 3
right-slot: 5
preview-slot: 13
accept-slot: 22
left-slot: 11
right-slot: 15
preview-slot: 22
accept-slot: 31
book:
success-rate-formula: "({left_success_rate} + {right_success_rate}) / 4"
@ -25,14 +25,15 @@ dust:
contents:
preview:
material: STAINED_GLASS_PANE
data: 7
display-name: "&eITEM PREVIEW"
lore:
- "&7A preview of the item that you"
- "&7will receive from the alchemist"
- "&7will be displayed here."
accept-before:
material: STAINED_GLASS_PANE
data: 14
material: INK_SACK
data: 1
display-name: "&8[&eThe Alchemist&8]"
lore:
- "&7The alchemist will exchange:"
@ -47,8 +48,8 @@ contents:
- "&fthe same dust"
- "&7(of a higher percentage)"
accept-after:
material: STAINED_GLASS_PANE
data: 5
material: INK_SACK
data: 1
display-name: "&eClick to confirm"
lore:
- "&cCost: {exp_cost} EXP"
@ -56,3 +57,16 @@ contents:
- "&7Click to confirm the exchange"
- "&7after which you will receive"
- "&7the item displayed above."
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "0,1,7,8,9,17,27,35,36,37,43,44"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,38,39,40,41,42"

View File

@ -1,5 +1,5 @@
title: "Enchanter"
rows: 1
rows: 3
#You can choose to fill the entire inventory with this material
#fill:
@ -8,8 +8,8 @@ rows: 1
contents:
1:
material: "STAINED_GLASS_PANE"
data: 0
material: "INK_SACK"
data: 15
display-name: "&f&lSimple Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -22,10 +22,10 @@ contents:
group: SIMPLE
exp-cost: 400
eco-cost: 0
slot: 2
slot: 11
2:
material: "STAINED_GLASS_PANE"
data: 5
material: "INK_SACK"
data: 10
display-name: "&a&lUnique Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -38,10 +38,10 @@ contents:
group: UNIQUE
exp-cost: 800
eco-cost: 0
slot: 3
slot: 12
3:
material: "STAINED_GLASS_PANE"
data: 9
material: "INK_SACK"
data: 12
display-name: "&b&lElite Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -54,10 +54,10 @@ contents:
group: ELITE
exp-cost: 2500
eco-cost: 0
slot: 4
slot: 13
4:
material: "STAINED_GLASS_PANE"
data: 4
material: "INK_SACK"
data: 11
display-name: "&e&lUltimate Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -66,14 +66,14 @@ contents:
- "&fUse &e/ee list simple &7to view a list"
- "&fof possible enchants you could unlock!"
- ""
- "&b&lCOST &r&f {exp_cost} EXP"
- "&b&lCOST &r&f{exp_cost} EXP"
group: ULTIMATE
exp-cost: 5000
eco-cost: 0
slot: 5
slot: 14
5:
material: "STAINED_GLASS_PANE"
data: 1
material: "INK_SACK"
data: 14
display-name: "&6&lLegendary Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -86,4 +86,21 @@ contents:
group: LEGENDARY
exp-cost: 25000
eco-cost: 0
slot: 6
slot: 15
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "0,1,7,8,9,17,18,19,25,26"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,20,21,22,23,24"
whites:
material: STAINED_GLASS_PANE
display-name: "&r"
slot: "10,16"

View File

@ -0,0 +1,46 @@
title: "Elite enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: ELITE
enchant-item:
description-color: "&f"
material: "INK_SACK"
data: 12
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,46 @@
title: "Legendary enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: LEGENDARY
enchant-item:
description-color: "&f"
material: "INK_SACK"
data: 14
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,46 @@
title: "Simple enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: SIMPLE
enchant-item:
description-color: "&f"
material: "INK_SACK"
data: 15
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,46 @@
title: "Ultimate enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: ULTIMATE
enchant-item:
description-color: "&f"
material: "INK_SACK"
data: 11
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,46 @@
title: "Unique enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: UNIQUE
enchant-item:
description-color: "&f"
material: "INK_SACK"
data: 10
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,48 @@
title: "Main info menu"
rows: 3
contents:
1:
material: "INK_SACK"
data: 15
display-name: "&f&lSimple Enchantments"
group: SIMPLE
slot: 11
2:
material: "INK_SACK"
data: 10
display-name: "&a&lUnique Enchantments"
group: UNIQUE
slot: 12
3:
material: "INK_SACK"
data: 12
display-name: "&b&lElite Enchantments"
group: ELITE
slot: 13
4:
material: "INK_SACK"
data: 11
display-name: "&e&lUltimate Enchantments"
group: ULTIMATE
slot: 14
5:
material: "INK_SACK"
data: 14
display-name: "&6&lLegendary Enchantments"
group: LEGENDARY
slot: 15
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "0,1,7,8,9,17,18,19,25,26"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,4,5,6,20,21,22,23,24"
whites:
material: STAINED_GLASS_PANE
display-name: "&r"
slot: "10,16"

View File

@ -1,39 +1,49 @@
title: "Tinkerer"
rows: 6
player-slots: "1,2,3,9,10,11,12,18,19,20,21,27,28,29,30,36,37,38,39,45,46,47,48"
player-slots: "9,10,11,12,18,19,20,21,27,28,29,30,36,37,38,39"
tinkerer-slots: "5,6,7,14,15,16,17,23,24,25,26,32,33,34,35,41,42,43,44,50,51,52,53"
tinkerer-slots: "14,15,16,17,23,24,25,26,32,33,34,35,41,42,43,44"
slots: "(1,5) (2,6) (3,7) (9,14)
(10,15) (11,16) (12,17) (18,23)
(19,24) (20,25) (21,26) (27,32)
(28,33) (29,34) (30,35) (36,41)
(37,42) (38,43) (39,44) (45,50)
(46,51) (47,52) (48,53)"
slots: "(9,14) (10,15) (11,16) (12,17)
(18,23) (19,24) (20,25) (21,26)
(27,32) (28,33) (29,34) (30,35)
(36,41) (37,42) (38,43) (39,44)"
contents:
1:
material: "STAINED_GLASS_PANE"
display-name: " "
slot: "4,13,22,31,40"
accept-left:
material: "STAINED_GLASS_PANE"
data: 4
material: "INK_SACK"
data: 10
display-name: "&eClick to accept trade"
slot: 0
slot: 45
accept-right:
material: "STAINED_GLASS_PANE"
data: 4
material: "INK_SACK"
data: 10
display-name: "&eClick to accept trade"
slot: 8
slot: 53
deposit-all:
material: "STAINED_GLASS_PANE"
data: 4
material: "DOUBLE_PLANT"
display-name: "&l&eDeposit All"
lore:
- "&7Click to deposit all tinkerable items."
slot: "49"
slot: 49
explanation:
material: PAINTING
slot: 4
corners:
material: STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "0,1,7,8,46,52"
edge:
material: STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,47,48,50,51"
line:
material: STAINED_GLASS_PANE
display-name: "&r"
slot: "13,22,31,40"
exp-table-per-level:
DEFAULT: 10

View File

@ -1,14 +1,14 @@
title: "Alchemist"
rows: 3
rows: 5
fill:
material: GRAY_STAINED_GLASS_PANE
material: WHITE_STAINED_GLASS_PANE
display-name: "&r"
left-slot: 3
right-slot: 5
preview-slot: 13
accept-slot: 22
left-slot: 11
right-slot: 15
preview-slot: 22
accept-slot: 31
book:
success-rate-formula: "({left_success_rate} + {right_success_rate}) / 4"
@ -23,14 +23,14 @@ dust:
contents:
preview:
material: WHITE_STAINED_GLASS_PANE
material: GRAY_STAINED_GLASS_PANE
display-name: "&eITEM PREVIEW"
lore:
- "&7A preview of the item that you"
- "&7will receive from the alchemist"
- "&7will be displayed here."
accept-before:
material: RED_STAINED_GLASS_PANE
material: MAGENTA_DYE
display-name: "&8[&eThe Alchemist&8]"
lore:
- "&7The alchemist will exchange:"
@ -45,7 +45,7 @@ contents:
- "&fthe same dust"
- "&7(of a higher percentage)"
accept-after:
material: LIME_STAINED_GLASS_PANE
material: MAGENTA_DYE
display-name: "&eClick to confirm"
lore:
- "&cCost: {exp_cost} EXP"
@ -53,3 +53,14 @@ contents:
- "&7Click to confirm the exchange"
- "&7after which you will receive"
- "&7the item displayed above."
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "0,1,7,8,9,17,27,35,36,37,43,44"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "2,3,5,6,18,26,38,39,40,41,42"

View File

@ -1,5 +1,5 @@
title: "Enchanter"
rows: 1
rows: 3
#You can choose to fill the entire inventory with this material
#fill:
@ -8,7 +8,7 @@ rows: 1
contents:
1:
material: "WHITE_STAINED_GLASS_PANE"
material: "BONE_MEAL"
display-name: "&f&lSimple Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -21,9 +21,9 @@ contents:
group: SIMPLE
exp-cost: 400
eco-cost: 0
slot: 2
slot: 11
2:
material: "LIME_STAINED_GLASS_PANE"
material: "LIME_DYE"
display-name: "&a&lUnique Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -36,9 +36,9 @@ contents:
group: UNIQUE
exp-cost: 800
eco-cost: 0
slot: 3
slot: 12
3:
material: "CYAN_STAINED_GLASS_PANE"
material: "LIGHT_BLUE_DYE"
display-name: "&b&lElite Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -51,9 +51,9 @@ contents:
group: ELITE
exp-cost: 2500
eco-cost: 0
slot: 4
slot: 13
4:
material: "YELLOW_STAINED_GLASS_PANE"
material: "PURPLE_DYE"
display-name: "&e&lUltimate Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -62,13 +62,13 @@ contents:
- "&fUse &e/ee list simple &7to view a list"
- "&fof possible enchants you could unlock!"
- ""
- "&b&lCOST &r&f {exp_cost} EXP"
- "&b&lCOST &r&f{exp_cost} EXP"
group: ULTIMATE
exp-cost: 5000
eco-cost: 0
slot: 5
slot: 14
5:
material: "ORANGE_STAINED_GLASS_PANE"
material: "ORANGE_DYE"
display-name: "&6&lLegendary Enchantment &7(Right Click)"
lore:
- "&7Examine to receive a random"
@ -81,4 +81,19 @@ contents:
group: LEGENDARY
exp-cost: 25000
eco-cost: 0
slot: 6
slot: 15
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "0,1,7,8,9,17,18,19,25,26"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "2,3,5,6,20,21,22,23,24"
whites:
material: WHITE_STAINED_GLASS_PANE
display-name: "&r"
slot: "10,16"

View File

@ -0,0 +1,45 @@
title: "Elite enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: ELITE
enchant-item:
description-color: "&f"
material: LIGHT_BLUE_DYE
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: OAK_FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 37
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 43

View File

@ -0,0 +1,45 @@
title: "Legendary enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: LEGENDARY
enchant-item:
description-color: "&f"
material: "ORANGE_DYE"
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: OAK_FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,46 @@
title: "Simple enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: SIMPLE
enchant-item:
description-color: "&f"
material: "BONE_MEAL"
data: 15
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: OAK_FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,46 @@
title: "Ultimate enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: ULTIMATE
enchant-item:
description-color: "&f"
material: "PURPLE_DYE"
data: 11
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: OAK_FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,45 @@
title: "Unique enchants"
rows: 6
#Slots that you want enchants to be displayed on
slots: "10,11,12,13,14,15,16,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42"
#The group of the enchants to be displayed
group: UNIQUE
enchant-item:
description-color: "&f"
material: "LIME_DYE"
display-name: "{group_color}{enchant}"
lore:
- "&7Max level: &f{max_level}"
- "&7Applicable to: &f{applicable_to}"
- "&7Description:"
- "{description}"
contents:
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
data: 11
display-name: "&r"
slot: "1,7,9,17,36,44,45,46,52,53"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
data: 3
display-name: "&r"
slot: "2,3,5,6,18,26,27,35,47,48,49,50,51"
back:
material: OAK_FENCE_GATE
display-name: "&cBack to main"
slot: "0,8"
next-page:
material: MAP
display-name: "&cNext page"
slot: 43
previous-page:
material: MAP
display-name: "&cPrevious page"
slot: 37

View File

@ -0,0 +1,41 @@
title: "Main info menu"
rows: 3
contents:
1:
material: "BONE_MEAL"
display-name: "&f&lSimple Enchantments"
group: SIMPLE
slot: 11
2:
material: "LIME_DYE"
display-name: "&a&lUnique Enchantments"
group: UNIQUE
slot: 12
3:
material: "LIGHT_BLUE_DYE"
display-name: "&b&lElite Enchantments"
group: ELITE
slot: 13
4:
material: "PURPLE_DYE"
display-name: "&e&lUltimate Enchantments"
group: ULTIMATE
slot: 14
5:
material: "ORANGE_DYE"
display-name: "&6&lLegendary Enchantments"
group: LEGENDARY
slot: 15
corners:
material: BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "0,1,7,8,9,17,18,19,25,26"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "2,3,4,5,6,20,21,22,23,24"
whites:
material: WHITE_STAINED_GLASS_PANE
display-name: "&r"
slot: "10,16"

View File

@ -1,36 +1,46 @@
title: "Tinkerer"
rows: 6
player-slots: "1,2,3,9,10,11,12,18,19,20,21,27,28,29,30,36,37,38,39,45,46,47,48"
player-slots: "9,10,11,12,18,19,20,21,27,28,29,30,36,37,38,39"
tinkerer-slots: "5,6,7,14,15,16,17,23,24,25,26,32,33,34,35,41,42,43,44,50,51,52,53"
tinkerer-slots: "14,15,16,17,23,24,25,26,32,33,34,35,41,42,43,44"
slots: "(1,5) (2,6) (3,7) (9,14)
(10,15) (11,16) (12,17) (18,23)
(19,24) (20,25) (21,26) (27,32)
(28,33) (29,34) (30,35) (36,41)
(37,42) (38,43) (39,44) (45,50)
(46,51) (47,52) (48,53)"
slots: "(9,14) (10,15) (11,16) (12,17)
(18,23) (19,24) (20,25) (21,26)
(27,32) (28,33) (29,34) (30,35)
(36,41) (37,42) (38,43) (39,44)"
contents:
1:
material: "WHITE_STAINED_GLASS_PANE"
display-name: " "
slot: "4,13,22,31,40"
accept-left:
material: "LIME_STAINED_GLASS_PANE"
material: "LIME_DYE"
display-name: "&eClick to accept trade"
slot: 0
slot: 45
accept-right:
material: "LIME_STAINED_GLASS_PANE"
material: "LIME_DYE"
data: 10
display-name: "&eClick to accept trade"
slot: 8
slot: 53
deposit-all:
material: "LIME_STAINED_GLASS_PANE"
material: "SUNFLOWER"
display-name: "&l&eDeposit All"
lore:
- "&7Click to deposit all tinkerable items."
slot: "49"
slot: 49
explanation:
material: PAINTING
slot: 4
corners:
material: BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "0,1,7,8,46,52"
edge:
material: LIGHT_BLUE_STAINED_GLASS_PANE
display-name: "&r"
slot: "2,3,5,6,47,48,50,51"
line:
material: WHITE_STAINED_GLASS_PANE
display-name: "&r"
slot: "13,22,31,40"
exp-table-per-level:
DEFAULT: 10