Skip to content

Commit 78302fb

Browse files
authored
Merge pull request #85 from Ben12345rocks/2.9.2
2.9.2
2 parents 81ea5b7 + c7c32ba commit 78302fb

File tree

7 files changed

+74
-21
lines changed

7 files changed

+74
-21
lines changed

AdvancedCore/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<modelVersion>4.0.0</modelVersion>
44
<groupId>com.Ben12345rocks</groupId>
55
<artifactId>AdvancedCore</artifactId>
6-
<version>2.9.1</version>
6+
<version>2.9.2</version>
77
<packaging>jar</packaging>
88
<name>AdvancedCore</name>
99
<properties>

AdvancedCore/src/com/Ben12345rocks/AdvancedCore/AdvancedCoreHook.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -535,10 +535,11 @@ public void run() {
535535
User user = UserManager.getInstance().getUser(new UUID(uuid));
536536
String name = user.getData().getString("PlayerName");
537537
if (uuids.containsKey(name)) {
538-
debug("Duplicate uuid? " + uuid + ":" + name + " Other key: " + uuids.get(name));
538+
debug("Duplicate uuid? " + uuid + " : " + name + " Other key: " + uuids.get(name));
539539
}
540540
uuids.put(name, uuid);
541541
}
542+
debug("Loaded uuids in the background");
542543
}
543544
});
544545
}

AdvancedCore/src/com/Ben12345rocks/AdvancedCore/Objects/User.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,10 @@ public Player getPlayer() {
255255
}
256256

257257
public OfflinePlayer getOfflinePlayer() {
258-
return Bukkit.getOfflinePlayer(java.util.UUID.fromString(uuid));
258+
if (uuid != null && !uuid.equals("")) {
259+
return Bukkit.getOfflinePlayer(java.util.UUID.fromString(uuid));
260+
}
261+
return null;
259262
}
260263

261264
/**

AdvancedCore/src/com/Ben12345rocks/AdvancedCore/UserManager/UserManager.java

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import com.Ben12345rocks.AdvancedCore.Objects.User;
1313
import com.Ben12345rocks.AdvancedCore.Objects.UserStorage;
1414
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
15+
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
1516
import com.Ben12345rocks.AdvancedCore.sql.Column;
1617

1718
/**
@@ -98,7 +99,7 @@ public User getUser(Player player) {
9899
*/
99100
@SuppressWarnings("deprecation")
100101
public User getUser(String playerName) {
101-
return new User(plugin.getPlugin(), playerName);
102+
return new User(plugin.getPlugin(), getProperName(playerName));
102103
}
103104

