Skip to content
This repository was archived by the owner on Sep 9, 2024. It is now read-only.

Commit d7cc780

Browse files
committed
2.9.9-RC2
+ Refactored some code + Fixed disabled enchants being added to the GUI
1 parent 19c75f6 commit d7cc780

File tree

8 files changed

+82
-131
lines changed

8 files changed

+82
-131
lines changed

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ bin/
55
/target/
66
/.gradle/
77
.idea/
8-
dependency-reduced-pom.xml
8+
*.iml

RPBookGUI.iml

-58
This file was deleted.

pom.xml

+2-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<modelVersion>4.0.0</modelVersion>
66
<groupId>me.puyodead1</groupId>
77
<artifactId>RPBookGUI</artifactId>
8-
<version>2.9.9-RC1</version>
8+
<version>2.9.9-RC2</version>
99
<name>RPBookGUI</name>
1010

1111
<repositories>
@@ -63,6 +63,7 @@
6363
<artifactId>maven-shade-plugin</artifactId>
6464
<version>3.1.0</version>
6565
<configuration>
66+
<createDependencyReducedPom>false</createDependencyReducedPom>
6667
<relocations>
6768
<relocation>
6869
<pattern>org.bstats</pattern>

src/main/java/io/github/puyodead1/rpbookgui/Inventories.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,8 @@ public static Inventory rarityInventory(EnchantRarity rarity) {
6565

6666
for(int i = 0; i < rarity.getEnchants().size(); i++) {
6767
final CustomEnchant ce = rarity.getEnchants().get(i);
68-
inv.setItem(i, ItemStackUtils.enchantBook(rarity, ce).clone());
68+
if(!ce.isEnabled()) continue;
69+
inv.addItem(ItemStackUtils.enchantBook(rarity, ce).clone());
6970
}
7071
inv.setItem(inv.getSize() - 1, ItemStackUtils.back().clone());
7172
return inv;

src/main/java/io/github/puyodead1/rpbookgui/RPBookGUI.java

+6-2
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@
2727
import org.bukkit.ChatColor;
2828
import org.bukkit.plugin.java.JavaPlugin;
2929

30+
import java.util.ArrayList;
31+
import java.util.List;
32+
3033
public class RPBookGUI extends JavaPlugin {
3134
public static RPBookGUI getPlugin;
3235

@@ -106,7 +109,7 @@ public void InitEvents() {
106109
*/
107110
public void InitMetrics() {
108111
long started = System.currentTimeMillis();
109-
new Metrics(this,4890);
112+
new Metrics(this, 4890);
110113

111114
Bukkit.getConsoleSender().sendMessage(ChatColor.translateAlternateColorCodes('&', "&7[&dRPBookGUI&7] &bInitialized Metrics &e("
112115
+ (System.currentTimeMillis() - started) + "ms)"));
@@ -117,8 +120,9 @@ public void InitMetrics() {
117120
*/
118121
private void InitRarities() {
119122
long started = System.currentTimeMillis();
123+
120124
for (EnchantRarity enchantRarity : RandomPackageAPI.INSTANCE.getAllCustomEnchantRarities().values()) {
121-
if(enchantRarity.getIdentifier().equals("RANDOM")) continue;
125+
if (enchantRarity.getIdentifier().equals("RANDOM")) continue;
122126
RPBookGUIUtils.addEnchantRarity(enchantRarity);
123127
}
124128

src/main/java/io/github/puyodead1/rpbookgui/events/EnchantInventoryClick.java

+34-34
Original file line numberDiff line numberDiff line change
@@ -19,44 +19,44 @@ public class EnchantInventoryClick extends RPBookGUIUtils implements Listener {
1919

2020
@EventHandler
2121
public void clickEvent(InventoryClickEvent e) {
22-
if (!e.isCancelled() && e.getCurrentItem() != null
23-
&& !e.getCurrentItem().getType().equals(Material.AIR)
24-
&& e.getClickedInventory() != null && e.getCursor() != null
25-
&& !e.getClick().equals(ClickType.DOUBLE_CLICK)) {
26-
ItemStack item = e.getCurrentItem();
27-
Player player = (Player) e.getWhoClicked();
28-
String invTitle = e.getView().getTitle();
22+
if (e.isCancelled() || e.getCurrentItem() == null
23+
|| e.getCurrentItem().getType().equals(Material.AIR)
24+
|| e.getClickedInventory() == null || e.getCursor() == null
25+
|| e.getClick().equals(ClickType.DOUBLE_CLICK)) return;
2926

30-
if (enchants.keySet().contains(
31-
stripColor(invTitle).toUpperCase().replace(" ", "_"))) {
32-
e.setCancelled(true);
27+
ItemStack item = e.getCurrentItem();
28+
Player player = (Player) e.getWhoClicked();
29+
String invTitle = e.getView().getTitle();
3330

34-
if (item.getType()
35-
.equals(UMaterial.match("BOOK").getMaterial())) {
36-
// Note: there was the old enchant constructor removal here,
37-
// but
38-
// doesnt seem needed as there is only one enchant now
39-
if (RPBookGUI.getPlugin.getConfig().getBoolean(
40-
"settings.use success destroy configuration")) {
41-
player.getOpenInventory().close();
42-
player.openInventory(
43-
Inventories.successAndDestroyInventory(
44-
RandomPackageAPI.INSTANCE.valueOfCustomEnchant(item)));
45-
} else {
46-
player.getInventory().addItem(item);
47-
if (!RPBookGUI.getPlugin.getConfig()
48-
.getBoolean("settings.keep inventory open"))
49-
player.getOpenInventory().close();
50-
player.sendMessage(RPBookGUIUtils
51-
.chatColor(RPBookGUI.getPlugin.getConfig()
52-
.getString("messages.added book")
53-
.replace("{NAME}", item.getItemMeta()
54-
.getDisplayName())));
55-
}
56-
} else {
31+
if (enchants.containsKey(
32+
stripColor(invTitle).toUpperCase().replace(" ", "_"))) {
33+
e.setCancelled(true);
34+
35+
if (item.getType()
36+
.equals(UMaterial.match("BOOK").getMaterial())) {
37+
// Note: there was the old enchant constructor removal here,
38+
// but
39+
// doesnt seem needed as there is only one enchant now
40+
if (RPBookGUI.getPlugin.getConfig().getBoolean(
41+
"settings.use success destroy configuration")) {
5742
player.getOpenInventory().close();
58-
player.openInventory(Inventories.mainInventory());
43+
player.openInventory(
44+
Inventories.successAndDestroyInventory(
45+
RandomPackageAPI.INSTANCE.valueOfCustomEnchant(item)));
46+
} else {
47+
player.getInventory().addItem(item);
48+
if (!RPBookGUI.getPlugin.getConfig()
49+
.getBoolean("settings.keep inventory open"))
50+
player.getOpenInventory().close();
51+
player.sendMessage(RPBookGUIUtils
52+
.chatColor(RPBookGUI.getPlugin.getConfig()
53+
.getString("messages.added book")
54+
.replace("{NAME}", item.getItemMeta()
55+
.getDisplayName())));
5956
}
57+
} else {
58+
player.getOpenInventory().close();
59+
player.openInventory(Inventories.mainInventory());
6060
}
6161
}
6262
}

src/main/java/io/github/puyodead1/rpbookgui/events/MainInventoryClick.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,14 @@ public void clickEvent(InventoryClickEvent e) {
2727
if("Enchantment Categories".equals(invTitle)) {
2828
String itemName = item.getItemMeta().getDisplayName().split(" ")[0];
2929
itemName = stripColor(itemName).toUpperCase();
30-
30+
31+
// TODO: this is terrible
3132
for(final EnchantRarity rarity : rarities.values()) {
3233
if(itemName.equals(rarity.getIdentifier())) {
3334
e.setCancelled(true);
3435
player.getOpenInventory().close();
3536
player.openInventory(Inventories.rarityInventory(rarity));
37+
return;
3638
}
3739
}
3840
}

src/main/java/io/github/puyodead1/rpbookgui/events/RarityInventoryClick.java

+34-33
Original file line numberDiff line numberDiff line change
@@ -18,37 +18,38 @@
1818

1919
public class RarityInventoryClick extends RPBookGUIUtils implements Listener {
2020

21-
@EventHandler
22-
public void clickEvent(InventoryClickEvent e) {
23-
if (!e.isCancelled() && e.getCurrentItem() != null
24-
&& !e.getCurrentItem().getType().equals(Material.AIR)
25-
&& e.getClickedInventory() != null && e.getCursor() != null
26-
&& !e.getClick().equals(ClickType.DOUBLE_CLICK)) {
27-
ItemStack item = e.getCurrentItem();
28-
Player player = (Player) e.getWhoClicked();
29-
String invTitle = e.getView().getTitle();
30-
31-
32-
if (rarities.keySet().contains(stripColor(invTitle))) {
33-
e.setCancelled(true);
34-
35-
if(item.getType().equals(UMaterial.match("BOOK").getMaterial())) {
36-
// Close if its the back button
37-
if (item.getItemMeta().getDisplayName().equals(ItemStackUtils.back()
38-
.clone().getItemMeta().getDisplayName())) {
39-
player.getOpenInventory().close();
40-
player.openInventory(Inventories.mainInventory());
41-
}
42-
player.getOpenInventory().close();
43-
final CustomEnchant ce = RandomPackageAPI.INSTANCE.valueOfCustomEnchant(stripColor(
44-
e.getCurrentItem().getItemMeta().getDisplayName()),
45-
true);
46-
player.openInventory(Inventories.enchantInventory(ce));
47-
} else {
48-
player.getOpenInventory().close();
49-
player.openInventory(Inventories.mainInventory());
50-
}
51-
}
52-
}
53-
}
21+
@EventHandler
22+
public void clickEvent(InventoryClickEvent e) {
23+
if (e.isCancelled() || e.getCurrentItem() == null || e.getCurrentItem() == null
24+
|| e.getCurrentItem().getType().equals(Material.AIR)
25+
|| e.getClickedInventory() == null || e.getCursor() == null
26+
|| e.getClick().equals(ClickType.DOUBLE_CLICK))
27+
return;
28+
29+
ItemStack item = e.getCurrentItem();
30+
Player player = (Player) e.getWhoClicked();
31+
String invTitle = e.getView().getTitle();
32+
33+
if (rarities.containsKey(stripColor(invTitle))) {
34+
e.setCancelled(true);
35+
36+
if (item.getType().equals(UMaterial.match("BOOK").getMaterial())) {
37+
// Close if its the back button
38+
if (item.getItemMeta().getDisplayName().equals(ItemStackUtils.back()
39+
.clone().getItemMeta().getDisplayName())) {
40+
player.getOpenInventory().close();
41+
player.openInventory(Inventories.mainInventory());
42+
}
43+
player.getOpenInventory().close();
44+
final CustomEnchant ce = RandomPackageAPI.INSTANCE.valueOfCustomEnchant(stripColor(
45+
e.getCurrentItem().getItemMeta().getDisplayName()),
46+
true);
47+
player.openInventory(Inventories.enchantInventory(ce));
48+
} else {
49+
player.getOpenInventory().close();
50+
player.openInventory(Inventories.mainInventory());
51+
}
52+
}
53+
54+
}
5455
}

0 commit comments

Comments
 (0)