File tree Expand file tree Collapse file tree
src/main/java/me/metallicgoat/tweaksaddon Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -138,8 +138,6 @@ public static void loadOldMain(FileConfiguration config) {
138138
139139 MainConfig .papi_team_you_placeholder = config .getString ("Team-You-Placeholder" , MainConfig .papi_team_you_placeholder );
140140
141- MainConfig .papi_player_arena_running_time = config .getString ("Running-Time-Placeholder" , MainConfig .papi_player_arena_running_time );
142-
143141 MainConfig .scoreboard_updating_enabled_in_game = config .getBoolean ("Force-Scoreboard-Updating.Enabled-In-Game" , false );
144142 MainConfig .scoreboard_updating_enabled_in_lobby = config .getBoolean ("Force-Scoreboard-Updating.Enabled-In-Lobby" , false );
145143
Original file line number Diff line number Diff line change 88import org .bukkit .event .EventHandler ;
99import org .bukkit .event .Listener ;
1010import org .bukkit .inventory .ItemStack ;
11+ import org .bukkit .inventory .PlayerInventory ;
1112
1213public class ReplaceToolOnBuy implements Listener {
1314
@@ -29,8 +30,11 @@ public void onToolBuy(PlayerBuyInShopEvent event) {
2930
3031 private void clearOld (Material tool , Player p ) {
3132 final boolean isClearingPickaxe = ToolSwordHelper .isPickaxe (tool );
33+ final PlayerInventory inv = p .getInventory ();
34+
35+ for (int i = 0 ; i < p .getInventory ().getSize (); i ++) {
36+ final ItemStack itemStack = inv .getItem (i );
3237
33- for (ItemStack itemStack : p .getInventory ()) {
3438 if (itemStack == null ||
3539 !ToolSwordHelper .isTool (itemStack .getType ()) ||
3640 !ToolSwordHelper .isNotToIgnore (itemStack ))
@@ -40,7 +44,7 @@ private void clearOld(Material tool, Player p) {
4044 final boolean match = (isCheckingPickaxe && isClearingPickaxe ) || (!isCheckingPickaxe && !isClearingPickaxe );
4145
4246 if (match && ToolSwordHelper .getSwordToolLevel (tool ) > ToolSwordHelper .getSwordToolLevel (itemStack .getType ()))
43- p . getInventory (). remove ( itemStack );
47+ inv . setItem ( i , null );
4448 }
4549 }
4650}
Original file line number Diff line number Diff line change 55import de .marcely .bedwars .api .arena .Team ;
66import de .marcely .bedwars .api .arena .picker .ArenaPickerAPI ;
77import de .marcely .bedwars .api .game .spawner .DropType ;
8+ import de .marcely .bedwars .tools .NMSHelper ;
89import de .marcely .bedwars .tools .location .XYZYP ;
910import org .bukkit .Location ;
1011import org .bukkit .World ;
12+ import org .bukkit .entity .HumanEntity ;
13+ import org .bukkit .entity .Player ;
14+ import org .bukkit .inventory .ItemStack ;
15+ import org .bukkit .inventory .PlayerInventory ;
1116import org .jetbrains .annotations .Nullable ;
1217
1318import java .util .ArrayList ;
1823
1924public class Util {
2025
26+ public static @ Nullable ItemStack getItemInOffHand (HumanEntity player ) {
27+ if (NMSHelper .get ().getVersion () == 8 )
28+ return null ;
29+
30+ try {
31+ return (ItemStack ) PlayerInventory .class .getDeclaredMethod ("getItemInOffHand" , null ).invoke (player .getInventory ());
32+ } catch (Exception e ) {
33+ e .printStackTrace ();
34+ }
35+
36+ return null ;
37+ }
38+
2139 public static Collection <Arena > parseArenas (String arenaKey ) {
2240 if (arenaKey .equalsIgnoreCase ("ALL-ARENAS" )) {
2341 return GameAPI .get ().getArenas ();
You can’t perform that action at this time.
0 commit comments