104105
/**
@@ -112,4 +113,28 @@ public User getUser(String playerName) {
112113
public User getUser(UUID uuid) {
113114
return new User(plugin.getPlugin(), uuid);
114115
}
116+
117+
public String getProperName(String name) {
118+
for (String s : plugin.getUuids().keySet()) {
119+
if (s.equalsIgnoreCase(name)) {
120+
return s;
121+
}
122+
}
123+
return name;
124+
}
125+
126+
public boolean userExist(UUID uuid) {
127+
if (uuid != null && uuid.getUUID() != null) {
128+
for (String str : getAllUUIDs()) {
129+
if (str.equals(uuid.getUUID())) {
130+
return true;
131+
}
132+
}
133+
}
134+
return false;
135+
}
136+
137+
public boolean userExist(String name) {
138+
return userExist(new UUID(PlayerUtils.getInstance().getUUID(name)));
139+
}
115140
}

AdvancedCore/src/com/Ben12345rocks/AdvancedCore/Util/Inventory/BInventory.java

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import org.bukkit.event.inventory.ClickType;
2020
import org.bukkit.event.inventory.InventoryClickEvent;
2121
import org.bukkit.event.inventory.InventoryCloseEvent;
22+
import org.bukkit.event.inventory.InventoryType;
2223
import org.bukkit.inventory.Inventory;
2324
import org.bukkit.inventory.ItemStack;
2425

@@ -361,27 +362,32 @@ public void onInventoryClick(InventoryClickEvent event) {
361362
return;
362363
}
363364

364-
// Main.plugin.debug("Event ran");
365-
366365
Inventory inv = event.getInventory();
367366

368367
if (this.inv != null && inv.equals(this.inv) && player != null
369-
&& player.getUniqueId().equals(((Player) event.getWhoClicked()).getUniqueId())) {
368+
&& this.player.getUniqueId().equals(((Player) event.getWhoClicked()).getUniqueId())) {
370369

370+
event.setCancelled(true);
371+
Player player = (Player) event.getWhoClicked();
372+
if (event.getClickedInventory() != null && !event.getClickedInventory().getType().equals(InventoryType.CHEST)) {
373+
return;
374+
}
375+
371376
if (!pages) {
372377
for (int buttonSlot : getButtons().keySet()) {
373378
BInventoryButton button = getButtons().get(buttonSlot);
374379
if (event.getSlot() == buttonSlot) {
375-
// Main.plugin.debug("Running onclick");
376-
Player player = (Player) event.getWhoClicked();
377-
event.setCancelled(true);
378380
player.closeInventory();
379381
Bukkit.getServer().getScheduler()
380382
.runTaskAsynchronously(AdvancedCoreHook.getInstance().getPlugin(), new Runnable() {
381383

382384
@Override
383385
public void run() {
384-
button.onClick(new ClickEvent(event));
386+
try {
387+
button.onClick(new ClickEvent(event));
388+
} catch (Exception e) {
389+
e.printStackTrace();
390+
}
385391
}
386392
});
387393
destroy();
@@ -390,20 +396,22 @@ public void run() {
390396

391397
}
392398
} else {
393-
event.setCancelled(true);
394399
int slot = event.getSlot();
395400
if (slot < maxInvSize - 9) {
396401
int buttonSlot = (page - 1) * (maxInvSize - 9) + event.getSlot();
397402
BInventoryButton button = getButtons().get(buttonSlot);
398403
if (button != null) {
399-
Player player = (Player) event.getWhoClicked();
400404
player.closeInventory();
401405
Bukkit.getServer().getScheduler()
402406
.runTaskAsynchronously(AdvancedCoreHook.getInstance().getPlugin(), new Runnable() {
403407

404408
@Override
405409
public void run() {
406-
button.onClick(new ClickEvent(event));
410+
try {
411+
button.onClick(new ClickEvent(event));
412+
} catch (Exception e) {
413+
e.printStackTrace();
414+
}
407415
}
408416
});
409417
destroy();
@@ -412,16 +420,14 @@ public void run() {
412420

413421
} else if (slot == maxInvSize - 9) {
414422
if (page > 1) {
415-
Player player = (Player) event.getWhoClicked();
416-
player.closeInventory();
417423
int nextPage = page - 1;
424+
player.closeInventory();
418425
openInventory(player, nextPage);
419426
}
420427
} else if (slot == maxInvSize - 1) {
421428
// AdvancedCoreHook.getInstance().debug(maxPage + " " +
422429
// page);
423430
if (maxPage > page) {
424-
Player player = (Player) event.getWhoClicked();
425431
player.closeInventory();
426432
int nextPage = page + 1;
427433
openInventory(player, nextPage);
@@ -432,7 +438,12 @@ public void run() {
432438

433439
for (BInventoryButton b : pageButtons) {
434440
if (slot == b.getSlot() + (getMaxInvSize() - 9)) {
435-
b.onClick(new ClickEvent(event));
441+
player.closeInventory();
442+
try {
443+
b.onClick(new ClickEvent(event));
444+
} catch (Exception e) {
445+
e.printStackTrace();
446+
}
436447
}
437448
}
438449
}

AdvancedCore/src/com/Ben12345rocks/AdvancedCore/Util/Misc/PlayerUtils.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,15 @@ public String getUUID(String playerName) {
151151
return p.getUniqueId().toString();
152152

153153
}
154+
155+
@SuppressWarnings("deprecation")
156+
public boolean isValidUser(String name) {
157+
OfflinePlayer p = Bukkit.getOfflinePlayer(name);
158+
if (p.hasPlayedBefore() || p.isOnline()) {
159+
return true;
160+
}
161+
return UserManager.getInstance().userExist(name);
162+
}
154163

155164
/**
156165
* Checks for permission.

AdvancedCore/src/com/Ben12345rocks/AdvancedCore/sql/Table.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -166,12 +166,16 @@ public List<Column> getExact(Column column) {
166166
String query = "SELECT * FROM " + getName() + " WHERE `" + column.getName() + "`=?";
167167
try {
168168
PreparedStatement s = sqLite.getSQLConnection().prepareStatement(query);
169+
String value = "";
170+
if (column.getValue() != null) {
171+
value = column.getValue().toString();
172+
}
169173
if (column.dataType == DataType.STRING) {
170-
s.setString(1, column.getValue().toString());
174+
s.setString(1, value);
171175
} else if (column.dataType == DataType.INTEGER) {
172-
s.setInt(1, Integer.parseInt(column.getValue().toString()));
176+
s.setInt(1, Integer.parseInt(value));
173177
} else {
174-
s.setFloat(1, Float.parseFloat(column.getValue().toString()));
178+
s.setFloat(1, Float.parseFloat(value));
175179
}
176180
ResultSet rs = s.executeQuery();
177181
try {

0 commit comments

Comments
 (0)