3434import org .bukkit .event .inventory .InventoryDragEvent ;
3535import org .bukkit .event .player .*;
3636import org .bukkit .event .player .PlayerTeleportEvent .TeleportCause ;
37- import org .bukkit .inventory .Inventory ;
3837import org .bukkit .inventory .ItemStack ;
3938import org .bukkit .potion .PotionEffect ;
4039import org .bukkit .potion .PotionEffectType ;
@@ -49,7 +48,7 @@ public class Events implements Listener {
4948 private final MinigameManager mdata = plugin .getMinigameManager ();
5049
5150 @ EventHandler (priority = EventPriority .NORMAL )
52- public void onPlayerResourcePack (PlayerResourcePackStatusEvent event ) { //todo 1.20.3 + add ressource pack not set
51+ public void onPlayerResourcePack (PlayerResourcePackStatusEvent event ) {
5352 final MinigamePlayer ply = pdata .getMinigamePlayer (event .getPlayer ());
5453 List <MinigamePlayer > required = plugin .getPlayerManager ().getApplyingPack ();
5554 if (ply .isInMinigame ()) {
@@ -178,7 +177,7 @@ public void onPlayerDisconnect(PlayerQuitEvent event) {
178177 MinigamePlayer ply = pdata .getMinigamePlayer (event .getPlayer ());
179178 if (ply .isInMinigame ()) {
180179 if (ply .getPlayer ().isDead ()) {
181- ply .getOfflineMinigamePlayer ().setLoginLocation (ply .getMinigame ().getQuitLocation ());
180+ ply .getOfflineMinigamePlayer ().setLoginLocation (ply .getMinigame ().getQuitPosition ());
182181 ply .getOfflineMinigamePlayer ().savePlayerData ();
183182 }
184183 pdata .quitMinigame (pdata .getMinigamePlayer (event .getPlayer ()), false );
@@ -244,7 +243,7 @@ public void onPlayerConnect(PlayerJoinEvent event) {
244243 }
245244
246245 @ EventHandler
247- public void playerInteract (PlayerInteractEvent event ) {
246+ public void playerInterract (PlayerInteractEvent event ) {
248247 MinigamePlayer ply = pdata .getMinigamePlayer (event .getPlayer ());
249248
250249 if (ply .isInMinigame () && !ply .canInteract ()) {
@@ -253,11 +252,11 @@ public void playerInteract(PlayerInteractEvent event) {
253252 }
254253 if (ply .isInMenu () && ply .getNoClose () && ply .getManualEntry () != null ) {
255254 event .setCancelled (true );
255+ ply .setNoClose (false );
256256 if (event .getClickedBlock () != null ) {
257- ply .setNoClose (false );
258257 ply .getManualEntry ().checkValidEntry (event .getClickedBlock ().getBlockData ().getAsString ());
259- ply .setManualEntry (null );
260258 }
259+ ply .setManualEntry (null );
261260 return ;
262261 }
263262 if (event .getClickedBlock () != null && event .getClickedBlock ().getType () == Material .DRAGON_EGG ) {
@@ -272,7 +271,6 @@ public void playerInteract(PlayerInteractEvent event) {
272271 if (cblock .getState () instanceof Sign sign && sign .getSide (Side .FRONT ).getLine (0 ).equalsIgnoreCase (ChatColor .DARK_BLUE + "[Minigame]" )) {
273272 // wax signs automatically
274273 sign .setWaxed (true );
275- sign .update ();
276274 if (event .getPlayer ().hasPermission ("minigame.sign.use.details" )) {
277275 if ((sign .getLine (1 ).equalsIgnoreCase (ChatColor .GREEN + "Join" ) || sign .getLine (1 ).equalsIgnoreCase (ChatColor .GREEN + "Bet" )) && !ply .isInMinigame ()) {
278276 Minigame mgm = mdata .getMinigame (sign .getLine (2 ));
@@ -382,6 +380,7 @@ public void playerInteract(PlayerInteractEvent event) {
382380 }
383381 }
384382
383+
385384 //Spectator disables:
386385 if (ply .isInMinigame () && pdata .getMinigamePlayer (event .getPlayer ()).getMinigame ().isSpectator (pdata .getMinigamePlayer (event .getPlayer ()))) {
387386 event .setCancelled (true );
@@ -459,11 +458,7 @@ private void entityDamageEntity(EntityDamageByEntityEvent event) {
459458 if (sb .getShooter () instanceof Player player ) {
460459 MinigamePlayer shooter = pdata .getMinigamePlayer (player );
461460 Minigame mgm = ply .getMinigame ();
462-
463- if (shooter == null ) {
464- return ;
465- }
466-
461+ if (shooter == null ) return ;
467462 if (shooter .isInMinigame () && shooter .getMinigame ().equals (ply .getMinigame ())) {
468463 if (!shooter .canPvP ()) {
469464 event .setCancelled (true );
@@ -632,14 +627,13 @@ private void spectatorAttack(EntityDamageByEntityEvent event) {
632627
633628 @ EventHandler (ignoreCancelled = true )
634629 private void clickMenu (InventoryClickEvent event ) {
635- MinigamePlayer mgPlayer = pdata .getMinigamePlayer ((( Player ) event .getWhoClicked () ));
636- if (mgPlayer .isInMenu ()) {
637- if (event .getRawSlot () < mgPlayer .getMenu ().getSize ()) {
638- if (!mgPlayer .getMenu ().getAllowModify () || mgPlayer .getMenu ().hasMenuItem (event .getRawSlot ())) {
630+ MinigamePlayer ply = pdata .getMinigamePlayer ((Player ) event .getWhoClicked ());
631+ if (ply .isInMenu ()) {
632+ if (event .getRawSlot () < ply .getMenu ().getSize ()) {
633+ if (!ply .getMenu ().getAllowModify () || ply .getMenu ().hasMenuItem (event .getRawSlot ()))
639634 event .setCancelled (true );
640- }
641635
642- MenuItem item = mgPlayer .getMenu ().getClicked (event .getRawSlot ());
636+ MenuItem item = ply .getMenu ().getClicked (event .getRawSlot ());
643637 if (item != null ) {
644638 ItemStack disItem = null ;
645639 switch (event .getClick ()) {
@@ -657,38 +651,12 @@ private void clickMenu(InventoryClickEvent event) {
657651
658652 event .setCurrentItem (disItem );
659653 }
660- /*
661- * Cancel special cases, where event.getRawSlot() is not in the Menu inventory,
662- * but the event modifies it anyway
663- */
664- } else if (!mgPlayer .getMenu ().getAllowModify ()) {
665- Inventory topInv = event .getView ().getTopInventory ();
666- switch (event .getAction ()) {
667- case PICKUP_ALL , PICKUP_SOME , PICKUP_HALF , PICKUP_ONE , DROP_ALL_SLOT , DROP_ONE_SLOT , HOTBAR_MOVE_AND_READD , // may take
668- PLACE_ALL , PLACE_SOME , PLACE_ONE , /*may place*/
669- SWAP_WITH_CURSOR , HOTBAR_SWAP /*may give and take*/ -> {
670- if (event .getClickedInventory () == topInv ) {
671- event .setCancelled (true );
672- }
673- }
674- case COLLECT_TO_CURSOR -> { // may take complex
675- if (topInv .contains (event .getCursor ().getType ())) {
676- event .setCancelled (true );
677- }
678- }
679- case MOVE_TO_OTHER_INVENTORY -> {
680- event .setCancelled (true );
681- } // definitely one or the other
682- default -> {
683- } // do nothing for any other action
684- }
685654 }
686-
687- } else if (mgPlayer .isInMinigame ()) {
688- if (!mgPlayer .getLoadout ().allowOffHand () && event .getSlot () == 40 ) {
655+ } else if (ply .isInMinigame ()) {
656+ if (!ply .getLoadout ().allowOffHand () && event .getSlot () == 40 ) {
689657 event .setCancelled (true );
690- } else if ((mgPlayer .getLoadout ().isArmourLocked () && event .getSlot () >= 36 && event .getSlot () <= 39 ) ||
691- (mgPlayer .getLoadout ().isInventoryLocked () && event .getSlot () >= 0 && event .getSlot () <= 35 )) {
658+ } else if ((ply .getLoadout ().isArmourLocked () && event .getSlot () >= 36 && event .getSlot () <= 39 ) ||
659+ (ply .getLoadout ().isInventoryLocked () && event .getSlot () >= 0 && event .getSlot () <= 35 )) {
692660 event .setCancelled (true );
693661 }
694662 }
@@ -747,6 +715,7 @@ private void manualItemEntry(AsyncPlayerChatEvent event) {
747715 ply .getManualEntry ().checkValidEntry (event .getMessage ());
748716 ply .setManualEntry (null );
749717 }
718+
750719 }
751720
752721 @ EventHandler (ignoreCancelled = true )
0 commit comments