pls fix issues #3, #4, #5 and #6 or i might become a goose farmer /s

This commit is contained in:
LunarAkai 2024-05-03 22:45:25 +02:00
commit 36e96a50e8
2 changed files with 15 additions and 9 deletions

View file

@ -38,12 +38,18 @@ public class MinecleanerListener implements Listener {
if(arena != null) { if(arena != null) {
e.setCancelled(true); e.setCancelled(true);
MinecleanerArena arenaClicked = plugin.getArenaList().getArenaAtBlock(block); MinecleanerArena arenaClicked = plugin.getArenaList().getArenaAtBlock(block);
if(arenaClicked != arena) {
return;
}
boolean hasRightClicked = false; boolean hasRightClicked = false;
if(e.getAction() == Action.RIGHT_CLICK_BLOCK) { if(e.getAction() == Action.RIGHT_CLICK_BLOCK) {
hasRightClicked = true; hasRightClicked = true;
} }
if(!arenaClicked.getCurrentMinecleanerGame().gameover) {
if(arenaClicked == arena && arena.getArenaStatus() == ArenaStatus.PLAYING) { if(!arena.getCurrentMinecleanerGame().gameover && (arena.getArenaStatus() == ArenaStatus.PLAYING || arena.getArenaStatus() == ArenaStatus.COMPLETED)) {
if(arena.getArenaStatus() == ArenaStatus.PLAYING) {
int d0x = arena.getOrientation().getModX(); int d0x = arena.getOrientation().getModX();
int d0z = arena.getOrientation().getModZ(); int d0z = arena.getOrientation().getModZ();
int d1x = -d0z; int d1x = -d0z;
@ -73,14 +79,14 @@ public class MinecleanerListener implements Listener {
blockx -= blockxInt; blockx -= blockxInt;
blockz -= blockzInt; blockz -= blockzInt;
if(blockzInt < arena.getArenaWidth() && blockxInt < arenaClicked.getArenaHeight()) { if(blockzInt < arena.getArenaWidth() && blockxInt < arena.getArenaHeight()) {
plugin.getManager().handleFieldClick(e.getPlayer(), blockzInt, blockxInt, hasRightClicked); plugin.getManager().handleFieldClick(e.getPlayer(), blockzInt, blockxInt, hasRightClicked);
} }
//player.sendMessage("Arena click! " + blockxInt + " " + blockzInt + " Right Clicked: " + hasRightClicked); //player.sendMessage("Arena click! " + blockxInt + " " + blockzInt + " Right Clicked: " + hasRightClicked);
} }
} }
} }
} else if(arenaClicked.hasPlayer() && arenaClicked.getArenaStatus() == ArenaStatus.COMPLETED && !hasRightClicked && (plugin.getManager().getSettingsValue("allowmanualreset", e.getPlayer()) == 1)) { } else if(arena.hasPlayer() && arena.getArenaStatus() == ArenaStatus.COMPLETED && !hasRightClicked && (plugin.getManager().getSettingsValue("allowmanualreset", e.getPlayer()) == 1)) {
plugin.getManager().getSchedulerGameOver().cancel(); plugin.getManager().getSchedulerGameOver().cancel();
plugin.getManager().leaveArena(arenaClicked.getCurrentPlayer(), false); plugin.getManager().leaveArena(arenaClicked.getCurrentPlayer(), false);
} }
@ -126,7 +132,6 @@ public class MinecleanerListener implements Listener {
} }
} }
if(e.getInventory().equals(plugin.getManager().getSettingsInventory())) { if(e.getInventory().equals(plugin.getManager().getSettingsInventory())) {
e.setCancelled(true);
int slot = e.getRawSlot(); int slot = e.getRawSlot();
switch (slot) { switch (slot) {
case 10: { case 10: {

View file

@ -146,6 +146,7 @@ public class MinecleanerManager {
MinecleanerArena arena = plugin.getArenaList().getPlayerArena(player); MinecleanerArena arena = plugin.getArenaList().getPlayerArena(player);
arena.setArenaStaus(ArenaStatus.INACTIVE); arena.setArenaStaus(ArenaStatus.INACTIVE);
Preconditions.checkArgument(arena != null, "player is in no arena"); Preconditions.checkArgument(arena != null, "player is in no arena");
player.closeInventory();
arena.removePlayer(); arena.removePlayer();
plugin.getArenaList().setArenaForPlayer(player, null); plugin.getArenaList().setArenaForPlayer(player, null);
if(message) { if(message) {
@ -386,10 +387,10 @@ public class MinecleanerManager {
current = getSettingsValue("additionaldisplay", player); current = getSettingsValue("additionaldisplay", player);
if(current == 0) { if(current == 0) {
settingsInventory.setItem(12, settingsInventory.setItem(12,
ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.NAME_TAG), ChatColor.RED + "Zusätzliche Anzeige in der Action Bar"))); ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.NAME_TAG), ChatColor.RED + "Zusätzliche Anzeige in der Action Bar deaktiviert")));
} else { } else {
settingsInventory.setItem(12, settingsInventory.setItem(12,
ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.NAME_TAG), ChatColor.GREEN + "Zusätzliche Anzeige in der Action Bar"))); ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.NAME_TAG), ChatColor.GREEN + "Zusätzliche Anzeige in der Action Bar aktiviert")));
} }
@ -397,10 +398,10 @@ public class MinecleanerManager {
if(current == 0) { if(current == 0) {
settingsInventory.setItem(14, settingsInventory.setItem(14,
ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CLOCK), ChatColor.RED + "Timer anzeigen"))); ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CLOCK), ChatColor.RED + "Timer wird nicht angezeigt")));
} else { } else {
settingsInventory.setItem(14, settingsInventory.setItem(14,
ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CLOCK), ChatColor.GREEN + "Timer anzeigen"))); ItemStacks.lore(ItemStacks.rename(new ItemStack(Material.CLOCK), ChatColor.GREEN + "Timer wird angezeigt")));
} }
current = getSettingsValue("resettime", player); current = getSettingsValue("resettime", player);