Procházet zdrojové kódy

resolved several linting suggestions

Kajetan Johannes Hammerle před 3 roky
rodič
revize
632a51926f
56 změnil soubory, kde provedl 955 přidání a 675 odebrání
  1. 23 13
      src/main/java/me/km/Client.java
  2. 1 3
      src/main/java/me/km/KajetansMod.java
  3. 1 1
      src/main/java/me/km/Server.java
  4. 13 7
      src/main/java/me/km/blocks/BlockGravelSlab.java
  5. 5 2
      src/main/java/me/km/blocks/BlockSpikes.java
  6. 46 31
      src/main/java/me/km/blocks/ModBlocks.java
  7. 0 28
      src/main/java/me/km/blocks/ModFlowingFluidBlock.java
  8. 5 2
      src/main/java/me/km/blocks/cookingpot/BlockCookingPot.java
  9. 7 4
      src/main/java/me/km/blocks/cookingpot/TileEntityCookingPot.java
  10. 4 3
      src/main/java/me/km/databank/DataBank.java
  11. 35 18
      src/main/java/me/km/entities/EntityItemProjectile.java
  12. 4 3
      src/main/java/me/km/entities/EntityNobody.java
  13. 34 26
      src/main/java/me/km/entities/HumanSkinLoader.java
  14. 15 11
      src/main/java/me/km/entities/ModEntities.java
  15. 13 7
      src/main/java/me/km/entities/RenderHuman.java
  16. 12 6
      src/main/java/me/km/items/ItemColoredSoup.java
  17. 3 1
      src/main/java/me/km/items/ItemCylinder.java
  18. 3 1
      src/main/java/me/km/items/ItemHat.java
  19. 6 2
      src/main/java/me/km/items/ItemSling.java
  20. 3 2
      src/main/java/me/km/items/ModelCylinder.java
  21. 3 2
      src/main/java/me/km/items/ModelHat.java
  22. 39 44
      src/main/java/me/km/networking/CustomInventoryScreen.java
  23. 10 6
      src/main/java/me/km/networking/ItemStackDisplayGui.java
  24. 23 15
      src/main/java/me/km/networking/ModPacketHandler.java
  25. 10 5
      src/main/java/me/km/networking/PlayerDisplayGui.java
  26. 1 0
      src/main/java/me/km/networking/PlayerHeadGui.java
  27. 6 7
      src/main/java/me/km/networking/StatusDisplayGui.java
  28. 8 6
      src/main/java/me/km/overrides/ModEntityPlayerMP.java
  29. 32 15
      src/main/java/me/km/overrides/ModPlayerList.java
  30. 5 3
      src/main/java/me/km/permissions/Command.java
  31. 28 20
      src/main/java/me/km/permissions/ModCommandManager.java
  32. 2 0
      src/main/java/me/km/plots/PlotMap.java
  33. 20 11
      src/main/java/me/km/plots/ProtectionEvents.java
  34. 3 3
      src/main/java/me/km/plots/WorldPlotMap.java
  35. 8 10
      src/main/java/me/km/snuviscript/CommandScript.java
  36. 6 6
      src/main/java/me/km/snuviscript/Limits.java
  37. 1 0
      src/main/java/me/km/snuviscript/RingArray.java
  38. 39 25
      src/main/java/me/km/snuviscript/ScriptEvents.java
  39. 6 4
      src/main/java/me/km/snuviscript/SnuviLogger.java
  40. 43 42
      src/main/java/me/km/snuviscript/commands/BlockCommands.java
  41. 33 17
      src/main/java/me/km/snuviscript/commands/CommandCommands.java
  42. 10 6
      src/main/java/me/km/snuviscript/commands/CommandUtils.java
  43. 23 13
      src/main/java/me/km/snuviscript/commands/DamageCommands.java
  44. 12 5
      src/main/java/me/km/snuviscript/commands/EnchantmentCommands.java
  45. 81 40
      src/main/java/me/km/snuviscript/commands/EntityCommands.java
  46. 7 6
      src/main/java/me/km/snuviscript/commands/GameRuleCommands.java
  47. 38 21
      src/main/java/me/km/snuviscript/commands/ItemCommands.java
  48. 1 1
      src/main/java/me/km/snuviscript/commands/LimitCommands.java
  49. 12 7
      src/main/java/me/km/snuviscript/commands/LivingCommands.java
  50. 18 10
      src/main/java/me/km/snuviscript/commands/ParticleCommands.java
  51. 96 52
      src/main/java/me/km/snuviscript/commands/PlayerCommands.java
  52. 7 6
      src/main/java/me/km/utils/ClientReflectionUtils.java
  53. 13 11
      src/main/java/me/km/utils/Location.java
  54. 3 3
      src/main/java/me/km/utils/Mapper.java
  55. 35 55
      src/main/java/me/km/utils/ReflectionUtils.java
  56. 40 27
      src/main/java/me/km/utils/Utils.java

+ 23 - 13
src/main/java/me/km/Client.java

@@ -105,23 +105,28 @@ public class Client {
         bColors.register(tallGrass, ModBlocks.tallGrass);
 
         ItemColors iColors = Minecraft.getInstance().getItemColors();
-        iColors.register((stack, tintIndex) -> tintIndex > 0 ? -1 : ItemColoredSoup.getColor(stack), ModItems.coloredSoup);
-        iColors.register((stack, tintIndex) -> tintIndex > 0 ? -1 : ((ItemGemStone) stack.getItem()).getColor(stack),
+        iColors.register((stack, tintIndex) -> tintIndex > 0 ? -1 : ItemColoredSoup.getColor(stack),
+                ModItems.coloredSoup);
+        iColors.register(
+                (stack, tintIndex) -> tintIndex > 0 ? -1
+                        : ((ItemGemStone) stack.getItem()).getColor(stack),
                 ModItems.gemStone, ModItems.rawGemStone, ModItems.flawlessGemStone);
 
         iColors.register((stack, tintIndex) -> tallGrass.getColor(
-                ((BlockItem) stack.getItem()).getBlock().getDefaultState(),
-                null, null, tintIndex), ModBlocks.tallGrass);
-        
+                ((BlockItem) stack.getItem()).getBlock().getDefaultState(), null, null, tintIndex),
+                ModBlocks.tallGrass);
+
         registerProperty(ModItems.sling, new ResourceLocation("pull"), (stack, w, ent) -> {
             if(ent == null) {
                 return 0.0F;
             } else {
-                return ent.getActiveItemStack() != stack ? 0.0f : (float) (stack.getUseDuration() - ent.getItemInUseCount()) / 20.0f;
+                return ent.getActiveItemStack() != stack ? 0.0f
+                        : (float) (stack.getUseDuration() - ent.getItemInUseCount()) / 20.0f;
             }
         });
         registerProperty(ModItems.sling, new ResourceLocation("pulling"), (ent, w, stack) -> {
-            return stack != null && stack.isHandActive() && stack.getActiveItemStack() == ent ? 1.0F : 0.0F;
+            return stack != null && stack.isHandActive() && stack.getActiveItemStack() == ent ? 1.0F
+                    : 0.0F;
         });
     }
 
@@ -166,7 +171,8 @@ public class Client {
         }
     }
 
-    private void animateTick(ClientWorld w, Block b, int x, int y, int z, int offset, BlockPos.Mutable pos) {
+    private void animateTick(ClientWorld w, Block b, int x, int y, int z, int offset,
+            BlockPos.Mutable pos) {
         x += w.rand.nextInt(offset) - w.rand.nextInt(offset);
         y += w.rand.nextInt(offset) - w.rand.nextInt(offset);
         z += w.rand.nextInt(offset) - w.rand.nextInt(offset);
@@ -183,7 +189,7 @@ public class Client {
 
         Entity ent = e.getEntity();
         EntityRendererManager erm = Minecraft.getInstance().getRenderManager();
-        EntityRenderer renderer = erm.getRenderer(ent);
+        EntityRenderer<? super Entity> renderer = erm.getRenderer(ent);
 
         if(ClientReflectionUtils.canRenderName(renderer, ent)) {
             double d0 = erm.squareDistanceTo(ent);
@@ -196,7 +202,8 @@ public class Client {
                 mStack.scale(-0.025f, -0.025f, 0.025f);
 
                 Matrix4f matrix4f = mStack.getLast().getMatrix();
-                float f1 = Minecraft.getInstance().gameSettings.getTextBackgroundOpacity(0.25F);
+                Minecraft mc = Minecraft.getInstance();
+                float f1 = mc.gameSettings.getTextBackgroundOpacity(0.25F);
                 int j = (int) (f1 * 255.0F) << 24;
 
                 FontRenderer fontrenderer = erm.getFontRenderer();
@@ -208,7 +215,8 @@ public class Client {
                 String s = text.getString();
                 String[] parts = s.split("\n");
 
-                int packedLight = renderer.getPackedLight(ent, Minecraft.getInstance().getRenderPartialTicks());
+                int packedLight = renderer.getPackedLight(ent,
+                        Minecraft.getInstance().getRenderPartialTicks());
 
                 IRenderTypeBuffer buffer = e.getRenderTypeBuffer();
 
@@ -219,9 +227,11 @@ public class Client {
                         continue;
                     }
                     float f2 = -0.5f * fontrenderer.getStringWidth(line);
-                    fontrenderer.renderString(line, f2, 0.0f, 553648127, false, matrix4f, buffer, flag, j, packedLight);
+                    fontrenderer.renderString(line, f2, 0.0f, 553648127, false, matrix4f, buffer,
+                            flag, j, packedLight);
                     if(flag) {
-                        fontrenderer.renderString(line, f2, 0.0f, -1, false, matrix4f, buffer, false, 0, packedLight);
+                        fontrenderer.renderString(line, f2, 0.0f, -1, false, matrix4f, buffer,
+                                false, 0, packedLight);
                     }
                     matrix4f.translate(up);
                 }

+ 1 - 3
src/main/java/me/km/KajetansMod.java

@@ -24,7 +24,6 @@ import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
 import net.minecraftforge.fml.common.Mod;
 import net.minecraftforge.eventbus.api.IEventBus;
 import net.minecraftforge.eventbus.api.SubscribeEvent;
-import net.minecraftforge.fml.DeferredWorkQueue;
 import net.minecraftforge.fml.event.server.FMLServerStartingEvent;
 import net.minecraftforge.fml.event.server.FMLServerStoppedEvent;
 
@@ -45,8 +44,7 @@ public class KajetansMod {
     }
 
     private void init(FMLCommonSetupEvent e) {
-        DeferredWorkQueue.runLater(() -> ModPacketHandler.init());
-
+        ModPacketHandler.init();
         MinecraftForge.EVENT_BUS.register(new CommonEvents());
     }
 

+ 1 - 1
src/main/java/me/km/Server.java

@@ -72,7 +72,7 @@ public class Server {
         // command manager
         commands = new ModCommandManager(perms, scriptEvents, scripts, scheduler);
         ReflectionUtils.setCommandManager(server, commands);
-        commands.registerCommand(new CommandScript(scripts, server));
+        commands.registerCommand(new CommandScript(scripts));
 
         // data base connection
         databank = new DataBank(logger, conf.getString(null, "user", "root"),

+ 13 - 7
src/main/java/me/km/blocks/BlockGravelSlab.java

@@ -30,20 +30,22 @@ public class BlockGravelSlab extends SlabBlock {
     }
 
     @Override
-    public void onBlockAdded(BlockState state, World w, BlockPos pos, BlockState oldState, boolean isMoving) {
+    public void onBlockAdded(BlockState state, World w, BlockPos pos, BlockState oldState,
+            boolean isMoving) {
         w.getPendingBlockTicks().scheduleTick(pos, this, getFallDelay());
     }
 
     @Override
-    public BlockState updatePostPlacement(BlockState state, Direction facing, BlockState facingState, IWorld w,
-            BlockPos currentPos, BlockPos facingPos) {
+    public BlockState updatePostPlacement(BlockState state, Direction facing,
+            BlockState facingState, IWorld w, BlockPos currentPos, BlockPos facingPos) {
         w.getPendingBlockTicks().scheduleTick(currentPos, this, getFallDelay());
         return super.updatePostPlacement(state, facing, facingState, w, currentPos, facingPos);
     }
 
     @Override
     public void tick(BlockState state, ServerWorld w, BlockPos pos, Random r) {
-        if(w.isAirBlock(pos.down()) || canFallThrough(w.getBlockState(pos.down())) && pos.getY() >= 0) {
+        if(w.isAirBlock(pos.down())
+                || canFallThrough(w.getBlockState(pos.down())) && pos.getY() >= 0) {
             BlockState fallState;
             double y = pos.getY();
             if(state == getDefaultState().with(TYPE, SlabType.TOP)) {
@@ -52,7 +54,8 @@ public class BlockGravelSlab extends SlabBlock {
             } else {
                 fallState = w.getBlockState(pos);
             }
-            FallingBlockEntity fallingblockentity = new FallingBlockEntity(w, pos.getX() + 0.5, y, pos.getZ() + 0.5, fallState);
+            FallingBlockEntity fallingblockentity =
+                    new FallingBlockEntity(w, pos.getX() + 0.5, y, pos.getZ() + 0.5, fallState);
             w.addEntity(fallingblockentity);
         }
     }
@@ -61,10 +64,12 @@ public class BlockGravelSlab extends SlabBlock {
         return 2;
     }
 
+    @SuppressWarnings("deprecation")
     public static boolean canFallThrough(BlockState state) {
         Block block = state.getBlock();
         Material material = state.getMaterial();
-        return state.isAir() || block == Blocks.FIRE || material.isLiquid() || material.isReplaceable();
+        return state.isAir() || block == Blocks.FIRE || material.isLiquid()
+                || material.isReplaceable();
     }
 
     @OnlyIn(Dist.CLIENT)
@@ -76,7 +81,8 @@ public class BlockGravelSlab extends SlabBlock {
                 double x = pos.getX() + rand.nextFloat();
                 double y = pos.getY() - 0.05;
                 double z = pos.getZ() + rand.nextFloat();
-                w.addParticle(new BlockParticleData(ParticleTypes.FALLING_DUST, state), x, y, z, 0.0, 0.0, 0.0);
+                w.addParticle(new BlockParticleData(ParticleTypes.FALLING_DUST, state), x, y, z,
+                        0.0, 0.0, 0.0);
             }
         }
 

+ 5 - 2
src/main/java/me/km/blocks/BlockSpikes.java

@@ -24,7 +24,8 @@ public class BlockSpikes extends Block {
     }
 
     @Override
-    public VoxelShape getShape(BlockState state, IBlockReader worldIn, BlockPos pos, ISelectionContext context) {
+    public VoxelShape getShape(BlockState state, IBlockReader worldIn, BlockPos pos,
+            ISelectionContext context) {
         return SHAPE;
     }
 
@@ -40,8 +41,10 @@ public class BlockSpikes extends Block {
         }
     }
 
+    @SuppressWarnings("deprecation")
     @Override
-    public BlockState updatePostPlacement(BlockState stateIn, Direction facing, BlockState facingState, IWorld w, BlockPos currentPos, BlockPos facingPos) {
+    public BlockState updatePostPlacement(BlockState stateIn, Direction facing,
+            BlockState facingState, IWorld w, BlockPos currentPos, BlockPos facingPos) {
         return !stateIn.isValidPosition(w, currentPos) ? Blocks.AIR.getDefaultState()
                 : super.updatePostPlacement(stateIn, facing, facingState, w, currentPos, facingPos);
     }

+ 46 - 31
src/main/java/me/km/blocks/ModBlocks.java

@@ -8,7 +8,6 @@ import net.minecraft.block.SoundType;
 import net.minecraft.block.material.Material;
 import net.minecraft.block.material.MaterialColor;
 import net.minecraft.block.BlockState;
-import net.minecraft.block.Blocks;
 import net.minecraft.block.LeavesBlock;
 import net.minecraft.block.SaplingBlock;
 import net.minecraft.block.SlabBlock;
@@ -89,33 +88,40 @@ public class ModBlocks {
     }
 
     private static Block createCrate(String registry) {
-        Block b = new Block(Properties.create(Material.WOOD).hardnessAndResistance(2.0f, 5.0f).sound(SoundType.WOOD));
+        Block b = new Block(Properties.create(Material.WOOD).hardnessAndResistance(2.0f, 5.0f)
+                .sound(SoundType.WOOD));
         b.setRegistryName(registry);
         return b;
     }
 
     private static Block createOre(String registry, int harvestLevel) {
-        Block b = new BlockOre(Properties.create(Material.ROCK).hardnessAndResistance(3.0f, 3.0f), harvestLevel);
+        Block b = new BlockOre(Properties.create(Material.ROCK).hardnessAndResistance(3.0f, 3.0f),
+                harvestLevel);
         b.setRegistryName(registry);
         return b;
     }
 
-    private static Block createOreBlock(String registry, MaterialColor mc, float hardness, float resistance, int harvestLevel) {
-        Block b = new BlockOre(Properties.create(Material.IRON, mc).hardnessAndResistance(hardness, resistance), harvestLevel);
+    private static Block createOreBlock(String registry, MaterialColor mc, float hardness,
+            float resistance, int harvestLevel) {
+        Block b = new BlockOre(
+                Properties.create(Material.IRON, mc).hardnessAndResistance(hardness, resistance),
+                harvestLevel);
         b.setRegistryName(registry);
         return b;
     }
 
     private static Block createLeaves(String registry) {
-        Block b = new LeavesBlock(Block.Properties.create(Material.LEAVES).hardnessAndResistance(0.2f).tickRandomly().sound(SoundType.PLANT).notSolid());
+        Block b = new LeavesBlock(Block.Properties.create(Material.LEAVES)
+                .hardnessAndResistance(0.2f).tickRandomly().sound(SoundType.PLANT).notSolid());
         b.setRegistryName(registry);
         return b;
     }
 
     private static Block createSapling(String registry, BlockState leaves) {
         ModTree tree = new ModTree(leaves);
-        SaplingBlock b = new SaplingBlock(tree, Block.Properties.create(Material.PLANTS).doesNotBlockMovement()
-                .tickRandomly().hardnessAndResistance(0.0f, 0.0f).sound(SoundType.PLANT));
+        SaplingBlock b = new SaplingBlock(tree,
+                Block.Properties.create(Material.PLANTS).doesNotBlockMovement().tickRandomly()
+                        .hardnessAndResistance(0.0f, 0.0f).sound(SoundType.PLANT));
         b.setRegistryName(registry);
         return b;
     }
@@ -127,22 +133,18 @@ public class ModBlocks {
     }
 
     private static Block createInvisibleLight(String registry) {
-        Block b = new BlockInvisible(Block.Properties.create(
-                new Material.Builder(MaterialColor.AIR).replaceable().build())
-                .hardnessAndResistance(-1.0F, 3600000.8F)
-                .noDrops()
-                .doesNotBlockMovement()
+        Block b = new BlockInvisible(Block.Properties
+                .create(new Material.Builder(MaterialColor.AIR).replaceable().build())
+                .hardnessAndResistance(-1.0F, 3600000.8F).noDrops().doesNotBlockMovement()
                 .setLightLevel(state -> 15));
         b.setRegistryName(registry);
         return b;
     }
 
     private static Block createInvisible(String registry) {
-        Block b = new BlockInvisible(Block.Properties.create(
-                new Material.Builder(MaterialColor.AIR).replaceable().build())
-                .hardnessAndResistance(-1.0F, 3600000.8F)
-                .noDrops()
-                .doesNotBlockMovement());
+        Block b = new BlockInvisible(Block.Properties
+                .create(new Material.Builder(MaterialColor.AIR).replaceable().build())
+                .hardnessAndResistance(-1.0F, 3600000.8F).noDrops().doesNotBlockMovement());
         b.setRegistryName(registry);
         return b;
     }
@@ -153,10 +155,13 @@ public class ModBlocks {
         tinOre = register(r, createOre("tin_ore", 1));
         silverOre = register(r, createOre("silver_ore", 2));
 
-        copperBlock = register(r, createOreBlock("copper_block", MaterialColor.BROWN, 3.0f, 6.0f, 1));
+        copperBlock =
+                register(r, createOreBlock("copper_block", MaterialColor.BROWN, 3.0f, 6.0f, 1));
         tinBlock = register(r, createOreBlock("tin_block", MaterialColor.IRON, 3.0f, 6.0f, 1));
-        silverBlock = register(r, createOreBlock("silver_block", MaterialColor.IRON, 5.0f, 6.0f, 2));
-        bronzeBlock = register(r, createOreBlock("bronze_block", MaterialColor.YELLOW, 5.0f, 6.0f, 2));
+        silverBlock =
+                register(r, createOreBlock("silver_block", MaterialColor.IRON, 5.0f, 6.0f, 2));
+        bronzeBlock =
+                register(r, createOreBlock("bronze_block", MaterialColor.YELLOW, 5.0f, 6.0f, 2));
 
         // misc
         guildblock = register(r, create("guild_block", Material.IRON, 50.0f, 2000.0f));
@@ -178,16 +183,24 @@ public class ModBlocks {
         tallGrass = register(r, new BlockResistantTallGrass("rtall_grass"));
 
         // traps
-        spikesCopper = register(r, new BlockSpikes("spikes_copper", Properties.create(Material.IRON, MaterialColor.BROWN).hardnessAndResistance(3.0f, 6.0f)));
-        spikesBronze = register(r, new BlockSpikes("spikes_bronze", Properties.create(Material.IRON, MaterialColor.YELLOW).hardnessAndResistance(5.0f, 6.0f)));
-        spikesGold = register(r, new BlockSpikes("spikes_gold", Properties.create(Material.IRON, MaterialColor.GOLD).hardnessAndResistance(3.0f, 6.0f)));
-        spikesIron = register(r, new BlockSpikes("spikes_iron", Properties.create(Material.IRON).hardnessAndResistance(5.0f, 6.0f)));
+        spikesCopper = register(r, new BlockSpikes("spikes_copper", Properties
+                .create(Material.IRON, MaterialColor.BROWN).hardnessAndResistance(3.0f, 6.0f)));
+        spikesBronze = register(r, new BlockSpikes("spikes_bronze", Properties
+                .create(Material.IRON, MaterialColor.YELLOW).hardnessAndResistance(5.0f, 6.0f)));
+        spikesGold = register(r, new BlockSpikes("spikes_gold", Properties
+                .create(Material.IRON, MaterialColor.GOLD).hardnessAndResistance(3.0f, 6.0f)));
+        spikesIron = register(r, new BlockSpikes("spikes_iron",
+                Properties.create(Material.IRON).hardnessAndResistance(5.0f, 6.0f)));
 
         // slabs
-        gravelSlab = register(r, new BlockGravelSlab(Properties.create(Material.SAND, MaterialColor.STONE)
-                .sound(SoundType.GROUND).hardnessAndResistance(0.6f)).setRegistryName("gravel_slab"));
-        coarseDirtSlab = register(r, new SlabBlock(Properties.create(Material.EARTH, MaterialColor.DIRT)
-                .sound(SoundType.GROUND).hardnessAndResistance(0.5f)).setRegistryName("coarse_dirt_slab"));
+        gravelSlab = register(r,
+                new BlockGravelSlab(Properties.create(Material.SAND, MaterialColor.STONE)
+                        .sound(SoundType.GROUND).hardnessAndResistance(0.6f))
+                                .setRegistryName("gravel_slab"));
+        coarseDirtSlab = register(r,
+                new SlabBlock(Properties.create(Material.EARTH, MaterialColor.DIRT)
+                        .sound(SoundType.GROUND).hardnessAndResistance(0.5f))
+                                .setRegistryName("coarse_dirt_slab"));
 
         // leaves
         cherryLeaves = register(r, createLeaves("cherry_leaves"));
@@ -196,8 +209,10 @@ public class ModBlocks {
         plumLeaves = register(r, createLeaves("plum_leaves"));
 
         // saplings
-        cherrySapling = register(r, createSapling("cherry_sapling", cherryLeaves.getDefaultState()));
-        apricotSapling = register(r, createSapling("apricot_sapling", apricotLeaves.getDefaultState()));
+        cherrySapling =
+                register(r, createSapling("cherry_sapling", cherryLeaves.getDefaultState()));
+        apricotSapling =
+                register(r, createSapling("apricot_sapling", apricotLeaves.getDefaultState()));
         pearSapling = register(r, createSapling("pear_sapling", pearLeaves.getDefaultState()));
         plumSapling = register(r, createSapling("plum_sapling", plumLeaves.getDefaultState()));
 

+ 0 - 28
src/main/java/me/km/blocks/ModFlowingFluidBlock.java

@@ -1,28 +0,0 @@
-package me.km.blocks;
-
-import net.minecraft.block.Block;
-import net.minecraft.block.BlockState;
-import net.minecraft.block.FlowingFluidBlock;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.LivingEntity;
-import net.minecraft.fluid.FlowingFluid;
-import net.minecraft.potion.Effect;
-import net.minecraft.potion.EffectInstance;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.world.World;
-
-public class ModFlowingFluidBlock extends FlowingFluidBlock {
-    private final Effect effect;
-
-    public ModFlowingFluidBlock(FlowingFluid fluid, Effect effect, Block.Properties builder) {
-        super(fluid, builder);
-        this.effect = effect;
-    }
-
-    @Override
-    public void onEntityCollision(BlockState state, World w, BlockPos pos, Entity ent) {
-        if(ent instanceof LivingEntity) {
-            ((LivingEntity) ent).addPotionEffect(new EffectInstance(effect, 60));
-        }
-    }
-}

+ 5 - 2
src/main/java/me/km/blocks/cookingpot/BlockCookingPot.java

@@ -20,9 +20,11 @@ import net.minecraft.world.IBlockReader;
 import net.minecraft.world.World;
 import net.minecraft.util.ActionResultType;
 
+@SuppressWarnings("deprecation")
 public class BlockCookingPot extends CauldronBlock implements ITileEntityProvider {
     public BlockCookingPot(String name) {
-        super(Block.Properties.create(Material.IRON, MaterialColor.BROWN).hardnessAndResistance(2.0f));
+        super(Block.Properties.create(Material.IRON, MaterialColor.BROWN)
+                .hardnessAndResistance(2.0f));
         this.setRegistryName(name);
     }
 
@@ -42,7 +44,8 @@ public class BlockCookingPot extends CauldronBlock implements ITileEntityProvide
     }
 
     @Override
-    public ActionResultType onBlockActivated(BlockState state, World w, BlockPos pos, PlayerEntity p, Hand hand, BlockRayTraceResult hit) {
+    public ActionResultType onBlockActivated(BlockState state, World w, BlockPos pos,
+            PlayerEntity p, Hand hand, BlockRayTraceResult hit) {
         TileEntity te = w.getTileEntity(pos);
         if(te instanceof TileEntityCookingPot) {
             TileEntityCookingPot cauldron = (TileEntityCookingPot) te;

+ 7 - 4
src/main/java/me/km/blocks/cookingpot/TileEntityCookingPot.java

@@ -14,10 +14,13 @@ import net.minecraft.tileentity.TileEntity;
 import net.minecraft.tileentity.TileEntityType;
 
 public class TileEntityCookingPot extends TileEntity {
-    public static final TileEntityType<TileEntityCookingPot> COOKING_POT
-            = (TileEntityType<TileEntityCookingPot>) TileEntityType.Builder
-                    .create(TileEntityCookingPot::new).build(null)
-                    .setRegistryName(KajetansMod.MODID, "cooking_pot");
+    public static final TileEntityType<TileEntityCookingPot> COOKING_POT =
+            (TileEntityType<TileEntityCookingPot>) TileEntityType.Builder
+                    .create(TileEntityCookingPot::new).build(null);
+
+    static {
+        COOKING_POT.setRegistryName(KajetansMod.MODID, "cooking_pot");
+    }
 
     private final CookingPotColorMixer mixer;
 

+ 4 - 3
src/main/java/me/km/databank/DataBank.java

@@ -25,11 +25,12 @@ public class DataBank {
     public boolean openDataBankConnection() {
         try {
             // The newInstance() call is a work around for some broken Java implementations
-            Class.forName("com.mysql.jdbc.Driver").newInstance();
-            c = DriverManager.getConnection("jdbc:mysql://localhost/minecraft?useSSL=false", user, password);
+            Class.forName("com.mysql.jdbc.Driver").getDeclaredConstructor().newInstance();
+            c = DriverManager.getConnection("jdbc:mysql://localhost/minecraft?useSSL=false", user,
+                    password);
             logger.print("connection to databank etablished");
             return true;
-        } catch(ClassNotFoundException | IllegalAccessException | InstantiationException | SQLException ex) {
+        } catch(Exception ex) {
             logger.print(ex);
             return false;
         }

+ 35 - 18
src/main/java/me/km/entities/EntityItemProjectile.java

@@ -13,7 +13,6 @@ import net.minecraft.util.math.AxisAlignedBB;
 import net.minecraft.util.math.BlockRayTraceResult;
 import net.minecraft.util.math.EntityRayTraceResult;
 import net.minecraft.util.math.MathHelper;
-import net.minecraft.util.math.RayTraceContext;
 import net.minecraft.util.math.RayTraceResult;
 import net.minecraft.util.math.vector.Vector3d;
 
@@ -25,7 +24,8 @@ public class EntityItemProjectile extends ItemEntity {
     private int ignoreTime = 0;
 
     public EntityItemProjectile(LivingEntity thrower, ItemStack stack, float damage) {
-        super(thrower.world, thrower.getPosX(), thrower.getPosY() + thrower.getEyeHeight() - 0.1d, thrower.getPosZ(), stack);
+        super(thrower.world, thrower.getPosX(), thrower.getPosY() + thrower.getEyeHeight() - 0.1d,
+                thrower.getPosZ(), stack);
         this.owner = thrower;
         super.setInfinitePickupDelay();
         this.damage = damage;
@@ -39,19 +39,24 @@ public class EntityItemProjectile extends ItemEntity {
         return owner;
     }
 
-    public void setHeadingFromThrower(Entity thrower, float rotationPitchIn, float rotationYawIn, float pitchOffset, float velocity, float inaccuracy) {
-        float f = -MathHelper.sin(rotationYawIn * ((float) Math.PI / 180.0f)) * MathHelper.cos(rotationPitchIn * ((float) Math.PI / 180.0f));
+    public void setHeadingFromThrower(Entity thrower, float rotationPitchIn, float rotationYawIn,
+            float pitchOffset, float velocity, float inaccuracy) {
+        float f = -MathHelper.sin(rotationYawIn * ((float) Math.PI / 180.0f))
+                * MathHelper.cos(rotationPitchIn * ((float) Math.PI / 180.0f));
         float f1 = -MathHelper.sin((rotationPitchIn + pitchOffset) * ((float) Math.PI / 180.0f));
-        float f2 = MathHelper.cos(rotationYawIn * ((float) Math.PI / 180.0f)) * MathHelper.cos(rotationPitchIn * ((float) Math.PI / 180.0f));
+        float f2 = MathHelper.cos(rotationYawIn * ((float) Math.PI / 180.0f))
+                * MathHelper.cos(rotationPitchIn * ((float) Math.PI / 180.0f));
         shoot(f, f1, f2, velocity, inaccuracy);
         Vector3d vec3d = thrower.getMotion();
-        this.setMotion(this.getMotion().add(vec3d.x, thrower.isOnGround() ? 0.0D : vec3d.y, vec3d.z));
+        this.setMotion(
+                this.getMotion().add(vec3d.x, thrower.isOnGround() ? 0.0D : vec3d.y, vec3d.z));
     }
 
     public void shoot(double x, double y, double z, float velocity, float inaccuracy) {
-        Vector3d vec3d = new Vector3d(x, y, z)
-                .normalize()
-                .add(rand.nextGaussian() * 0.0075 * inaccuracy, rand.nextGaussian() * 0.0075 * inaccuracy, rand.nextGaussian() * 0.0075 * inaccuracy)
+        Vector3d vec3d = new Vector3d(x, y, z).normalize()
+                .add(rand.nextGaussian() * 0.0075 * inaccuracy,
+                        rand.nextGaussian() * 0.0075 * inaccuracy,
+                        rand.nextGaussian() * 0.0075 * inaccuracy)
                 .scale(velocity);
         setMotion(vec3d);
         float f1 = MathHelper.sqrt(horizontalMag(vec3d));
@@ -65,14 +70,18 @@ public class EntityItemProjectile extends ItemEntity {
         if(damage == -1) {
             switch(ray.getType()) {
                 case ENTITY:
-                    Server.scriptEvents.onEntityItemProjectileHit(this, owner, this.getItem(), ((EntityRayTraceResult) ray).getEntity(), null);
+                    Server.scriptEvents.onEntityItemProjectileHit(this, owner, this.getItem(),
+                            ((EntityRayTraceResult) ray).getEntity(), null);
                     break;
                 case BLOCK:
-                    Server.scriptEvents.onEntityItemProjectileHit(this, owner, this.getItem(), null, ((BlockRayTraceResult) ray).getPos());
+                    Server.scriptEvents.onEntityItemProjectileHit(this, owner, this.getItem(), null,
+                            ((BlockRayTraceResult) ray).getPos());
                     break;
+                default:
             }
         } else if(ray.getType() == RayTraceResult.Type.ENTITY) {
-            ((EntityRayTraceResult) ray).getEntity().attackEntityFrom(DamageSource.causeThrownDamage(this, owner), damage);
+            ((EntityRayTraceResult) ray).getEntity()
+                    .attackEntityFrom(DamageSource.causeThrownDamage(this, owner), damage);
         }
     }
 
@@ -85,7 +94,8 @@ public class EntityItemProjectile extends ItemEntity {
 
         AxisAlignedBB axisalignedbb = this.getBoundingBox().expand(this.getMotion()).grow(2.0D);
 
-        for(Entity entity : this.world.getEntitiesInAABBexcluding(this, axisalignedbb, (p) -> !p.isSpectator() && p.canBeCollidedWith())) {
+        for(Entity entity : this.world.getEntitiesInAABBexcluding(this, axisalignedbb,
+                (p) -> !p.isSpectator() && p.canBeCollidedWith())) {
             if(entity == this.ignoreEntity) {
                 this.ignoreTime++;
                 break;
@@ -104,7 +114,9 @@ public class EntityItemProjectile extends ItemEntity {
         }
 
         if(ray.getType() != RayTraceResult.Type.MISS) {
-            if(ray.getType() == RayTraceResult.Type.BLOCK && this.world.getBlockState(((BlockRayTraceResult) ray).getPos()).getBlock() == Blocks.NETHER_PORTAL) {
+            if(ray.getType() == RayTraceResult.Type.BLOCK
+                    && this.world.getBlockState(((BlockRayTraceResult) ray).getPos())
+                            .getBlock() == Blocks.NETHER_PORTAL) {
                 this.setPortal(((BlockRayTraceResult) ray).getPos());
             } else {
                 this.onImpact(ray);
@@ -116,9 +128,12 @@ public class EntityItemProjectile extends ItemEntity {
         Vector3d vec3d = this.getMotion();
         setRawPosition(getPosX() + vec3d.x, getPosY() + vec3d.y, getPosZ() + vec3d.z);
         float f = MathHelper.sqrt(horizontalMag(vec3d));
-        this.rotationYaw = (float) (MathHelper.atan2(vec3d.x, vec3d.z) * (double) (180F / (float) Math.PI));
+        this.rotationYaw =
+                (float) (MathHelper.atan2(vec3d.x, vec3d.z) * (double) (180F / (float) Math.PI));
 
-        for(this.rotationPitch = (float) (MathHelper.atan2(vec3d.y, (double) f) * (double) (180F / (float) Math.PI)); this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F) {
+        for(this.rotationPitch = (float) (MathHelper.atan2(vec3d.y, (double) f)
+                * (double) (180F / (float) Math.PI)); this.rotationPitch
+                        - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F) {
         }
 
         while(this.rotationPitch - this.prevRotationPitch >= 180.0F) {
@@ -138,7 +153,9 @@ public class EntityItemProjectile extends ItemEntity {
         float f1;
         if(this.isInWater()) {
             for(int i = 0; i < 4; ++i) {
-                this.world.addParticle(ParticleTypes.BUBBLE, getPosX() - vec3d.x * 0.25D, getPosY() - vec3d.y * 0.25D, getPosZ() - vec3d.z * 0.25D, vec3d.x, vec3d.y, vec3d.z);
+                this.world.addParticle(ParticleTypes.BUBBLE, getPosX() - vec3d.x * 0.25D,
+                        getPosY() - vec3d.y * 0.25D, getPosZ() - vec3d.z * 0.25D, vec3d.x, vec3d.y,
+                        vec3d.z);
             }
             f1 = 0.8F;
         } else {
@@ -153,7 +170,7 @@ public class EntityItemProjectile extends ItemEntity {
 
         this.setPosition(getPosX(), getPosY(), getPosZ());
     }
-    
+
     protected boolean func_230298_a_(Entity ent) {
         if(!ent.isSpectator() && ent.isAlive() && ent.canBeCollidedWith()) {
             Entity other = this.getItemThrower();

+ 4 - 3
src/main/java/me/km/entities/EntityNobody.java

@@ -16,9 +16,10 @@ public class EntityNobody extends LivingEntity {
     public EntityNobody(EntityType<EntityNobody> type, World p_i48577_2_) {
         super(type, p_i48577_2_);
     }
-    
+
     public static AttributeModifierMap.MutableAttribute getAttributes() {
-        return LivingEntity.registerAttributes().createMutableAttribute(Attributes.MAX_HEALTH, 10.0);
+        return LivingEntity.registerAttributes().createMutableAttribute(Attributes.MAX_HEALTH,
+                10.0);
     }
 
     @Override
@@ -40,7 +41,7 @@ public class EntityNobody extends LivingEntity {
 
     @Override
     public Iterable<ItemStack> getArmorInventoryList() {
-        return Collections.EMPTY_LIST;
+        return Collections.<ItemStack>emptyList();
     }
 
     @Override

+ 34 - 26
src/main/java/me/km/entities/HumanSkinLoader.java

@@ -19,13 +19,15 @@ public class HumanSkinLoader {
     public final static HumanSkinLoader INSTANCE = new HumanSkinLoader(false);
     public final static HumanSkinLoader GREY_INSTANCE = new HumanSkinLoader(true);
 
-    private static final ResourceLocation TEXTURE_STEVE = new ResourceLocation("textures/entity/steve.png");
+    private static final ResourceLocation TEXTURE_STEVE =
+            new ResourceLocation("textures/entity/steve.png");
 
     private final HashMap<String, ResourceLocation> skins = new HashMap<>();
     private final HashSet<String> loading = new HashSet<>();
 
-    private final TextureManager manager = Minecraft.getInstance().getRenderManager().textureManager;
-    
+    private final TextureManager manager =
+            Minecraft.getInstance().getRenderManager().textureManager;
+
     private final boolean grey;
 
     private HumanSkinLoader(boolean grey) {
@@ -39,7 +41,8 @@ public class HumanSkinLoader {
         }
         if(loading.add(name)) {
             downloadSkin(name, image -> {
-                ResourceLocation rloc = manager.getDynamicTextureLocation("skin_grey_" + name.toLowerCase(), new DynamicTexture(image));
+                ResourceLocation rloc = manager.getDynamicTextureLocation(
+                        "skin_grey_" + name.toLowerCase(), new DynamicTexture(image));
                 skins.put(name, rloc);
                 loading.remove(name);
             }, grey);
@@ -52,7 +55,8 @@ public class HumanSkinLoader {
             HttpURLConnection httpurlconnection = null;
             try {
                 URL url = new URL("http://skins.hammerle.me/skins/" + name + ".png");
-                httpurlconnection = (HttpURLConnection) url.openConnection(Minecraft.getInstance().getProxy());
+                httpurlconnection =
+                        (HttpURLConnection) url.openConnection(Minecraft.getInstance().getProxy());
                 httpurlconnection.setDoInput(true);
                 httpurlconnection.setDoOutput(false);
                 httpurlconnection.connect();
@@ -61,14 +65,16 @@ public class HumanSkinLoader {
                 if(code != 200) {
                     // Failed own server, trying crafatar
                     httpurlconnection.disconnect();
-                    httpurlconnection = (HttpURLConnection) (new URL("https://crafatar.com/skins/" + name + ".png"))
-                            .openConnection(Minecraft.getInstance().getProxy());
+                    httpurlconnection = (HttpURLConnection) (new URL(
+                            "https://crafatar.com/skins/" + name + ".png"))
+                                    .openConnection(Minecraft.getInstance().getProxy());
                     httpurlconnection.setDoInput(true);
                     httpurlconnection.setDoOutput(false);
                     httpurlconnection.connect();
                     code = httpurlconnection.getResponseCode();
                     if(code != 200) {
-                        LogManager.getLogger().warn("Server response code did return " + code + ", skin servers might be down.");
+                        LogManager.getLogger().warn("Server response code did return " + code
+                                + ", skin servers might be down.");
                         return;
                     }
                 }
@@ -92,7 +98,8 @@ public class HumanSkinLoader {
                 }
                 Minecraft.getInstance().enqueue(() -> delayed.accept(image));
             } catch(Exception ex) {
-                LogManager.getLogger().warn("Error occurred when downloading skin, however, skin servers seem to be up.");
+                LogManager.getLogger().warn(
+                        "Error occurred when downloading skin, however, skin servers seem to be up.");
             } finally {
                 if(httpurlconnection != null) {
                     httpurlconnection.disconnect();
@@ -104,23 +111,24 @@ public class HumanSkinLoader {
     private NativeImage convert(NativeImage old) {
         boolean flag = old.getHeight() == 32;
         if(flag) {
-            NativeImage nativeimage = new NativeImage(64, 64, true);
-            nativeimage.copyImageData(old);
-            old.close();
-            old = nativeimage;
-            nativeimage.fillAreaRGBA(0, 32, 64, 32, 0);
-            nativeimage.copyAreaRGBA(4, 16, 16, 32, 4, 4, true, false);
-            nativeimage.copyAreaRGBA(8, 16, 16, 32, 4, 4, true, false);
-            nativeimage.copyAreaRGBA(0, 20, 24, 32, 4, 12, true, false);
-            nativeimage.copyAreaRGBA(4, 20, 16, 32, 4, 12, true, false);
-            nativeimage.copyAreaRGBA(8, 20, 8, 32, 4, 12, true, false);
-            nativeimage.copyAreaRGBA(12, 20, 16, 32, 4, 12, true, false);
-            nativeimage.copyAreaRGBA(44, 16, -8, 32, 4, 4, true, false);
-            nativeimage.copyAreaRGBA(48, 16, -8, 32, 4, 4, true, false);
-            nativeimage.copyAreaRGBA(40, 20, 0, 32, 4, 12, true, false);
-            nativeimage.copyAreaRGBA(44, 20, -8, 32, 4, 12, true, false);
-            nativeimage.copyAreaRGBA(48, 20, -16, 32, 4, 12, true, false);
-            nativeimage.copyAreaRGBA(52, 20, -8, 32, 4, 12, true, false);
+            try(NativeImage nativeimage = new NativeImage(64, 64, true)) {
+                nativeimage.copyImageData(old);
+                old.close();
+                old = nativeimage;
+                nativeimage.fillAreaRGBA(0, 32, 64, 32, 0);
+                nativeimage.copyAreaRGBA(4, 16, 16, 32, 4, 4, true, false);
+                nativeimage.copyAreaRGBA(8, 16, 16, 32, 4, 4, true, false);
+                nativeimage.copyAreaRGBA(0, 20, 24, 32, 4, 12, true, false);
+                nativeimage.copyAreaRGBA(4, 20, 16, 32, 4, 12, true, false);
+                nativeimage.copyAreaRGBA(8, 20, 8, 32, 4, 12, true, false);
+                nativeimage.copyAreaRGBA(12, 20, 16, 32, 4, 12, true, false);
+                nativeimage.copyAreaRGBA(44, 16, -8, 32, 4, 4, true, false);
+                nativeimage.copyAreaRGBA(48, 16, -8, 32, 4, 4, true, false);
+                nativeimage.copyAreaRGBA(40, 20, 0, 32, 4, 12, true, false);
+                nativeimage.copyAreaRGBA(44, 20, -8, 32, 4, 12, true, false);
+                nativeimage.copyAreaRGBA(48, 20, -16, 32, 4, 12, true, false);
+                nativeimage.copyAreaRGBA(52, 20, -8, 32, 4, 12, true, false);
+            }
         }
 
         setAreaOpaque(old, 0, 0, 32, 16);

+ 15 - 11
src/main/java/me/km/entities/ModEntities.java

@@ -1,6 +1,7 @@
 package me.km.entities;
 
 import me.km.KajetansMod;
+import net.minecraft.entity.Entity;
 import net.minecraft.entity.EntityClassification;
 import net.minecraft.entity.EntityType;
 import net.minecraft.entity.ai.attributes.GlobalEntityTypeAttributes;
@@ -11,16 +12,19 @@ import net.minecraftforge.fml.loading.FMLEnvironment;
 import net.minecraftforge.registries.IForgeRegistry;
 
 public class ModEntities {
-    public static final EntityType<EntityHuman> HUMAN
-            = (EntityType<EntityHuman>) EntityType.Builder.create(EntityHuman::new, EntityClassification.CREATURE)
-                    .size(0.6f, 1.8f).trackingRange(10)
-                    .build(String.format("%s:human", KajetansMod.MODID))
-                    .setRegistryName(KajetansMod.MODID, "human");
-    public static final EntityType<EntityNobody> NOBODY
-            = (EntityType<EntityNobody>) EntityType.Builder.create(EntityNobody::new, EntityClassification.MISC)
-                    .size(0.5f, 0.5f).trackingRange(10)
-                    .build(String.format("%s:nobody", KajetansMod.MODID))
-                    .setRegistryName(KajetansMod.MODID, "nobody");
+    private static <T extends Entity> EntityType<T> build(EntityType.Builder<T> e, String key) {
+        EntityType<T> type = e.build(String.format("%s:human", KajetansMod.MODID));
+        type.setRegistryName(KajetansMod.MODID, key);
+        return type;
+    }
+
+    public static final EntityType<EntityHuman> HUMAN = build(
+            EntityType.Builder.<EntityHuman>create(EntityHuman::new, EntityClassification.CREATURE)
+                    .size(0.6f, 1.8f).trackingRange(10),
+            "human");
+    public static final EntityType<EntityNobody> NOBODY =
+            build(EntityType.Builder.create(EntityNobody::new, EntityClassification.MISC)
+                    .size(0.5f, 0.5f).trackingRange(10), "nobody");
 
     public static void init(IForgeRegistry<EntityType<?>> r) {
         if(FMLEnvironment.dist == Dist.CLIENT) {
@@ -28,7 +32,7 @@ public class ModEntities {
         }
         r.register(HUMAN);
         r.register(NOBODY);
-        
+
         GlobalEntityTypeAttributes.put(HUMAN, EntityHuman.getAttributes().create());
         GlobalEntityTypeAttributes.put(NOBODY, EntityNobody.getAttributes().create());
     }

+ 13 - 7
src/main/java/me/km/entities/RenderHuman.java

@@ -33,7 +33,7 @@ public class RenderHuman extends LivingRenderer<EntityHuman, ModelHuman> {
 
     public RenderHuman(EntityRendererManager renderManager) {
         super(renderManager, new ModelHuman(0.0f, false), 0.5F);
-        this.addLayer(new BipedArmorLayer<>(this, new BipedModel(0.5F), new BipedModel(1.0F)));
+        this.addLayer(new BipedArmorLayer<>(this, new BipedModel<>(0.5F), new BipedModel<>(1.0F)));
         this.addLayer(new HeldItemLayer<>(this));
         this.addLayer(new ArrowLayer<>(this));
         this.addLayer(new HeadLayer<>(this));
@@ -45,7 +45,8 @@ public class RenderHuman extends LivingRenderer<EntityHuman, ModelHuman> {
     }
 
     @Override
-    public void render(EntityHuman ent, float entityYaw, float partialRenderTick, MatrixStack mStack, IRenderTypeBuffer buffer, int light) {
+    public void render(EntityHuman ent, float entityYaw, float partialRenderTick,
+            MatrixStack mStack, IRenderTypeBuffer buffer, int light) {
         this.setModelVisibilities(ent);
         if(ent.isSlim()) {
             this.entityModel = alex;
@@ -58,7 +59,8 @@ public class RenderHuman extends LivingRenderer<EntityHuman, ModelHuman> {
 
     @Override
     public Vector3d getRenderOffset(EntityHuman ent, float p_225627_2_) {
-        return ent.isCrouching() ? new Vector3d(0.0D, -0.125D, 0.0D) : super.getRenderOffset(ent, p_225627_2_);
+        return ent.isCrouching() ? new Vector3d(0.0D, -0.125D, 0.0D)
+                : super.getRenderOffset(ent, p_225627_2_);
     }
 
     private void setModelVisibilities(EntityHuman ent) {
@@ -84,7 +86,8 @@ public class RenderHuman extends LivingRenderer<EntityHuman, ModelHuman> {
         }
     }
 
-    private BipedModel.ArmPose getArmPose(EntityHuman ent, ItemStack mainStack, ItemStack offStack, Hand hand) {
+    private BipedModel.ArmPose getArmPose(EntityHuman ent, ItemStack mainStack, ItemStack offStack,
+            Hand hand) {
         BipedModel.ArmPose pose = BipedModel.ArmPose.EMPTY;
         ItemStack itemstack = hand == Hand.MAIN_HAND ? mainStack : offStack;
         if(!itemstack.isEmpty()) {
@@ -109,7 +112,8 @@ public class RenderHuman extends LivingRenderer<EntityHuman, ModelHuman> {
                     pose = BipedModel.ArmPose.CROSSBOW_HOLD;
                 }
 
-                if(flag1 && flag2 && mainStack.getItem().getUseAction(mainStack) == UseAction.NONE) {
+                if(flag1 && flag2
+                        && mainStack.getItem().getUseAction(mainStack) == UseAction.NONE) {
                     pose = BipedModel.ArmPose.CROSSBOW_HOLD;
                 }
             }
@@ -131,7 +135,8 @@ public class RenderHuman extends LivingRenderer<EntityHuman, ModelHuman> {
     }
 
     @Override
-    protected void applyRotations(EntityHuman ent, MatrixStack mStack, float ageInTicks, float rotationYaw, float partialTicks) {
+    protected void applyRotations(EntityHuman ent, MatrixStack mStack, float ageInTicks,
+            float rotationYaw, float partialTicks) {
         float f = ent.getSwimAnimation(partialTicks);
         if(ent.isElytraFlying()) {
             super.applyRotations(ent, mStack, ageInTicks, rotationYaw, partialTicks);
@@ -146,7 +151,8 @@ public class RenderHuman extends LivingRenderer<EntityHuman, ModelHuman> {
             double d0 = Entity.horizontalMag(vec3d1);
             double d1 = Entity.horizontalMag(vec3d);
             if(d0 > 0.0D && d1 > 0.0D) {
-                double d2 = (vec3d1.x * vec3d.x + vec3d1.z * vec3d.z) / (Math.sqrt(d0) * Math.sqrt(d1));
+                double d2 =
+                        (vec3d1.x * vec3d.x + vec3d1.z * vec3d.z) / (Math.sqrt(d0) * Math.sqrt(d1));
                 double d3 = vec3d1.x * vec3d.z - vec3d1.z * vec3d.x;
                 mStack.rotate(Vector3f.YP.rotation((float) (Math.signum(d3) * Math.acos(d2))));
             }

+ 12 - 6
src/main/java/me/km/items/ItemColoredSoup.java

@@ -28,7 +28,8 @@ import net.minecraftforge.api.distmarker.OnlyIn;
 
 public class ItemColoredSoup extends ItemFood {
     public ItemColoredSoup() {
-        super(new Properties().group(ItemGroup.FOOD).food(new Food.Builder().build()).maxStackSize(1));
+        super(new Properties().group(ItemGroup.FOOD).food(new Food.Builder().build())
+                .maxStackSize(1));
     }
 
     @Override
@@ -45,7 +46,8 @@ public class ItemColoredSoup extends ItemFood {
 
     @OnlyIn(Dist.CLIENT)
     @Override
-    public void addInformation(ItemStack stack, World w, List<ITextComponent> lore, ITooltipFlag flag) {
+    public void addInformation(ItemStack stack, World w, List<ITextComponent> lore,
+            ITooltipFlag flag) {
         String text = getLocalizedIngredientList(stack);
         if(!text.isEmpty()) {
             lore.add(new StringTextComponent(text));
@@ -92,11 +94,12 @@ public class ItemColoredSoup extends ItemFood {
     private String getLocalizedIngredientList(ItemStack stack) {
         CompoundNBT com = stack.getTag();
         ListNBT list = com.getList("ingredients", 8);
-        switch(list.size()) {
+        switch (list.size()) {
             case 0:
                 return "";
             case 1:
-                return TextFormatting.GRAY + LanguageMap.getInstance().func_230503_a_(list.getString(0));
+                return TextFormatting.GRAY
+                        + LanguageMap.getInstance().func_230503_a_(list.getString(0));
             default:
                 StringBuilder sb = new StringBuilder(TextFormatting.GRAY.toString());
                 sb.append(LanguageMap.getInstance().func_230503_a_(list.getString(0)));
@@ -116,6 +119,7 @@ public class ItemColoredSoup extends ItemFood {
         return getTagCompound(stack).getInt("color");
     }
 
+    @SuppressWarnings("deprecation")
     public static void setFoodStats(ItemStack soup, LinkedList<ItemStack> ingredients) {
         float saturation = 0.0f;
         int food = 0;
@@ -131,7 +135,8 @@ public class ItemColoredSoup extends ItemFood {
             } else if(item == Items.GOLDEN_APPLE) {
                 food += 4;
                 saturation += 1.2F;
-            } else if(item == Items.BEETROOT_SEEDS || item == Items.MELON_SEEDS || item == Items.PUMPKIN_SEEDS || item == Items.WHEAT_SEEDS) {
+            } else if(item == Items.BEETROOT_SEEDS || item == Items.MELON_SEEDS
+                    || item == Items.PUMPKIN_SEEDS || item == Items.WHEAT_SEEDS) {
                 food += 1;
                 saturation += 0.1F;
             } else if(item == Items.BEEF || item == Items.PORKCHOP) {
@@ -161,7 +166,8 @@ public class ItemColoredSoup extends ItemFood {
             } else if(item == Items.POISONOUS_POTATO || item == Items.SPIDER_EYE) {
                 food += -25;
                 saturation -= 0.2F;
-            } else if(item == Items.RABBIT_FOOT || item == Items.NETHER_WART || item == Items.FERMENTED_SPIDER_EYE) {
+            } else if(item == Items.RABBIT_FOOT || item == Items.NETHER_WART
+                    || item == Items.FERMENTED_SPIDER_EYE) {
                 food += 1;
                 saturation += 0.1F;
             } else if(item == Items.GOLDEN_CARROT || item == Items.CARROT) {

+ 3 - 1
src/main/java/me/km/items/ItemCylinder.java

@@ -17,9 +17,11 @@ public class ItemCylinder extends ArmorItem {
         super(am, EquipmentSlotType.HEAD, builder.group(ItemGroup.COMBAT));
     }
 
+    @SuppressWarnings({"unchecked", "rawtypes"})
     @OnlyIn(Dist.CLIENT)
     @Override
-    public BipedModel getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType armorSlot, BipedModel normal) {
+    public BipedModel getArmorModel(LivingEntity entityLiving, ItemStack itemStack,
+            EquipmentSlotType armorSlot, BipedModel normal) {
         if(slot != EquipmentSlotType.HEAD) {
             return normal;
         }

+ 3 - 1
src/main/java/me/km/items/ItemHat.java

@@ -17,9 +17,11 @@ public class ItemHat extends ArmorItem {
         super(am, EquipmentSlotType.HEAD, builder.group(ItemGroup.COMBAT));
     }
 
+    @SuppressWarnings({"unchecked", "rawtypes"})
     @OnlyIn(Dist.CLIENT)
     @Override
-    public BipedModel getArmorModel(LivingEntity entityLiving, ItemStack itemStack, EquipmentSlotType armorSlot, BipedModel normal) {
+    public BipedModel getArmorModel(LivingEntity entityLiving, ItemStack itemStack,
+            EquipmentSlotType armorSlot, BipedModel normal) {
         if(slot != EquipmentSlotType.HEAD) {
             return normal;
         }

+ 6 - 2
src/main/java/me/km/items/ItemSling.java

@@ -38,6 +38,7 @@ public class ItemSling extends Item {
         }
     }
 
+    @SuppressWarnings("deprecation")
     private boolean isAmmo(ItemStack stack) {
         return stack.getItem() == Item.getItemFromBlock(Blocks.COBBLESTONE);
     }
@@ -64,13 +65,16 @@ public class ItemSling extends Item {
                         ItemStack ammoCopy = ammo.copy();
                         ammoCopy.setCount(1);
                         EntityItemProjectile proj = new EntityItemProjectile(p, ammoCopy, 2.0f);
-                        proj.setHeadingFromThrower(p, p.rotationPitch, p.rotationYaw, 0.0f, f, 1.0f);
+                        proj.setHeadingFromThrower(p, p.rotationPitch, p.rotationYaw, 0.0f, f,
+                                1.0f);
                         stack.damageItem(1, p, (c) -> {
                         });
                         w.addEntity(proj);
                     }
 
-                    w.playSound(null, p.getPosX(), p.getPosY(), p.getPosZ(), SoundEvents.ENTITY_ARROW_SHOOT, SoundCategory.PLAYERS, 1.0f, 1.0f / (random.nextFloat() * 0.4f + 1.2f) + f * 0.5f);
+                    w.playSound(null, p.getPosX(), p.getPosY(), p.getPosZ(),
+                            SoundEvents.ENTITY_ARROW_SHOOT, SoundCategory.PLAYERS, 1.0f,
+                            1.0f / (random.nextFloat() * 0.4f + 1.2f) + f * 0.5f);
                     if(!p.abilities.isCreativeMode) {
                         ammo.shrink(1);
                         if(ammo.isEmpty()) {

+ 3 - 2
src/main/java/me/km/items/ModelCylinder.java

@@ -8,7 +8,7 @@ import net.minecraftforge.api.distmarker.Dist;
 import net.minecraftforge.api.distmarker.OnlyIn;
 
 @OnlyIn(Dist.CLIENT)
-public class ModelCylinder extends BipedModel {
+public class ModelCylinder extends BipedModel<LivingEntity> {
     private final static float FACTOR = ((float) Math.PI / 180.0f);
 
     private final ModelRenderer firstHeadPart;
@@ -36,7 +36,8 @@ public class ModelCylinder extends BipedModel {
     }
 
     @Override
-    public void setRotationAngles(LivingEntity ent, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
+    public void setRotationAngles(LivingEntity ent, float limbSwing, float limbSwingAmount,
+            float ageInTicks, float netHeadYaw, float headPitch) {
         if(ent instanceof ArmorStandEntity) {
             ArmorStandEntity ase = (ArmorStandEntity) ent;
             this.bipedHead.rotateAngleX = FACTOR * ase.getHeadRotation().getX();

+ 3 - 2
src/main/java/me/km/items/ModelHat.java

@@ -8,7 +8,7 @@ import net.minecraftforge.api.distmarker.Dist;
 import net.minecraftforge.api.distmarker.OnlyIn;
 
 @OnlyIn(Dist.CLIENT)
-public class ModelHat extends BipedModel {
+public class ModelHat extends BipedModel<LivingEntity> {
     private final static float FACTOR = ((float) Math.PI / 180.0f);
 
     private final ModelRenderer firstHeadPart;
@@ -36,7 +36,8 @@ public class ModelHat extends BipedModel {
     }
 
     @Override
-    public void setRotationAngles(LivingEntity ent, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
+    public void setRotationAngles(LivingEntity ent, float limbSwing, float limbSwingAmount,
+            float ageInTicks, float netHeadYaw, float headPitch) {
         if(ent instanceof ArmorStandEntity) {
             ArmorStandEntity ase = (ArmorStandEntity) ent;
             this.bipedHead.rotateAngleX = FACTOR * ase.getHeadRotation().getX();

+ 39 - 44
src/main/java/me/km/networking/CustomInventoryScreen.java

@@ -5,7 +5,6 @@ import com.mojang.blaze3d.systems.RenderSystem;
 import me.km.KajetansMod;
 import me.km.inventory.CustomContainer;
 import me.km.inventory.ModInventory;
-import net.minecraft.client.gui.IHasContainer;
 import net.minecraft.client.gui.screen.inventory.ContainerScreen;
 import net.minecraft.entity.player.PlayerInventory;
 import net.minecraft.util.ResourceLocation;
@@ -14,9 +13,11 @@ import net.minecraftforge.api.distmarker.Dist;
 import net.minecraftforge.api.distmarker.OnlyIn;
 
 @OnlyIn(Dist.CLIENT)
-public class CustomInventoryScreen extends ContainerScreen<CustomContainer> implements IHasContainer<CustomContainer> {
-    private static final ResourceLocation CHEST_GUI_TEXTURE = new ResourceLocation("textures/gui/container/generic_54.png");
-    private static final ResourceLocation EMPTY_TILE = new ResourceLocation(KajetansMod.MODID, "textures/gui/container/empty_tile.png");
+public class CustomInventoryScreen extends ContainerScreen<CustomContainer> {
+    private static final ResourceLocation CHEST_GUI_TEXTURE =
+            new ResourceLocation("textures/gui/container/generic_54.png");
+    private static final ResourceLocation EMPTY_TILE =
+            new ResourceLocation(KajetansMod.MODID, "textures/gui/container/empty_tile.png");
 
     private final int inventoryRows;
 
@@ -37,11 +38,14 @@ public class CustomInventoryScreen extends ContainerScreen<CustomContainer> impl
     @Override
     protected void drawGuiContainerForegroundLayer(MatrixStack matrixStack, int x, int y) {
         this.font.drawString(matrixStack, title.getString(), 8.0f, 6.0f, 4210752);
-        this.font.drawString(matrixStack, playerInventory.getDisplayName().getString(), 8.0f, ySize - 94, 4210752);
+        this.font.drawString(matrixStack, playerInventory.getDisplayName().getString(), 8.0f,
+                ySize - 94, 4210752);
     }
 
+    @SuppressWarnings("deprecation")
     @Override
-    protected void drawGuiContainerBackgroundLayer(MatrixStack matrixStack, float partialTicks, int ix, int iy) {
+    protected void drawGuiContainerBackgroundLayer(MatrixStack matrixStack, float partialTicks,
+            int ix, int iy) {
         RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F);
         this.minecraft.getTextureManager().bindTexture(CHEST_GUI_TEXTURE);
         int i = (width - xSize) / 2;
@@ -64,42 +68,33 @@ public class CustomInventoryScreen extends ContainerScreen<CustomContainer> impl
         }
     }
 
-    /*public void blit(int startX, int startY, int tStartX, int tStartY, int width, int height)
-    {
-        blit(startX, startY, this.blitOffset, tStartX, tStartY, width, height, 256, 256);
-    }
-
-    public static void blit(int startX, int startY, int z, float tStartX, float tStartY, int width, int height, int rWidth, int rHeight)
-    {
-        innerBlit(startX, startX + width, startY, startY + height, z, width, height, tStartX, tStartY, rHeight, rWidth);
-    }
-
-    public static void blit(int minX, int minY, int width, int height, float tStartX, float tStartY, int tWidth, int tHeight, int rWidth, int rHeight)
-    {
-        innerBlit(minX, minX + width, minY, minY + height, 0, tWidth, tHeight, tStartX, tStartY, rWidth, rHeight);
-    }
-    
-    public static void blit(int p_blit_0_, int p_blit_1_, float p_blit_2_, float p_blit_3_, int p_blit_4_, int p_blit_5_, int p_blit_6_, int p_blit_7_)
-    {
-        blit(p_blit_0_, p_blit_1_, p_blit_4_, p_blit_5_, p_blit_2_, p_blit_3_, p_blit_4_, p_blit_5_, p_blit_6_, p_blit_7_);
-    }
-
-    private static void innerBlit(int minX, int maxX, int minY, int maxY, int z, int tWidth, int tHight, float tStartX, float tStartY, int rWidth, int rHeight)
-    {
-        innerBlit(minX, maxX, minY, maxY, z, 
-                tStartX / rWidth, (tStartX + tWidth) / rWidth, 
-                tStartY / rHeight, (tStartY + tHight) / rHeight);
-    }
-
-    protected static void innerBlit(int minX, int maxX, int minY, int maxY, int z, float tMinX, float tMaxX, float tMinY, float tMaxY)
-    {
-        Tessellator tessellator = Tessellator.getInstance();
-        BufferBuilder bufferbuilder = tessellator.getBuffer();
-        bufferbuilder.begin(7, DefaultVertexFormats.POSITION_TEX);
-        bufferbuilder.pos(minX, maxY, z).tex(tMinX, tMaxY).endVertex();
-        bufferbuilder.pos(maxX, maxY, z).tex(tMaxX, tMaxY).endVertex();
-        bufferbuilder.pos(maxX, minY, z).tex(tMaxX, tMinY).endVertex();
-        bufferbuilder.pos(minX, minY, z).tex(tMinX, tMinY).endVertex();
-        tessellator.draw();
-    }*/
+    /*
+     * public void blit(int startX, int startY, int tStartX, int tStartY, int width, int height) {
+     * blit(startX, startY, this.blitOffset, tStartX, tStartY, width, height, 256, 256); }
+     * 
+     * public static void blit(int startX, int startY, int z, float tStartX, float tStartY, int
+     * width, int height, int rWidth, int rHeight) { innerBlit(startX, startX + width, startY,
+     * startY + height, z, width, height, tStartX, tStartY, rHeight, rWidth); }
+     * 
+     * public static void blit(int minX, int minY, int width, int height, float tStartX, float
+     * tStartY, int tWidth, int tHeight, int rWidth, int rHeight) { innerBlit(minX, minX + width,
+     * minY, minY + height, 0, tWidth, tHeight, tStartX, tStartY, rWidth, rHeight); }
+     * 
+     * public static void blit(int p_blit_0_, int p_blit_1_, float p_blit_2_, float p_blit_3_, int
+     * p_blit_4_, int p_blit_5_, int p_blit_6_, int p_blit_7_) { blit(p_blit_0_, p_blit_1_,
+     * p_blit_4_, p_blit_5_, p_blit_2_, p_blit_3_, p_blit_4_, p_blit_5_, p_blit_6_, p_blit_7_); }
+     * 
+     * private static void innerBlit(int minX, int maxX, int minY, int maxY, int z, int tWidth, int
+     * tHight, float tStartX, float tStartY, int rWidth, int rHeight) { innerBlit(minX, maxX, minY,
+     * maxY, z, tStartX / rWidth, (tStartX + tWidth) / rWidth, tStartY / rHeight, (tStartY + tHight)
+     * / rHeight); }
+     * 
+     * protected static void innerBlit(int minX, int maxX, int minY, int maxY, int z, float tMinX,
+     * float tMaxX, float tMinY, float tMaxY) { Tessellator tessellator = Tessellator.getInstance();
+     * BufferBuilder bufferbuilder = tessellator.getBuffer(); bufferbuilder.begin(7,
+     * DefaultVertexFormats.POSITION_TEX); bufferbuilder.pos(minX, maxY, z).tex(tMinX,
+     * tMaxY).endVertex(); bufferbuilder.pos(maxX, maxY, z).tex(tMaxX, tMaxY).endVertex();
+     * bufferbuilder.pos(maxX, minY, z).tex(tMaxX, tMinY).endVertex(); bufferbuilder.pos(minX, minY,
+     * z).tex(tMinX, tMinY).endVertex(); tessellator.draw(); }
+     */
 }

+ 10 - 6
src/main/java/me/km/networking/ItemStackDisplayGui.java

@@ -15,9 +15,11 @@ import net.minecraftforge.api.distmarker.OnlyIn;
 
 @OnlyIn(Dist.CLIENT)
 public class ItemStackDisplayGui extends AbstractGui {
-    private static final ResourceLocation WIDGETS_TEX_PATH = new ResourceLocation("textures/gui/widgets.png");
+    private static final ResourceLocation WIDGETS_TEX_PATH =
+            new ResourceLocation("textures/gui/widgets.png");
 
-    public final static ItemStackDisplayGui INSTANCE = new ItemStackDisplayGui(Minecraft.getInstance());
+    public final static ItemStackDisplayGui INSTANCE =
+            new ItemStackDisplayGui(Minecraft.getInstance());
 
     private final Minecraft mc;
 
@@ -51,17 +53,18 @@ public class ItemStackDisplayGui extends AbstractGui {
         }
     }
 
+    @SuppressWarnings("deprecation")
     public void paint(MatrixStack matrixStack, KeyManager km) {
         if(inactive) {
             return;
         }
-        
+
         int screenWidth = (mc.getMainWindow().getScaledWidth() >> 1) - 91;
         int y = 0;
         if(ClientReflectionUtils.isRenderingBossBar()) {
             y += 20;
         }
-        
+
         RenderSystem.enableBlend();
         RenderSystem.color4f(1.0f, 1.0f, 1.0f, 1.0f);
         mc.getTextureManager().bindTexture(WIDGETS_TEX_PATH);
@@ -69,14 +72,15 @@ public class ItemStackDisplayGui extends AbstractGui {
         setBlitOffset(-90);
         blit(matrixStack, screenWidth, y, 0, 0, 182, 22);
         setBlitOffset(oldBlitOffset);
-        
+
         y += 3;
         ItemRenderer ir = mc.getItemRenderer();
         int i = 0;
         for(int x = 3; x < 164; x += 20) {
             if(!icons[i].isEmpty()) {
                 ir.renderItemAndEffectIntoGUI(mc.player, icons[i], screenWidth + x, y);
-                ir.renderItemOverlayIntoGUI(this.mc.fontRenderer, icons[i], screenWidth + x, y, km.getKeyDescription(i));
+                ir.renderItemOverlayIntoGUI(this.mc.fontRenderer, icons[i], screenWidth + x, y,
+                        km.getKeyDescription(i));
             }
             i++;
         }

+ 23 - 15
src/main/java/me/km/networking/ModPacketHandler.java

@@ -11,22 +11,28 @@ import net.minecraftforge.fml.network.simple.SimpleChannel;
 public class ModPacketHandler {
     private static final String PROTOCOL_VERSION = "1";
 
-    private static final SimpleChannel INSTANCE = NetworkRegistry.ChannelBuilder
-            .named(new ResourceLocation(KajetansMod.MODID, "main"))
-            .clientAcceptedVersions(PROTOCOL_VERSION::equals)
-            .serverAcceptedVersions(PROTOCOL_VERSION::equals)
-            .networkProtocolVersion(() -> PROTOCOL_VERSION)
-            .simpleChannel();
+    private static final SimpleChannel INSTANCE =
+            NetworkRegistry.ChannelBuilder.named(new ResourceLocation(KajetansMod.MODID, "main"))
+                    .clientAcceptedVersions(PROTOCOL_VERSION::equals)
+                    .serverAcceptedVersions(PROTOCOL_VERSION::equals)
+                    .networkProtocolVersion(() -> PROTOCOL_VERSION).simpleChannel();
 
     public static void init() {
         int id = 0;
-        INSTANCE.registerMessage(id++, PlayerDisplay.class, PlayerDisplay::writeBytes, PlayerDisplay::fromBytes, PlayerDisplay::handle);
-        INSTANCE.registerMessage(id++, FunctionKey.class, FunctionKey::writeBytes, FunctionKey::fromBytes, FunctionKey::handle);
-        INSTANCE.registerMessage(id++, CustomInventory.class, CustomInventory::writeBytes, CustomInventory::fromBytes, CustomInventory::handle);
-        INSTANCE.registerMessage(id++, StatusDisplay.class, StatusDisplay::writeBytes, StatusDisplay::fromBytes, StatusDisplay::handle);
-        INSTANCE.registerMessage(id++, PlayerHead.class, PlayerHead::writeBytes, PlayerHead::fromBytes, PlayerHead::handle);
-        INSTANCE.registerMessage(id++, ItemStackDisplay.class, ItemStackDisplay::writeBytes, ItemStackDisplay::fromBytes, ItemStackDisplay::handle);
-        INSTANCE.registerMessage(id++, PlayerLeftClickEmpty.class, PlayerLeftClickEmpty::writeBytes, PlayerLeftClickEmpty::fromBytes, PlayerLeftClickEmpty::handle);
+        INSTANCE.registerMessage(id++, PlayerDisplay.class, PlayerDisplay::writeBytes,
+                PlayerDisplay::fromBytes, PlayerDisplay::handle);
+        INSTANCE.registerMessage(id++, FunctionKey.class, FunctionKey::writeBytes,
+                FunctionKey::fromBytes, FunctionKey::handle);
+        INSTANCE.registerMessage(id++, CustomInventory.class, CustomInventory::writeBytes,
+                CustomInventory::fromBytes, CustomInventory::handle);
+        INSTANCE.registerMessage(id++, StatusDisplay.class, StatusDisplay::writeBytes,
+                StatusDisplay::fromBytes, StatusDisplay::handle);
+        INSTANCE.registerMessage(id++, PlayerHead.class, PlayerHead::writeBytes,
+                PlayerHead::fromBytes, PlayerHead::handle);
+        INSTANCE.registerMessage(id++, ItemStackDisplay.class, ItemStackDisplay::writeBytes,
+                ItemStackDisplay::fromBytes, ItemStackDisplay::handle);
+        INSTANCE.registerMessage(id++, PlayerLeftClickEmpty.class, PlayerLeftClickEmpty::writeBytes,
+                PlayerLeftClickEmpty::fromBytes, PlayerLeftClickEmpty::handle);
     }
 
     private static void sendToPlayer(ServerPlayerEntity p, Object msg) {
@@ -45,7 +51,8 @@ public class ModPacketHandler {
         sendToServer(new FunctionKey(key));
     }
 
-    public static void sendCustomInventory(ServerPlayerEntity p, int id, String title, ModInventory inv) {
+    public static void sendCustomInventory(ServerPlayerEntity p, int id, String title,
+            ModInventory inv) {
         sendToPlayer(p, new CustomInventory(id, title, inv));
     }
 
@@ -65,7 +72,8 @@ public class ModPacketHandler {
         sendToPlayer(p, new StatusDisplay((byte) 3, (byte) 0, ""));
     }
 
-    public static void sendToHead(ServerPlayerEntity p, byte action, byte index, String name, int x, int y, byte scale) {
+    public static void sendToHead(ServerPlayerEntity p, byte action, byte index, String name, int x,
+            int y, byte scale) {
         sendToPlayer(p, new PlayerHead(action, index, name, x, y, scale));
     }
 

+ 10 - 5
src/main/java/me/km/networking/PlayerDisplayGui.java

@@ -13,7 +13,8 @@ import net.minecraftforge.api.distmarker.OnlyIn;
 
 @OnlyIn(Dist.CLIENT)
 public class PlayerDisplayGui extends AbstractGui {
-    private static final ResourceLocation CUSTOM_ICONS = new ResourceLocation(KajetansMod.MODID, "textures/gui/icons.png");
+    private static final ResourceLocation CUSTOM_ICONS =
+            new ResourceLocation(KajetansMod.MODID, "textures/gui/icons.png");
 
     public final static PlayerDisplayGui INSTANCE = new PlayerDisplayGui(Minecraft.getInstance());
 
@@ -56,9 +57,10 @@ public class PlayerDisplayGui extends AbstractGui {
                 try {
                     int first = s.indexOf("-", pos);
                     int second = s.indexOf("-", first + 1);
-                    icons.add(new IconStorage(Integer.parseInt(s.substring(pos + 1, first)), Integer.parseInt(s.substring(first + 1, second))));
+                    icons.add(new IconStorage(Integer.parseInt(s.substring(pos + 1, first)),
+                            Integer.parseInt(s.substring(first + 1, second))));
                     old = second + 1;
-                } catch(Exception ex) {
+                } catch (Exception ex) {
                     list.add("ERROR");
                     break;
                 }
@@ -66,11 +68,13 @@ public class PlayerDisplayGui extends AbstractGui {
         }
 
         public int getWidth() {
-            return list.stream().mapToInt(s -> mc.fontRenderer.getStringWidth(s)).sum() + icons.stream().mapToInt(i -> i.getWidth()).sum();
+            return list.stream().mapToInt(s -> mc.fontRenderer.getStringWidth(s)).sum()
+                    + icons.stream().mapToInt(i -> i.getWidth()).sum();
         }
 
         public int getHeight() {
-            return Math.max(mc.fontRenderer.FONT_HEIGHT, icons.stream().mapToInt(i -> i.getHeight()).max().orElse(0) + 1);
+            return Math.max(mc.fontRenderer.FONT_HEIGHT,
+                    icons.stream().mapToInt(i -> i.getHeight()).max().orElse(0) + 1);
         }
     }
 
@@ -134,6 +138,7 @@ public class PlayerDisplayGui extends AbstractGui {
         mc.getTextureManager().bindTexture(res);
     }
 
+    @SuppressWarnings("deprecation")
     private int paintIcons(MatrixStack matrixStack, IconStorage is, int x, int y) {
         RenderSystem.enableBlend();
         RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F);

+ 1 - 0
src/main/java/me/km/networking/PlayerHeadGui.java

@@ -27,6 +27,7 @@ public class PlayerHeadGui extends AbstractGui {
             this.rl = rl;
         }
 
+        @SuppressWarnings("deprecation")
         public void paint(Minecraft mc, MatrixStack matrixStack) {
             RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F);
             mc.getTextureManager().bindTexture(rl);

+ 6 - 7
src/main/java/me/km/networking/StatusDisplayGui.java

@@ -24,7 +24,8 @@ public class StatusDisplayGui extends AbstractGui {
             this.time = time;
             int index = text.indexOf('#');
             if(index != -1) {
-                this.text = text.substring(0, index) + LanguageMap.getInstance().func_230503_a_(text.substring(index + 1));
+                this.text = text.substring(0, index)
+                        + LanguageMap.getInstance().func_230503_a_(text.substring(index + 1));
             } else {
                 this.text = text;
             }
@@ -64,8 +65,7 @@ public class StatusDisplayGui extends AbstractGui {
     }
 
     public void tick() {
-        strings.entrySet().removeIf(e
-                -> {
+        strings.entrySet().removeIf(e -> {
             if(e.getValue().time < Integer.MAX_VALUE) {
                 e.getValue().time--;
                 if(e.getValue().time < 0) {
@@ -95,9 +95,7 @@ public class StatusDisplayGui extends AbstractGui {
         }
         // getting data
         LinkedList<LineData> list = new LinkedList<>(strings.values());
-        EffectInstance e;
-        collection.forEach(effect
-                -> {
+        collection.forEach(effect -> {
             StringBuilder sb = new StringBuilder();
             if(effect.getPotion().isBeneficial()) {
                 sb.append(TextFormatting.GREEN);
@@ -133,7 +131,8 @@ public class StatusDisplayGui extends AbstractGui {
 
         for(LineData data : list) {
             time = data.getTimeText();
-            mc.fontRenderer.drawString(matrixStack, time + data.getText(), x + maxTimeWidth - mc.fontRenderer.getStringWidth(time), y + 1, 0xFFFFFF);
+            mc.fontRenderer.drawString(matrixStack, time + data.getText(),
+                    x + maxTimeWidth - mc.fontRenderer.getStringWidth(time), y + 1, 0xFFFFFF);
             y += lineHeight;
         }
     }

+ 8 - 6
src/main/java/me/km/overrides/ModEntityPlayerMP.java

@@ -25,18 +25,20 @@ public class ModEntityPlayerMP extends ServerPlayerEntity {
 
     private boolean isIterating = false;
 
-    public ModEntityPlayerMP(MinecraftServer ms, ServerWorld w, GameProfile gp, PlayerInteractionManager pim) {
+    public ModEntityPlayerMP(MinecraftServer ms, ServerWorld w, GameProfile gp,
+            PlayerInteractionManager pim) {
         super(ms, w, gp, pim);
         this.board = new PlayerScoreboard();
-        this.timedData = new HashMap();
-        this.data = new HashMap();
+        this.timedData = new HashMap<>();
+        this.data = new HashMap<>();
     }
 
     public PlayerScoreboard getScoreboard() {
         return board;
     }
 
-    public ModEntityPlayerMP(MinecraftServer ms, ServerWorld w, GameProfile gp, PlayerInteractionManager pim, ModEntityPlayerMP old) {
+    public ModEntityPlayerMP(MinecraftServer ms, ServerWorld w, GameProfile gp,
+            PlayerInteractionManager pim, ModEntityPlayerMP old) {
         super(ms, w, gp, pim);
         this.board = old.board;
         this.timedData = old.timedData;
@@ -62,8 +64,8 @@ public class ModEntityPlayerMP extends ServerPlayerEntity {
     public void setTabListDisplayName(String name, ISnuviScheduler scheduler) {
         tabDisplayName = new StringTextComponent(name);
         scheduler.scheduleTask(() -> {
-            server.getPlayerList().sendPacketToAllPlayers(
-                    new SPlayerListItemPacket(SPlayerListItemPacket.Action.UPDATE_DISPLAY_NAME, this));
+            server.getPlayerList().sendPacketToAllPlayers(new SPlayerListItemPacket(
+                    SPlayerListItemPacket.Action.UPDATE_DISPLAY_NAME, this));
         }, 5);
     }
 

+ 32 - 15
src/main/java/me/km/overrides/ModPlayerList.java

@@ -33,7 +33,6 @@ import net.minecraft.util.registry.DynamicRegistries;
 import net.minecraft.util.text.ChatType;
 import net.minecraft.util.text.ITextComponent;
 import net.minecraft.util.text.TranslationTextComponent;
-import net.minecraft.world.IWorld;
 import net.minecraft.world.biome.BiomeManager;
 import net.minecraft.world.server.ServerWorld;
 import net.minecraft.world.storage.IWorldInfo;
@@ -44,11 +43,13 @@ public final class ModPlayerList extends DedicatedPlayerList {
     private final List<ServerPlayerEntity> players;
     private final Map<UUID, ServerPlayerEntity> uuidToPlayerMap;
 
+    @SuppressWarnings("unchecked")
     public ModPlayerList(DedicatedServer server, DynamicRegistries.Impl registries, PlayerData pd) {
         super(server, registries, pd);
         this.server = server;
         this.players = getPlayers();
-        this.uuidToPlayerMap = ReflectionUtils.getFieldValue(Map.class, PlayerList.class, this, "field_177454_f");
+        this.uuidToPlayerMap =
+                ReflectionUtils.getFieldValue(Map.class, PlayerList.class, this, "field_177454_f");
     }
 
     @Override
@@ -69,7 +70,8 @@ public final class ModPlayerList extends DedicatedPlayerList {
         }
 
         for(ServerPlayerEntity serverplayerentity1 : list) {
-            serverplayerentity1.connection.disconnect(new TranslationTextComponent("multiplayer.disconnect.duplicate_login"));
+            serverplayerentity1.connection.disconnect(
+                    new TranslationTextComponent("multiplayer.disconnect.duplicate_login"));
         }
 
         ServerWorld w = this.server.func_241755_D_();
@@ -99,7 +101,8 @@ public final class ModPlayerList extends DedicatedPlayerList {
             optional = Optional.empty();
         }
 
-        ServerWorld w = serverworld != null && optional.isPresent() ? serverworld : server.func_241755_D_();
+        ServerWorld w =
+                serverworld != null && optional.isPresent() ? serverworld : server.func_241755_D_();
         PlayerInteractionManager manager;
         if(this.server.isDemo()) {
             manager = new DemoPlayerInteractionManager(w);
@@ -107,7 +110,8 @@ public final class ModPlayerList extends DedicatedPlayerList {
             manager = new PlayerInteractionManager(w);
         }
 
-        ServerPlayerEntity p = new ModEntityPlayerMP(server, w, pIn.getGameProfile(), manager, (ModEntityPlayerMP) pIn);
+        ServerPlayerEntity p = new ModEntityPlayerMP(server, w, pIn.getGameProfile(), manager,
+                (ModEntityPlayerMP) pIn);
         p.connection = pIn.connection;
         p.copyFrom(pIn, p_232644_2_);
         pIn.remove(false); // Forge: clone event had a chance to see old data, now discard it
@@ -128,15 +132,18 @@ public final class ModPlayerList extends DedicatedPlayerList {
             if(!blockstate.isIn(BlockTags.BEDS) && !flag1) {
                 f1 = f;
             } else {
-                Vector3d vector3d1 = Vector3d.copyCenteredHorizontally(blockpos).subtract(vector3d).normalize();
-                f1 = (float) MathHelper.wrapDegrees(MathHelper.atan2(vector3d1.z, vector3d1.x) * (double) (180F / (float) Math.PI) - 90.0D);
+                Vector3d vector3d1 =
+                        Vector3d.copyCenteredHorizontally(blockpos).subtract(vector3d).normalize();
+                f1 = (float) MathHelper.wrapDegrees(MathHelper.atan2(vector3d1.z, vector3d1.x)
+                        * (double) (180F / (float) Math.PI) - 90.0D);
             }
 
             p.setLocationAndAngles(vector3d.x, vector3d.y, vector3d.z, f1, 0.0F);
             p.func_242111_a(w.getDimensionKey(), blockpos, f, flag, false);
             flag2 = !p_232644_2_ && flag1;
         } else if(blockpos != null) {
-            p.connection.sendPacket(new SChangeGameStatePacket(SChangeGameStatePacket.field_241764_a_, 0.0F));
+            p.connection.sendPacket(
+                    new SChangeGameStatePacket(SChangeGameStatePacket.field_241764_a_, 0.0F));
         }
 
         while(!w.hasNoCollisions(p) && p.getPosY() < 256.0D) {
@@ -144,11 +151,17 @@ public final class ModPlayerList extends DedicatedPlayerList {
         }
 
         IWorldInfo iworldinfo = p.world.getWorldInfo();
-        p.connection.sendPacket(new SRespawnPacket(p.world.getDimensionType(), p.world.getDimensionKey(), BiomeManager.getHashedSeed(p.getServerWorld().getSeed()), p.interactionManager.getGameType(), p.interactionManager.func_241815_c_(), p.getServerWorld().isDebug(), p.getServerWorld().func_241109_A_(), p_232644_2_));
-        p.connection.setPlayerLocation(p.getPosX(), p.getPosY(), p.getPosZ(), p.rotationYaw, p.rotationPitch);
+        p.connection.sendPacket(new SRespawnPacket(p.world.getDimensionType(),
+                p.world.getDimensionKey(), BiomeManager.getHashedSeed(p.getServerWorld().getSeed()),
+                p.interactionManager.getGameType(), p.interactionManager.func_241815_c_(),
+                p.getServerWorld().isDebug(), p.getServerWorld().func_241109_A_(), p_232644_2_));
+        p.connection.setPlayerLocation(p.getPosX(), p.getPosY(), p.getPosZ(), p.rotationYaw,
+                p.rotationPitch);
         p.connection.sendPacket(new SWorldSpawnChangedPacket(w.getSpawnPoint(), w.func_242107_v()));
-        p.connection.sendPacket(new SServerDifficultyPacket(iworldinfo.getDifficulty(), iworldinfo.isDifficultyLocked()));
-        p.connection.sendPacket(new SSetExperiencePacket(p.experience, p.experienceTotal, p.experienceLevel));
+        p.connection.sendPacket(new SServerDifficultyPacket(iworldinfo.getDifficulty(),
+                iworldinfo.isDifficultyLocked()));
+        p.connection.sendPacket(
+                new SSetExperiencePacket(p.experience, p.experienceTotal, p.experienceLevel));
         this.sendWorldInfo(p, w);
         this.updatePermissionLevel(p);
         w.addRespawnedPlayer(p);
@@ -158,13 +171,17 @@ public final class ModPlayerList extends DedicatedPlayerList {
         p.setHealth(p.getHealth());
         net.minecraftforge.fml.hooks.BasicEventHooks.firePlayerRespawnEvent(p, p_232644_2_);
         if(flag2) {
-            p.connection.sendPacket(new SPlaySoundEffectPacket(SoundEvents.BLOCK_RESPAWN_ANCHOR_DEPLETE, SoundCategory.BLOCKS, (double) blockpos.getX(), (double) blockpos.getY(), (double) blockpos.getZ(), 1.0F, 1.0F));
+            p.connection
+                    .sendPacket(new SPlaySoundEffectPacket(SoundEvents.BLOCK_RESPAWN_ANCHOR_DEPLETE,
+                            SoundCategory.BLOCKS, (double) blockpos.getX(),
+                            (double) blockpos.getY(), (double) blockpos.getZ(), 1.0F, 1.0F));
         }
 
         return p;
     }
 
-    private void setPlayerGameTypeBasedOnOther(ServerPlayerEntity target, ServerPlayerEntity source, ServerWorld w) {
+    private void setPlayerGameTypeBasedOnOther(ServerPlayerEntity target, ServerPlayerEntity source,
+            ServerWorld w) {
         ReflectionUtils.setPlayerGameTypeBasedOnOther(this, target, source, w);
     }
 
@@ -172,7 +189,7 @@ public final class ModPlayerList extends DedicatedPlayerList {
     public void func_232641_a_(ITextComponent message, ChatType chat, UUID uuid) {
         if(message instanceof TranslationTextComponent) {
             TranslationTextComponent translation = (TranslationTextComponent) message;
-            switch(translation.getKey()) {
+            switch (translation.getKey()) {
                 case "multiplayer.player.left":
                 case "multiplayer.player.joined":
                 case "multiplayer.player.joined.renamed":

+ 5 - 3
src/main/java/me/km/permissions/Command.java

@@ -9,16 +9,18 @@ public abstract class Command {
     public abstract String getName();
 
     public Iterable<String> getAliases() {
-        return Collections.EMPTY_LIST;
+        return Collections.<String>emptyList();
     }
 
     public abstract void execute(ICommandSource cs, String[] arg);
 
     public void sendMessage(ICommandSource cs, String message) {
-        cs.sendMessage(new StringTextComponent(String.format("[§dScript§r] %s", message)), Util.DUMMY_UUID);
+        cs.sendMessage(new StringTextComponent(String.format("[§dScript§r] %s", message)),
+                Util.DUMMY_UUID);
     }
 
     public void sendListMessage(ICommandSource cs, String message1, String message2) {
-        cs.sendMessage(new StringTextComponent(String.format("§d - %s§r %s", message1, message2)), Util.DUMMY_UUID);
+        cs.sendMessage(new StringTextComponent(String.format("§d - %s§r %s", message1, message2)),
+                Util.DUMMY_UUID);
     }
 }

+ 28 - 20
src/main/java/me/km/permissions/ModCommandManager.java

@@ -31,10 +31,11 @@ public class ModCommandManager extends Commands {
     private final ScriptEvents events;
     private final Scripts scripts;
 
-    private final ArrayList<CommandNode> customNodes = new ArrayList<>();
+    private final ArrayList<CommandNode<?>> customNodes = new ArrayList<>();
     private final HashSet<String> ignoredCommands = new HashSet<>();
 
-    public ModCommandManager(Permissions perms, ScriptEvents events, Scripts scripts, ISnuviScheduler scheduler) {
+    public ModCommandManager(Permissions perms, ScriptEvents events, Scripts scripts,
+            ISnuviScheduler scheduler) {
         super(EnvironmentType.DEDICATED);
         getDispatcher().getRoot().getChildren().forEach(c -> {
             otherCommands.add(c.getName());
@@ -68,7 +69,7 @@ public class ModCommandManager extends Commands {
         ignoredCommands.add("config");
     }
 
-    public void addCustomNode(CommandNode node) {
+    public void addCustomNode(CommandNode<?> node) {
         customNodes.add(node);
     }
 
@@ -84,7 +85,8 @@ public class ModCommandManager extends Commands {
             return "";
         }
         int index = rawCommand.indexOf(' ');
-        return rawCommand.substring(rawCommand.charAt(0) == '/' ? 1 : 0, index == -1 ? rawCommand.length() : index);
+        return rawCommand.substring(rawCommand.charAt(0) == '/' ? 1 : 0,
+                index == -1 ? rawCommand.length() : index);
     }
 
     private static String[] getArguments(String rawCommand) {
@@ -96,7 +98,7 @@ public class ModCommandManager extends Commands {
         ArrayList<String> list = new ArrayList<>();
         while(pos < rawCommand.length()) {
             char c = rawCommand.charAt(pos);
-            switch(c) {
+            switch (c) {
                 case ' ':
                     if(pos - old > 0) {
                         list.add(rawCommand.substring(old, pos));
@@ -184,6 +186,7 @@ public class ModCommandManager extends Commands {
         return 0;
     }
 
+    @SuppressWarnings({"unchecked", "rawtypes"})
     @Override
     public void send(ServerPlayerEntity player) {
         Map<CommandNode<CommandSource>, CommandNode<ISuggestionProvider>> map = Maps.newHashMap();
@@ -197,26 +200,29 @@ public class ModCommandManager extends Commands {
         player.connection.sendPacket(new SCommandListPacket(rootNode));
     }
 
-    private void commandSourceNodesToSuggestionNodes(boolean first,
-            CommandNode<CommandSource> node,
-            CommandNode<ISuggestionProvider> suggestion,
-            CommandSource source,
+    @SuppressWarnings({"unchecked", "rawtypes"})
+    private void commandSourceNodesToSuggestionNodes(boolean first, CommandNode<CommandSource> node,
+            CommandNode<ISuggestionProvider> suggestion, CommandSource source,
             Map<CommandNode<CommandSource>, CommandNode<ISuggestionProvider>> map) {
         for(CommandNode<CommandSource> childNode : node.getChildren()) {
             if(first && ignoredCommands.contains(childNode.getName())) {
                 continue;
             }
-            if((first && perms.has(source, childNode.getName()) || (!first && childNode.canUse(source)))) {
-                ArgumentBuilder<ISuggestionProvider, ?> arg = (ArgumentBuilder) childNode.createBuilder();
+            if((first && perms.has(source, childNode.getName())
+                    || (!first && childNode.canUse(source)))) {
+                ArgumentBuilder<ISuggestionProvider, ?> arg =
+                        (ArgumentBuilder) childNode.createBuilder();
                 arg.requires(a -> true);
                 if(arg.getCommand() != null) {
                     arg.executes(a -> 0);
                 }
 
                 if(arg instanceof RequiredArgumentBuilder) {
-                    RequiredArgumentBuilder<ISuggestionProvider, ?> required = (RequiredArgumentBuilder) arg;
+                    RequiredArgumentBuilder<ISuggestionProvider, ?> required =
+                            (RequiredArgumentBuilder) arg;
                     if(required.getSuggestionsProvider() != null) {
-                        required.suggests(SuggestionProviders.ensureKnown(required.getSuggestionsProvider()));
+                        required.suggests(
+                                SuggestionProviders.ensureKnown(required.getSuggestionsProvider()));
                     }
                 }
 
@@ -228,16 +234,16 @@ public class ModCommandManager extends Commands {
                 map.put(childNode, commandNode);
                 suggestion.addChild(commandNode);
                 if(!childNode.getChildren().isEmpty()) {
-                    this.commandSourceNodesToSuggestionNodes(false, childNode, commandNode, source, map);
+                    this.commandSourceNodesToSuggestionNodes(false, childNode, commandNode, source,
+                            map);
                 }
             }
         }
     }
 
-    private void commandSourceNodesToSuggestionNodes(
-            CommandNode<CommandSource> node,
-            CommandNode<ISuggestionProvider> parentNode,
-            CommandSource cs,
+    @SuppressWarnings({"unchecked", "rawtypes"})
+    private void commandSourceNodesToSuggestionNodes(CommandNode<CommandSource> node,
+            CommandNode<ISuggestionProvider> parentNode, CommandSource cs,
             Map<CommandNode<CommandSource>, CommandNode<ISuggestionProvider>> map) {
         if(!node.canUse(cs)) {
             return;
@@ -248,9 +254,11 @@ public class ModCommandManager extends Commands {
             arg.executes(a -> 0);
         }
         if(arg instanceof RequiredArgumentBuilder) {
-            RequiredArgumentBuilder<ISuggestionProvider, ?> required = (RequiredArgumentBuilder) arg;
+            RequiredArgumentBuilder<ISuggestionProvider, ?> required =
+                    (RequiredArgumentBuilder) arg;
             if(required.getSuggestionsProvider() != null) {
-                required.suggests(SuggestionProviders.ensureKnown(required.getSuggestionsProvider()));
+                required.suggests(
+                        SuggestionProviders.ensureKnown(required.getSuggestionsProvider()));
             }
         }
         if(arg.getRedirect() != null) {

+ 2 - 0
src/main/java/me/km/plots/PlotMap.java

@@ -142,6 +142,7 @@ public class PlotMap {
 
     private int primeIndex = 0;
     private int size = 0;
+    @SuppressWarnings("unchecked")
     private ArrayList<Plot>[] plots = new ArrayList[PRIMES[primeIndex]];
     private Plot last = null;
 
@@ -162,6 +163,7 @@ public class PlotMap {
             return;
         }
         primeIndex++;
+        @SuppressWarnings("unchecked")
         ArrayList<Plot>[] newPlots = new ArrayList[PRIMES[primeIndex]];
         Plot p = last;
         while(p != null) {

+ 20 - 11
src/main/java/me/km/plots/ProtectionEvents.java

@@ -36,15 +36,17 @@ public class ProtectionEvents {
     }
 
     private boolean shouldBeProtected(Entity ent) {
-        EntityType type = ent.getType();
-        return type == EntityType.ITEM_FRAME || type == EntityType.PAINTING || type == EntityType.ARMOR_STAND;
+        EntityType<?> type = ent.getType();
+        return type == EntityType.ITEM_FRAME || type == EntityType.PAINTING
+                || type == EntityType.ARMOR_STAND;
     }
 
     @SubscribeEvent(priority = EventPriority.HIGHEST)
     public void onBlockPlace(BlockEvent.EntityPlaceEvent e) {
         if(e.getEntity() instanceof PlayerEntity) {
             PlayerEntity p = (PlayerEntity) e.getEntity();
-            if(!canBypass(p) && e.getWorld() instanceof World && !plots.canPlaceBlock((World) e.getWorld(), e.getPos(), p)) {
+            if(!canBypass(p) && e.getWorld() instanceof World
+                    && !plots.canPlaceBlock((World) e.getWorld(), e.getPos(), p)) {
                 e.setCanceled(true);
             }
         }
@@ -53,17 +55,19 @@ public class ProtectionEvents {
     @SubscribeEvent(priority = EventPriority.HIGHEST)
     public void onBlockBreak(BlockEvent.BreakEvent e) {
         PlayerEntity p = e.getPlayer();
-        if(!canBypass(p) && e.getWorld() instanceof World && !plots.canBreakBlock((World) e.getWorld(), e.getPos(), p)) {
+        if(!canBypass(p) && e.getWorld() instanceof World
+                && !plots.canBreakBlock((World) e.getWorld(), e.getPos(), p)) {
             e.setCanceled(true);
         }
     }
 
     @SubscribeEvent(priority = EventPriority.HIGHEST)
     public void onBossSpawn(EntityJoinWorldEvent e) {
-        EntityType type = e.getEntity().getType();
+        EntityType<?> type = e.getEntity().getType();
         if(type == EntityType.WITHER && e.getWorld().getDimensionType().isUltrawarm()) {
             e.setCanceled(true);
-        } else if(type == EntityType.ENDER_DRAGON && !e.getWorld().getDimensionType().doesHasDragonFight()) {
+        } else if(type == EntityType.ENDER_DRAGON
+                && !e.getWorld().getDimensionType().doesHasDragonFight()) {
             e.setCanceled(true);
         }
     }
@@ -83,7 +87,8 @@ public class ProtectionEvents {
     public void onEntityHit(AttackEntityEvent e) {
         if(shouldBeProtected(e.getTarget())) {
             PlayerEntity p = e.getPlayer();
-            if(!canBypass(p) && !plots.canHitAmbientEntity(p.world, e.getTarget().getPosition(), p)) {
+            if(!canBypass(p)
+                    && !plots.canHitAmbientEntity(p.world, e.getTarget().getPosition(), p)) {
                 e.setCanceled(true);
             }
         }
@@ -97,7 +102,8 @@ public class ProtectionEvents {
                 Entity thrower = e.getThrowable().func_234616_v_();
                 if(thrower != null && (thrower instanceof PlayerEntity)) {
                     PlayerEntity p = (PlayerEntity) thrower;
-                    if(!canBypass(p) && !plots.canHitAmbientEntity(p.world, e.getThrowable().getPosition(), p)) {
+                    if(!canBypass(p) && !plots.canHitAmbientEntity(p.world,
+                            e.getThrowable().getPosition(), p)) {
                         e.setCanceled(true);
                     }
                 } else {
@@ -115,7 +121,8 @@ public class ProtectionEvents {
                 Entity shooter = e.getArrow().func_234616_v_();
                 if(shooter != null && (shooter instanceof ModEntityPlayerMP)) {
                     PlayerEntity p = (PlayerEntity) shooter;
-                    if(!canBypass(p) && !plots.canHitAmbientEntity(p.world, e.getArrow().getPosition(), p)) {
+                    if(!canBypass(p)
+                            && !plots.canHitAmbientEntity(p.world, e.getArrow().getPosition(), p)) {
                         e.setCanceled(true);
                     }
                 } else {
@@ -153,7 +160,8 @@ public class ProtectionEvents {
     @SubscribeEvent(priority = EventPriority.HIGHEST)
     public void onPlayerEntityInteract(PlayerInteractEvent.EntityInteract e) {
         PlayerEntity p = e.getPlayer();
-        if(!canBypass(p) && !plots.canInteractWithEntity(e.getWorld(), e.getTarget().getPosition(), p)) {
+        if(!canBypass(p)
+                && !plots.canInteractWithEntity(e.getWorld(), e.getTarget().getPosition(), p)) {
             e.setCanceled(true);
         }
     }
@@ -165,7 +173,8 @@ public class ProtectionEvents {
 
     @SubscribeEvent(priority = EventPriority.HIGHEST)
     public void onAttackVillager(LivingAttackEvent e) {
-        if(e.getEntityLiving().getType() == EntityType.VILLAGER && !e.getSource().isCreativePlayer()) {
+        if(e.getEntityLiving().getType() == EntityType.VILLAGER
+                && !e.getSource().isCreativePlayer()) {
             e.setCanceled(true);
         }
     }

+ 3 - 3
src/main/java/me/km/plots/WorldPlotMap.java

@@ -93,7 +93,7 @@ public class WorldPlotMap {
         if(map != null) {
             return map.getIterator();
         }
-        return Collections.EMPTY_LIST.iterator();
+        return Collections.<PlotMap.Plot>emptyList().iterator();
     }
 
     public Iterator<PlotMap.Plot> getIterator(World w, UUID uuid) {
@@ -101,7 +101,7 @@ public class WorldPlotMap {
         if(map != null) {
             return map.getIterator(uuid);
         }
-        return Collections.EMPTY_LIST.iterator();
+        return Collections.<PlotMap.Plot>emptyList().iterator();
     }
 
     public List<Plot> getIntersectingPlots(World w, int minX, int minY, int minZ, int maxX,
@@ -110,7 +110,7 @@ public class WorldPlotMap {
         if(map != null) {
             return map.getIntersectingPlots(minX, minY, minZ, maxX, maxY, maxZ);
         }
-        return Collections.EMPTY_LIST;
+        return Collections.<Plot>emptyList();
     }
 
     public void save() {

+ 8 - 10
src/main/java/me/km/snuviscript/CommandScript.java

@@ -6,15 +6,12 @@ import java.util.Collection;
 import me.hammerle.snuviscript.code.Script;
 import me.km.permissions.Command;
 import net.minecraft.command.ICommandSource;
-import net.minecraft.server.MinecraftServer;
 
 public class CommandScript extends Command {
     private final Scripts scripts;
-    private final MinecraftServer server;
 
-    public CommandScript(Scripts scripts, MinecraftServer server) {
+    public CommandScript(Scripts scripts) {
         this.scripts = scripts;
-        this.server = server;
     }
 
     @Override
@@ -29,11 +26,10 @@ public class CommandScript extends Command {
         return list;
     }
 
-    @SuppressWarnings("unchecked")
     @Override
     public void execute(ICommandSource cs, String[] arg) {
         if(arg.length >= 1) {
-            switch(arg[0].toLowerCase()) {
+            switch (arg[0].toLowerCase()) {
                 case "s":
                 case "start": {
                     if(arg.length >= 2) {
@@ -50,7 +46,8 @@ public class CommandScript extends Command {
                         return;
                     }
                     sendMessage(cs, "Active scripts:");
-                    scs.forEach(sc -> sendListMessage(cs, String.valueOf(sc.getId()), sc.getName()));
+                    scs.forEach(
+                            sc -> sendListMessage(cs, String.valueOf(sc.getId()), sc.getName()));
                     return;
                 }
                 case "t":
@@ -66,13 +63,14 @@ public class CommandScript extends Command {
                             Script sc = scripts.getScriptManager().getScript(id);
                             if(sc != null) {
                                 scripts.getScriptManager().removeScript(sc);
-                                sendMessage(cs, String.format("Script '%s' was terminated.", sc.getName()));
+                                sendMessage(cs,
+                                        String.format("Script '%s' was terminated.", sc.getName()));
                             } else {
                                 sendMessage(cs, String.format("Script id '%d' is not valid.", id));
                             }
-                        } catch(NumberFormatException ex) {
+                        } catch (NumberFormatException ex) {
                             sendMessage(cs, String.format("'%s' is not a valid id.", arg[1]));
-                        } catch(Exception ex) {
+                        } catch (Exception ex) {
                             sendMessage(cs, "An exception on script termination was thrown.");
                             ex.printStackTrace();
                         }

+ 6 - 6
src/main/java/me/km/snuviscript/Limits.java

@@ -5,14 +5,14 @@ import net.minecraft.entity.EntityType;
 import net.minecraft.world.server.ServerWorld;
 
 public class Limits {
-    private final HashMap<EntityType, Integer> limits = new HashMap<>();
-    private final HashMap<EntityType, Integer> currentAmount = new HashMap<>();
+    private final HashMap<EntityType<?>, Integer> limits = new HashMap<>();
+    private final HashMap<EntityType<?>, Integer> currentAmount = new HashMap<>();
 
-    public void setLimit(EntityType type, int limit) {
+    public void setLimit(EntityType<?> type, int limit) {
         limits.put(type, limit);
     }
 
-    public void removeLimit(EntityType type) {
+    public void removeLimit(EntityType<?> type) {
         limits.remove(type);
     }
 
@@ -27,11 +27,11 @@ public class Limits {
         }
     }
 
-    private void add(EntityType type) {
+    private void add(EntityType<?> type) {
         currentAmount.compute(type, (entType, amount) -> amount == null ? 1 : amount + 1);
     }
 
-    public boolean isAllowedToSpawn(EntityType type) {
+    public boolean isAllowedToSpawn(EntityType<?> type) {
         Integer limit = limits.get(type);
         if(limit == null) {
             return true;

+ 1 - 0
src/main/java/me/km/snuviscript/RingArray.java

@@ -5,6 +5,7 @@ public class RingArray<T> {
     private int index = 0;
     private final T[] data;
 
+    @SuppressWarnings("unchecked")
     public RingArray(int maxLength) {
         data = (T[]) new Object[maxLength];
     }

+ 39 - 25
src/main/java/me/km/snuviscript/ScriptEvents.java

@@ -89,7 +89,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
     private static void nothing(Script sc) {
     }
 
-    private void handleEvent(Event e, String event, Consumer<Script> before, Consumer<Script> after) {
+    private void handleEvent(Event e, String event, Consumer<Script> before,
+            Consumer<Script> after) {
         if(e.isCancelable()) {
             scripts.getScriptManager().callEvent(event, sc -> {
                 before.accept(sc);
@@ -118,8 +119,9 @@ public class ScriptEvents implements BlockHarvest, Craft {
     private void handleVar(Script sc, String event, String name, Consumer<Variable> c) {
         try {
             ifVarNotNull(sc, name, c);
-        } catch(Exception ex) {
-            scripts.getLogger().print(String.format("invalid var in '%s' event", event), ex, null, sc.getName(), sc, sc.getStackTrace());
+        } catch (Exception ex) {
+            scripts.getLogger().print(String.format("invalid var in '%s' event", event), ex, null,
+                    sc.getName(), sc, sc.getStackTrace());
         }
     }
 
@@ -133,8 +135,9 @@ public class ScriptEvents implements BlockHarvest, Craft {
     private void simpleCancel(Script sc, Event e, String name) {
         try {
             ifVarNotNull(sc, "cancel", v -> e.setCanceled(v.getBoolean(sc)));
-        } catch(Exception ex) {
-            scripts.getLogger().print(String.format("invalid var in '%s' event", name), ex, null, sc.getName(), sc, sc.getStackTrace());
+        } catch (Exception ex) {
+            scripts.getLogger().print(String.format("invalid var in '%s' event", name), ex, null,
+                    sc.getName(), sc, sc.getStackTrace());
         }
     }
 
@@ -144,13 +147,13 @@ public class ScriptEvents implements BlockHarvest, Craft {
             sc.setVar("var", var);
         });
     }
-    
+
     public void onPlayerStartElytra(PlayerEntity p) {
         handleEvent("player_elytra_start", sc -> {
             setPlayer(sc, p);
         });
     }
-    
+
     public void onPlayerStopElytra(PlayerEntity p) {
         handleEvent("player_elytra_stop", sc -> {
             setPlayer(sc, p);
@@ -164,7 +167,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
         });
     }
 
-    public boolean onInventoryClick(Script script, ITextComponent text, ModInventory inv, int slot, ClickType click, PlayerEntity p) {
+    public boolean onInventoryClick(Script script, ITextComponent text, ModInventory inv, int slot,
+            ClickType click, PlayerEntity p) {
         scripts.getScriptManager().callEvent("inv_click", script, sc -> {
             setPlayer(sc, p);
             sc.setVar("inv", inv);
@@ -178,7 +182,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
         return v != null && v.getBoolean(script);
     }
 
-    public void onInventoryClose(Script script, ITextComponent text, ModInventory inv, PlayerEntity p) {
+    public void onInventoryClose(Script script, ITextComponent text, ModInventory inv,
+            PlayerEntity p) {
         scripts.getScriptManager().callEvent("inv_close", script, sc -> {
             setPlayer(sc, p);
             sc.setVar("inv", inv);
@@ -257,7 +262,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
             setLiving(sc, e.getEntityLiving());
             sc.setVar("experience", (double) e.getDroppedExperience());
         }, (sc) -> {
-            handleVar(sc, "living_experience_drop", "experience", v -> e.setDroppedExperience(v.getInt(sc)));
+            handleVar(sc, "living_experience_drop", "experience",
+                    v -> e.setDroppedExperience(v.getInt(sc)));
         });
     }
 
@@ -267,13 +273,14 @@ public class ScriptEvents implements BlockHarvest, Craft {
         final Location loc;
 
         RayTraceResult ray = e.getRayTraceResult();
-        switch(ray.getType()) {
+        switch (ray.getType()) {
             case ENTITY:
                 hitEntity = ((EntityRayTraceResult) e.getRayTraceResult()).getEntity();
                 loc = null;
                 break;
             case BLOCK:
-                loc = new Location(e.getEntity().world, ((BlockRayTraceResult) e.getRayTraceResult()).getPos());
+                loc = new Location(e.getEntity().world,
+                        ((BlockRayTraceResult) e.getRayTraceResult()).getPos());
                 hitEntity = null;
                 break;
             default:
@@ -288,7 +295,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
         });
     }
 
-    public void onEntityItemProjectileHit(EntityItemProjectile ent, LivingEntity liv, ItemStack stack, Entity hitEntity, BlockPos pos) {
+    public void onEntityItemProjectileHit(EntityItemProjectile ent, LivingEntity liv,
+            ItemStack stack, Entity hitEntity, BlockPos pos) {
         Location loc = (pos == null) ? null : new Location(ent.world, pos);
         handleEvent("item_hit", (sc) -> {
             sc.setVar("projectile", ent);
@@ -300,9 +308,9 @@ public class ScriptEvents implements BlockHarvest, Craft {
     }
 
     @Override
-    public List<ItemStack> onBlockHarvest(BlockState state, ServerWorld w, BlockPos pos, TileEntity tileEnt, Entity ent, ItemStack stack) {
-        LootContext.Builder loot = new LootContext.Builder(w)
-                .withRandom(w.getRandom())
+    public List<ItemStack> onBlockHarvest(BlockState state, ServerWorld w, BlockPos pos,
+            TileEntity tileEnt, Entity ent, ItemStack stack) {
+        LootContext.Builder loot = new LootContext.Builder(w).withRandom(w.getRandom())
                 .withParameter(LootParameters.field_237457_g_, Vector3d.copyCentered(pos))
                 .withParameter(LootParameters.TOOL, stack == null ? ItemStack.EMPTY : stack)
                 .withNullableParameter(LootParameters.THIS_ENTITY, ent)
@@ -319,7 +327,7 @@ public class ScriptEvents implements BlockHarvest, Craft {
                 setEntity(sc, ent);
                 setItem(sc, stack);
             }, ScriptEvents::nothing);
-        } catch(Exception ex) {
+        } catch (Exception ex) {
             ex.printStackTrace();
         }
         return list;
@@ -558,7 +566,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
             if(args.length == 0) {
                 sc.setVar("args", new ArrayList<>());
             } else {
-                sc.setVar("args", Arrays.stream(args).map(s -> SnuviUtils.convert(s)).collect(Collectors.toList()));
+                sc.setVar("args", Arrays.stream(args).map(s -> SnuviUtils.convert(s))
+                        .collect(Collectors.toList()));
             }
         });
     }
@@ -577,7 +586,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
             sc.setVar("message", e.getMessage());
             sc.setVar("cancel", e.isCanceled());
         }, (sc) -> {
-            handleVar(sc, "chat", "message", v -> e.setComponent(new StringTextComponent(v.getString(sc))));
+            handleVar(sc, "chat", "message",
+                    v -> e.setComponent(new StringTextComponent(v.getString(sc))));
             handleVar(sc, "chat", "cancel", v -> e.setCanceled(v.getBoolean(sc)));
         });
     }
@@ -632,7 +642,8 @@ public class ScriptEvents implements BlockHarvest, Craft {
     @SubscribeEvent(receiveCanceled = true)
     public void onEntityJoinWorld(EntityJoinWorldEvent e) {
         Entity ent = e.getEntity();
-        if(!e.getEntity().isPassenger() && !scripts.getEntityLimits().isAllowedToSpawn(ent.getType())) {
+        if(!e.getEntity().isPassenger()
+                && !scripts.getEntityLimits().isAllowedToSpawn(ent.getType())) {
             e.getEntity().getPassengers().forEach(rider -> {
                 if(rider == null || rider instanceof PlayerEntity) {
                     return;
@@ -681,14 +692,15 @@ public class ScriptEvents implements BlockHarvest, Craft {
     public void onMobGriefing(EntityMobGriefingEvent e) {
         handleEvent(e, "mob_griefing", (sc) -> {
             setEntity(sc, e.getEntity());
-            sc.setVar("cancel", !e.getEntity().world.getGameRules().getBoolean(GameRules.MOB_GRIEFING));
+            sc.setVar("cancel",
+                    !e.getEntity().world.getGameRules().getBoolean(GameRules.MOB_GRIEFING));
         }, (sc) -> {
             handleVar(sc, "mob_griefing", "cancel", (v) -> {
                 e.setResult(v.getBoolean(sc) ? Result.DENY : Result.ALLOW);
             });
         });
     }
-    
+
     @SubscribeEvent(receiveCanceled = true)
     public void onWorldLoad(WorldEvent.Load e) {
         handleEvent(e, "world_load", (sc) -> {
@@ -697,13 +709,15 @@ public class ScriptEvents implements BlockHarvest, Craft {
     }
 
     @Override
-    public void onCraft(int id, World w, PlayerEntity p, CraftingInventory inv, CraftResultInventory result) {
+    public void onCraft(int id, World w, PlayerEntity p, CraftingInventory inv,
+            CraftResultInventory result) {
         if(w.isRemote) {
             return;
         }
         ServerPlayerEntity serverplayerentity = (ServerPlayerEntity) p;
-        Wrapper<ItemStack> wrapper = new Wrapper(ItemStack.EMPTY);
-        Optional<ICraftingRecipe> optional = w.getServer().getRecipeManager().getRecipe(IRecipeType.CRAFTING, inv, w);
+        Wrapper<ItemStack> wrapper = new Wrapper<>(ItemStack.EMPTY);
+        Optional<ICraftingRecipe> optional =
+                w.getServer().getRecipeManager().getRecipe(IRecipeType.CRAFTING, inv, w);
         if(optional.isPresent()) {
             ICraftingRecipe icraftingrecipe = optional.get();
             if(result.canUseRecipe(w, serverplayerentity, icraftingrecipe)) {

+ 6 - 4
src/main/java/me/km/snuviscript/SnuviLogger.java

@@ -15,8 +15,8 @@ public class SnuviLogger implements ISnuviLogger {
     private boolean printDebugToConsole = true;
     private MinecraftServer server = null;
     private Permissions perms = null;
-    private final RingArray<String> debugHistory = new RingArray(100);
-    private final RingArray<String> errorHistory = new RingArray(100);
+    private final RingArray<String> debugHistory = new RingArray<>(100);
+    private final RingArray<String> errorHistory = new RingArray<>(100);
 
     public void setConsoleErrorLogging(boolean b) {
         printErrorToConsole = b;
@@ -50,7 +50,8 @@ public class SnuviLogger implements ISnuviLogger {
     }
 
     @Override
-    public void print(String message, Exception ex, String function, String scriptname, Script sc, StackTrace lines) {
+    public void print(String message, Exception ex, String function, String scriptname, Script sc,
+            StackTrace lines) {
         StringBuilder sb = new StringBuilder();
         sb.append("[§cLogger§r] ");
 
@@ -60,7 +61,8 @@ public class SnuviLogger implements ISnuviLogger {
             sb.append(color).append(message).append("§r");
         } else {
             color = "§c";
-            sb.append(color).append(ex.getClass().getSimpleName()).append("§r: '").append(color).append(ex.getMessage());
+            sb.append(color).append(ex.getClass().getSimpleName()).append("§r: '").append(color)
+                    .append(ex.getMessage());
             if(message != null && !message.isEmpty()) {
                 sb.append(" - ").append(message);
             }

+ 43 - 42
src/main/java/me/km/snuviscript/commands/BlockCommands.java

@@ -28,9 +28,7 @@ import net.minecraft.world.IWorld;
 import net.minecraft.world.World;
 
 public class BlockCommands {
-
     private static class Offset {
-
         private final int x;
         private final int y;
         private final int z;
@@ -42,42 +40,36 @@ public class BlockCommands {
         }
     }
 
-    private static final Offset[] OFFSETS = new Offset[]{
-        //new Offset(-1, -1, -1),
-        new Offset(0, -1, -1),
-        //new Offset(1, -1, -1),
-        new Offset(-1, 0, -1),
-        new Offset(0, 0, -1),
-        new Offset(1, 0, -1),
-        //new Offset(-1, 1, -1),
-        new Offset(0, 1, -1),
-        //new Offset(1, 1, -1),
+    private static final Offset[] OFFSETS = new Offset[] {
+            // new Offset(-1, -1, -1),
+            new Offset(0, -1, -1),
+            // new Offset(1, -1, -1),
+            new Offset(-1, 0, -1), new Offset(0, 0, -1), new Offset(1, 0, -1),
+            // new Offset(-1, 1, -1),
+            new Offset(0, 1, -1),
+            // new Offset(1, 1, -1),
 
-        new Offset(-1, -1, 0),
-        new Offset(0, -1, 0),
-        new Offset(1, -1, 0),
-        new Offset(-1, 0, 0),
-        new Offset(0, 0, 0),
-        new Offset(1, 0, 0),
-        new Offset(-1, 1, 0),
-        new Offset(0, 1, 0),
-        new Offset(1, 1, 0),
-        //new Offset(-1, -1, 1),
-        new Offset(0, -1, 1),
-        //new Offset(1, -1, 1),
-        new Offset(-1, 0, 1),
-        new Offset(0, 0, 1),
-        new Offset(1, 0, 1),
-        //new Offset(-1, 1, 1),
-        new Offset(0, 1, 1), //new Offset(1, 1, 1),
+            new Offset(-1, -1, 0), new Offset(0, -1, 0), new Offset(1, -1, 0), new Offset(-1, 0, 0),
+            new Offset(0, 0, 0), new Offset(1, 0, 0), new Offset(-1, 1, 0), new Offset(0, 1, 0),
+            new Offset(1, 1, 0),
+            // new Offset(-1, -1, 1),
+            new Offset(0, -1, 1),
+            // new Offset(1, -1, 1),
+            new Offset(-1, 0, 1), new Offset(0, 0, 1), new Offset(1, 0, 1),
+            // new Offset(-1, 1, 1),
+            new Offset(0, 1, 1), // new Offset(1, 1, 1),
     };
 
+    @SuppressWarnings({"unchecked", "rawtypes"})
     public static void registerFunctions(ScriptManager sm) {
-        sm.registerFunction("block.gettag", (sc, in) -> BlockTags.getCollection().get(new ResourceLocation(in[0].getString(sc))));
-        sm.registerFunction("block.hastag", (sc, in) -> ((Tag<Block>) in[0].get(sc)).contains((Block) in[1].get(sc)));
+        sm.registerFunction("block.gettag", (sc, in) -> BlockTags.getCollection()
+                .get(new ResourceLocation(in[0].getString(sc))));
+        sm.registerFunction("block.hastag",
+                (sc, in) -> ((Tag<Block>) in[0].get(sc)).contains((Block) in[1].get(sc)));
         sm.registerFunction("block.gettype", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
-            return l.getWorld().getBlockState(l.getBlockPos()).getBlock().getRegistryName().toString();
+            return l.getWorld().getBlockState(l.getBlockPos()).getBlock().getRegistryName()
+                    .toString();
         });
         sm.registerFunction("block.isair", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
@@ -87,7 +79,8 @@ public class BlockCommands {
             Location l = (Location) in[0].get(sc);
             IWorld w = l.getWorld();
             BlockPos oldPos = l.getBlockPos();
-            BlockPos.Mutable pos = new BlockPos.Mutable(oldPos.getX(), oldPos.getY(), oldPos.getZ());
+            BlockPos.Mutable pos =
+                    new BlockPos.Mutable(oldPos.getX(), oldPos.getY(), oldPos.getZ());
             int ox = pos.getX();
             int oy = pos.getY();
             int oz = pos.getZ();
@@ -104,10 +97,11 @@ public class BlockCommands {
             Location l = (Location) in[0].get(sc);
             return l.getWorld().getBlockState(l.getBlockPos()).getBlock();
         });
-        sm.registerFunction("block.getproperty", (sc, in) -> Mapper.getProperty(in[0].getString(sc)));
+        sm.registerFunction("block.getproperty",
+                (sc, in) -> Mapper.getProperty(in[0].getString(sc)));
         sm.registerFunction("block.getstate", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
-            Property prop = (Property) in[1].get(sc);
+            Property<?> prop = (Property) in[1].get(sc);
             BlockState state = l.getWorld().getBlockState(l.getBlockPos());
             if(state.hasProperty(prop)) {
                 Object o = l.getWorld().getBlockState(l.getBlockPos()).get(prop);
@@ -144,7 +138,8 @@ public class BlockCommands {
         });
         sm.registerConsumer("block.set", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
-            BlockStateParser parser = new BlockStateParser(new StringReader(in[1].getString(sc)), true);
+            BlockStateParser parser =
+                    new BlockStateParser(new StringReader(in[1].getString(sc)), true);
             BlockState state = parser.parse(true).getState();
             int flag = 2;
             if(in.length >= 3 && in[2].getBoolean(sc)) {
@@ -153,7 +148,8 @@ public class BlockCommands {
             l.getWorld().setBlockState(l.getBlockPos(), state, flag);
         });
         sm.registerFunction("block.newstate", (sc, in) -> {
-            BlockStateParser parser = new BlockStateParser(new StringReader(in[0].getString(sc)), true);
+            BlockStateParser parser =
+                    new BlockStateParser(new StringReader(in[0].getString(sc)), true);
             return parser.parse(true).getState();
         });
         sm.registerConsumer("block.setstate", (sc, in) -> {
@@ -173,7 +169,8 @@ public class BlockCommands {
             SignTileEntity sign = (SignTileEntity) te;
             sign.setText(in[1].getInt(sc), new StringTextComponent(SnuviUtils.connect(sc, in, 2)));
             SUpdateTileEntityPacket packet = sign.getUpdatePacket();
-            l.getWorld().getPlayers().forEach(p -> ((ServerPlayerEntity) p).connection.sendPacket(packet));
+            l.getWorld().getPlayers()
+                    .forEach(p -> ((ServerPlayerEntity) p).connection.sendPacket(packet));
             return true;
         });
         sm.registerFunction("block.getsign", (sc, in) -> {
@@ -188,7 +185,8 @@ public class BlockCommands {
             Location l = (Location) in[0].get(sc);
             BlockPos pos = l.getBlockPos();
             BlockState state = l.getWorld().getBlockState(pos);
-            ((DoorBlock) state.getBlock()).openDoor((World) l.getWorld(), state, pos, in[1].getBoolean(sc));
+            ((DoorBlock) state.getBlock()).openDoor((World) l.getWorld(), state, pos,
+                    in[1].getBoolean(sc));
         });
         sm.registerFunction("block.getdoorstatus", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
@@ -211,7 +209,8 @@ public class BlockCommands {
             if(te == null || !(te instanceof ChestTileEntity)) {
                 return 0.0d;
             }
-            return (double) InventoryUtils.searchInventoryFor((ChestTileEntity) te, (ItemStack) in[2].get(sc), in[1].getBoolean(sc));
+            return (double) InventoryUtils.searchInventoryFor((ChestTileEntity) te,
+                    (ItemStack) in[2].get(sc), in[1].getBoolean(sc));
         });
         sm.registerFunction("block.getsecchest", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
@@ -246,8 +245,10 @@ public class BlockCommands {
         });
         sm.registerConsumer("block.setspawnertype", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
-            MobSpawnerTileEntity spawner = (MobSpawnerTileEntity) l.getWorld().getTileEntity(l.getBlockPos());
-            spawner.getSpawnerBaseLogic().setEntityType(EntityType.byKey(in[1].getString(sc)).get());
+            MobSpawnerTileEntity spawner =
+                    (MobSpawnerTileEntity) l.getWorld().getTileEntity(l.getBlockPos());
+            spawner.getSpawnerBaseLogic()
+                    .setEntityType(EntityType.byKey(in[1].getString(sc)).get());
         });
         sm.registerFunction("block.getinv", (sc, in) -> {
             Location l = (Location) in[0].get(sc);

+ 33 - 17
src/main/java/me/km/snuviscript/commands/CommandCommands.java

@@ -12,9 +12,11 @@ import net.minecraft.command.arguments.*;
 import net.minecraft.server.MinecraftServer;
 
 public class CommandCommands {
+    @SuppressWarnings({"unchecked", "rawtypes"})
     public static void registerFunctions(ScriptManager sm, Scripts scripts, Permissions perms,
             MinecraftServer server, ModCommandManager commands) {
-        sm.registerConsumer("command.addignored", (sc, in) -> commands.addIgnoredCommands(in[0].getString(sc)));
+        sm.registerConsumer("command.addignored",
+                (sc, in) -> commands.addIgnoredCommands(in[0].getString(sc)));
         sm.registerConsumer("command.clearignored", (sc, in) -> commands.clearIgnoredCommands());
         sm.registerFunction("command.newhelp", (sc, in) -> {
             final String perm = in[1].getString(sc);
@@ -29,7 +31,8 @@ public class CommandCommands {
             return arg;
         });
         sm.registerFunction("command.newhelpbool", (sc, in) -> {
-            RequiredArgumentBuilder<CommandSource, Boolean> arg = Commands.argument(in[0].getString(sc), BoolArgumentType.bool());
+            RequiredArgumentBuilder<CommandSource, Boolean> arg =
+                    Commands.argument(in[0].getString(sc), BoolArgumentType.bool());
             if(in.length >= 2) {
                 final String perm = in[1].getString(sc);
                 arg.requires(p -> perms.has(p, perm));
@@ -39,7 +42,8 @@ public class CommandCommands {
         sm.registerFunction("command.newhelpdouble", (sc, in) -> {
             double min = in[1].getDouble(sc);
             double max = in[2].getDouble(sc);
-            RequiredArgumentBuilder<CommandSource, Double> arg = Commands.argument(in[0].getString(sc), DoubleArgumentType.doubleArg(min, max));
+            RequiredArgumentBuilder<CommandSource, Double> arg =
+                    Commands.argument(in[0].getString(sc), DoubleArgumentType.doubleArg(min, max));
             if(in.length >= 4) {
                 final String perm = in[3].getString(sc);
                 arg.requires(p -> perms.has(p, perm));
@@ -49,7 +53,8 @@ public class CommandCommands {
         sm.registerFunction("command.newhelpfloat", (sc, in) -> {
             float min = in[1].getFloat(sc);
             float max = in[2].getFloat(sc);
-            RequiredArgumentBuilder<CommandSource, Float> arg = Commands.argument(in[0].getString(sc), FloatArgumentType.floatArg(min, max));
+            RequiredArgumentBuilder<CommandSource, Float> arg =
+                    Commands.argument(in[0].getString(sc), FloatArgumentType.floatArg(min, max));
             if(in.length >= 4) {
                 final String perm = in[3].getString(sc);
                 arg.requires(p -> perms.has(p, perm));
@@ -59,7 +64,8 @@ public class CommandCommands {
         sm.registerFunction("command.newhelpint", (sc, in) -> {
             int min = in[1].getInt(sc);
             int max = in[2].getInt(sc);
-            RequiredArgumentBuilder<CommandSource, Integer> arg = Commands.argument(in[0].getString(sc), IntegerArgumentType.integer(min, max));
+            RequiredArgumentBuilder<CommandSource, Integer> arg =
+                    Commands.argument(in[0].getString(sc), IntegerArgumentType.integer(min, max));
             if(in.length >= 4) {
                 final String perm = in[3].getString(sc);
                 arg.requires(p -> perms.has(p, perm));
@@ -69,7 +75,8 @@ public class CommandCommands {
         sm.registerFunction("command.newhelplong", (sc, in) -> {
             long min = in[1].getLong(sc);
             long max = in[2].getLong(sc);
-            RequiredArgumentBuilder<CommandSource, Long> arg = Commands.argument(in[0].getString(sc), LongArgumentType.longArg(min, max));
+            RequiredArgumentBuilder<CommandSource, Long> arg =
+                    Commands.argument(in[0].getString(sc), LongArgumentType.longArg(min, max));
             if(in.length >= 4) {
                 final String perm = in[3].getString(sc);
                 arg.requires(p -> perms.has(p, perm));
@@ -90,26 +97,32 @@ public class CommandCommands {
             return arg;
         });
         sm.registerFunction("command.newhelpspecial", (sc, in) -> {
-            RequiredArgumentBuilder<CommandSource, ArgumentType> arg = null;
+            RequiredArgumentBuilder<CommandSource, ArgumentType<?>> arg = null;
             String name = in[0].getString(sc);
-            switch(name) {
+            switch (name) {
                 case "Item":
-                    arg = Commands.argument(in[1].getString(sc), (ArgumentType) ItemArgument.item());
+                    arg = Commands.argument(in[1].getString(sc),
+                            (ArgumentType) ItemArgument.item());
                     break;
                 case "Block":
-                    arg = Commands.argument(in[1].getString(sc), (ArgumentType) BlockStateArgument.blockState());
+                    arg = Commands.argument(in[1].getString(sc),
+                            (ArgumentType) BlockStateArgument.blockState());
                     break;
                 case "Potion":
-                    arg = Commands.argument(in[1].getString(sc), (ArgumentType) PotionArgument.mobEffect());
+                    arg = Commands.argument(in[1].getString(sc),
+                            (ArgumentType) PotionArgument.mobEffect());
                     break;
                 case "Enchantment":
-                    arg = Commands.argument(in[1].getString(sc), (ArgumentType) EnchantmentArgument.enchantment());
+                    arg = Commands.argument(in[1].getString(sc),
+                            (ArgumentType) EnchantmentArgument.enchantment());
                     break;
                 case "Player":
-                    arg = Commands.argument(in[1].getString(sc), (ArgumentType) EntityArgument.player());
+                    arg = Commands.argument(in[1].getString(sc),
+                            (ArgumentType) EntityArgument.player());
                     break;
                 default:
-                    throw new IllegalArgumentException(String.format("'%s' is not a valid special help", name));
+                    throw new IllegalArgumentException(
+                            String.format("'%s' is not a valid special help", name));
             }
             if(in.length >= 3) {
                 final String perm = in[2].getString(sc);
@@ -130,9 +143,12 @@ public class CommandCommands {
             commands.addCustomNode(((LiteralArgumentBuilder<CommandSource>) in[0].get(sc)).build());
         });
         sm.registerConsumer("command.clearhelp", (sc, in) -> commands.clearCustomNodes());
-        sm.registerConsumer("command.add", (sc, in) -> scripts.registerScriptCommand(in[0].getString(sc)));
-        sm.registerConsumer("command.remove", (sc, in) -> scripts.unregisterScriptCommand(in[0].getString(sc)));
-        sm.registerFunction("command.exists", (sc, in) -> scripts.isRegisteredScriptCommand(in[0].getString(sc)));
+        sm.registerConsumer("command.add",
+                (sc, in) -> scripts.registerScriptCommand(in[0].getString(sc)));
+        sm.registerConsumer("command.remove",
+                (sc, in) -> scripts.unregisterScriptCommand(in[0].getString(sc)));
+        sm.registerFunction("command.exists",
+                (sc, in) -> scripts.isRegisteredScriptCommand(in[0].getString(sc)));
         sm.registerConsumer("command.clear", (sc, in) -> scripts.clearScriptCommands());
     }
 }

+ 10 - 6
src/main/java/me/km/snuviscript/commands/CommandUtils.java

@@ -31,7 +31,8 @@ public class CommandUtils {
         return UUID.fromString(o.toString());
     }
 
-    public static ITextComponent concat(Script sc, int start, String pre, InputProvider... ob) throws Exception {
+    public static ITextComponent concat(Script sc, int start, String pre, InputProvider... ob)
+            throws Exception {
         StringTextComponent text = new StringTextComponent(pre);
         Object o;
         for(int i = start; i < ob.length; i++) {
@@ -45,13 +46,15 @@ public class CommandUtils {
         return text;
     }
 
-    public static void sendMessageToGroup(MinecraftServer server, Scripts scripts, Permissions perms, Object group, Script sc, ITextComponent text) {
+    public static void sendMessageToGroup(MinecraftServer server, Scripts scripts,
+            Permissions perms, Object group, Script sc, ITextComponent text) {
         doForGroup(server, scripts, perms, group, sc, p -> p.sendMessage(text, Util.DUMMY_UUID));
     }
 
-    public static void doForGroup(MinecraftServer server, Scripts scripts, Permissions perms, Object group, Script sc, Consumer<ICommandSource> c) {
+    public static void doForGroup(MinecraftServer server, Scripts scripts, Permissions perms,
+            Object group, Script sc, Consumer<ICommandSource> c) {
         if(group instanceof String) {
-            switch(group.toString().toLowerCase()) {
+            switch (group.toString().toLowerCase()) {
                 case "online":
                     if(server.getPlayerList() != null) {
                         server.getPlayerList().getPlayers().forEach(p -> c.accept(p));
@@ -59,7 +62,8 @@ public class CommandUtils {
                     return;
                 case "dev":
                     if(server.getPlayerList() != null) {
-                        server.getPlayerList().getPlayers().stream().filter(p -> perms.has(p, "script.error")).forEach(c);
+                        server.getPlayerList().getPlayers().stream()
+                                .filter(p -> perms.has(p, "script.error")).forEach(c);
                     }
                     return;
                 case "server":
@@ -80,7 +84,7 @@ public class CommandUtils {
         return bank.getId(uuid);
     }
 
-    public static Class getNamedClass(String s) throws ClassNotFoundException {
+    public static Class<?> getNamedClass(String s) throws ClassNotFoundException {
         return Class.forName(s);
     }
 

+ 23 - 13
src/main/java/me/km/snuviscript/commands/DamageCommands.java

@@ -5,21 +5,31 @@ import net.minecraft.entity.Entity;
 import net.minecraft.entity.LivingEntity;
 import net.minecraft.entity.player.PlayerEntity;
 import net.minecraft.util.DamageSource;
-import net.minecraftforge.registries.ForgeRegistries;
 
 public class DamageCommands {
     public static void registerFunctions(ScriptManager sm) {
-        sm.registerFunction("damage.getimmediatesource", (sc, in) -> ((DamageSource) in[0].get(sc)).getImmediateSource());
-        sm.registerFunction("damage.gettruesource", (sc, in) -> ((DamageSource) in[0].get(sc)).getTrueSource());
-        sm.registerFunction("damage.iscreativeplayer", (sc, in) -> ((DamageSource) in[0].get(sc)).isCreativePlayer());
-        sm.registerFunction("damage.isabsolute", (sc, in) -> ((DamageSource) in[0].get(sc)).isDamageAbsolute());
-        sm.registerFunction("damage.isdifficultyscaled", (sc, in) -> ((DamageSource) in[0].get(sc)).isDifficultyScaled());
-        sm.registerFunction("damage.isexplosion", (sc, in) -> ((DamageSource) in[0].get(sc)).isExplosion());
-        sm.registerFunction("damage.isfire", (sc, in) -> ((DamageSource) in[0].get(sc)).isFireDamage());
-        sm.registerFunction("damage.ismagic", (sc, in) -> ((DamageSource) in[0].get(sc)).isMagicDamage());
-        sm.registerFunction("damage.isprojectile", (sc, in) -> ((DamageSource) in[0].get(sc)).isProjectile());
-        sm.registerFunction("damage.isunblockable", (sc, in) -> ((DamageSource) in[0].get(sc)).isUnblockable());
-        sm.registerFunction("damage.gettype", (sc, in) -> ((DamageSource) in[0].get(sc)).getDamageType());
+        sm.registerFunction("damage.getimmediatesource",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).getImmediateSource());
+        sm.registerFunction("damage.gettruesource",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).getTrueSource());
+        sm.registerFunction("damage.iscreativeplayer",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isCreativePlayer());
+        sm.registerFunction("damage.isabsolute",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isDamageAbsolute());
+        sm.registerFunction("damage.isdifficultyscaled",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isDifficultyScaled());
+        sm.registerFunction("damage.isexplosion",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isExplosion());
+        sm.registerFunction("damage.isfire",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isFireDamage());
+        sm.registerFunction("damage.ismagic",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isMagicDamage());
+        sm.registerFunction("damage.isprojectile",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isProjectile());
+        sm.registerFunction("damage.isunblockable",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).isUnblockable());
+        sm.registerFunction("damage.gettype",
+                (sc, in) -> ((DamageSource) in[0].get(sc)).getDamageType());
         sm.registerFunction("damage.get", (sc, in) -> {
             Object o = in[0].get(sc);
             if(o instanceof LivingEntity) {
@@ -55,7 +65,7 @@ public class DamageCommands {
                 return ds;
             }
 
-            switch(o.toString()) {
+            switch (o.toString()) {
                 case "inFire":
                     return DamageSource.IN_FIRE;
                 case "lightningBolt":

+ 12 - 5
src/main/java/me/km/snuviscript/commands/EnchantmentCommands.java

@@ -17,14 +17,18 @@ import net.minecraft.util.ResourceLocation;
 import net.minecraftforge.registries.ForgeRegistries;
 
 public class EnchantmentCommands {
+    @SuppressWarnings("unchecked")
     public static void registerFunctions(ScriptManager sm) {
-        sm.registerFunction("enchantment.get", (sc, in) -> Mapper.getEnchantment(in[0].getString(sc)));
+        sm.registerFunction("enchantment.get",
+                (sc, in) -> Mapper.getEnchantment(in[0].getString(sc)));
         sm.registerFunction("enchantment.add", (sc, in) -> {
-            ((ItemStack) in[1].get(sc)).addEnchantment((Enchantment) in[0].get(sc), in[2].getInt(sc));
+            ((ItemStack) in[1].get(sc)).addEnchantment((Enchantment) in[0].get(sc),
+                    in[2].getInt(sc));
             return true;
         });
         sm.registerFunction("enchantment.getlevel", (sc, in) -> {
-            return (double) EnchantmentHelper.getEnchantmentLevel((Enchantment) in[0].get(sc), (ItemStack) in[1].get(sc));
+            return (double) EnchantmentHelper.getEnchantmentLevel((Enchantment) in[0].get(sc),
+                    (ItemStack) in[1].get(sc));
         });
         sm.registerFunction("enchantment.readfromitem", (sc, in) -> {
             return getEnchantments((ItemStack) in[0].get(sc));
@@ -35,7 +39,9 @@ public class EnchantmentCommands {
     }
 
     private static Map<Enchantment, Double> getEnchantments(ItemStack stack) {
-        ListNBT listnbt = stack.getItem() == Items.ENCHANTED_BOOK ? EnchantedBookItem.getEnchantments(stack) : stack.getEnchantmentTagList();
+        ListNBT listnbt =
+                stack.getItem() == Items.ENCHANTED_BOOK ? EnchantedBookItem.getEnchantments(stack)
+                        : stack.getEnchantmentTagList();
         return listToMap(listnbt);
     }
 
@@ -43,7 +49,8 @@ public class EnchantmentCommands {
         Map<Enchantment, Double> map = new LinkedHashMap<>();
         for(int i = 0; i < list.size(); ++i) {
             CompoundNBT c = list.getCompound(i);
-            Enchantment ench = ForgeRegistries.ENCHANTMENTS.getValue(ResourceLocation.tryCreate(c.getString("id")));
+            Enchantment ench = ForgeRegistries.ENCHANTMENTS
+                    .getValue(ResourceLocation.tryCreate(c.getString("id")));
             if(ench != null) {
                 map.put(ench, (double) c.getInt("lvl"));
             }

+ 81 - 40
src/main/java/me/km/snuviscript/commands/EntityCommands.java

@@ -33,17 +33,28 @@ import net.minecraft.world.World;
 import net.minecraft.world.server.ServerWorld;
 
 public class EntityCommands {
+    @SuppressWarnings("unchecked")
     public static void registerFunctions(ScriptManager sm, SnuviScheduler scheduler) {
         sm.registerConsumer("entity.setnopickup", (sc, in) -> {
-            ((AbstractArrowEntity) in[0].get(sc)).pickupStatus = AbstractArrowEntity.PickupStatus.DISALLOWED;
+            ((AbstractArrowEntity) in[0].get(sc)).pickupStatus =
+                    AbstractArrowEntity.PickupStatus.DISALLOWED;
         });
-        sm.registerFunction("entity.shootprojectile", (sc, in) -> launchProjectile((LivingEntity) in[0].get(sc),
-                getNamedClass(in[1].getString(sc)), in[2].getDouble(sc), in.length >= 4 ? in[3].get(sc) : null));
-        sm.registerFunction("entity.isblocking", (sc, in) -> ((LivingEntity) in[0].get(sc)).isActiveItemStackBlocking());
-        sm.registerFunction("entity.getarmorthoughness", (sc, in) -> ((LivingEntity) in[0].get(sc)).getAttribute(Attributes.ARMOR_TOUGHNESS).getValue());
-        sm.registerFunction("entity.getarmor", (sc, in) -> (double) ((LivingEntity) in[0].get(sc)).getTotalArmorValue());
-        sm.registerFunction("entity.getenchantmentmodifier", (sc, in) -> EnchantmentHelper.getEnchantmentModifierDamage(((LivingEntity) in[0].get(sc)).getArmorInventoryList(), (DamageSource) in[1].get(sc)));
-        sm.registerConsumer("entity.setburning", (sc, in) -> ((Entity) in[0].get(sc)).forceFireTicks(in[1].getInt(sc)));
+        sm.registerFunction("entity.shootprojectile",
+                (sc, in) -> launchProjectile((LivingEntity) in[0].get(sc),
+                        getNamedClass(in[1].getString(sc)), in[2].getDouble(sc),
+                        in.length >= 4 ? in[3].get(sc) : null));
+        sm.registerFunction("entity.isblocking",
+                (sc, in) -> ((LivingEntity) in[0].get(sc)).isActiveItemStackBlocking());
+        sm.registerFunction("entity.getarmorthoughness", (sc, in) -> ((LivingEntity) in[0].get(sc))
+                .getAttribute(Attributes.ARMOR_TOUGHNESS).getValue());
+        sm.registerFunction("entity.getarmor",
+                (sc, in) -> (double) ((LivingEntity) in[0].get(sc)).getTotalArmorValue());
+        sm.registerFunction("entity.getenchantmentmodifier",
+                (sc, in) -> EnchantmentHelper.getEnchantmentModifierDamage(
+                        ((LivingEntity) in[0].get(sc)).getArmorInventoryList(),
+                        (DamageSource) in[1].get(sc)));
+        sm.registerConsumer("entity.setburning",
+                (sc, in) -> ((Entity) in[0].get(sc)).forceFireTicks(in[1].getInt(sc)));
         sm.registerFunction("entity.isburning", (sc, in) -> ((Entity) in[0].get(sc)).isBurning());
         sm.registerFunction("entity.getlook", (sc, in) -> {
             Object[] o = new Object[3];
@@ -62,7 +73,8 @@ public class EntityCommands {
         sm.registerConsumer("entity.damage", (sc, in) -> {
             LivingEntity liv = (LivingEntity) in[0].get(sc);
             float damage = in[1].getFloat(sc);
-            DamageSource damageSource = (in.length >= 3) ? (DamageSource) in[2].get(sc) : DamageSource.GENERIC;
+            DamageSource damageSource =
+                    (in.length >= 3) ? (DamageSource) in[2].get(sc) : DamageSource.GENERIC;
             scheduler.scheduleTask(() -> liv.attackEntityFrom(damageSource, damage));
         });
         sm.registerFunction("entity.fromsource", (sc, in) -> {
@@ -74,9 +86,12 @@ public class EntityCommands {
             return ent;
         });
         sm.registerAlias("damage.get", "entity.getdamagesource");
-        sm.registerFunction("entity.getmaxhealth", (sc, in) -> (double) ((LivingEntity) in[0].get(sc)).getMaxHealth());
-        sm.registerFunction("entity.gethealth", (sc, in) -> (double) ((LivingEntity) in[0].get(sc)).getHealth());
-        sm.registerConsumer("entity.sethealth", (sc, in) -> ((LivingEntity) in[0].get(sc)).setHealth(in[1].getFloat(sc)));
+        sm.registerFunction("entity.getmaxhealth",
+                (sc, in) -> (double) ((LivingEntity) in[0].get(sc)).getMaxHealth());
+        sm.registerFunction("entity.gethealth",
+                (sc, in) -> (double) ((LivingEntity) in[0].get(sc)).getHealth());
+        sm.registerConsumer("entity.sethealth",
+                (sc, in) -> ((LivingEntity) in[0].get(sc)).setHealth(in[1].getFloat(sc)));
         sm.registerConsumer("entity.setname", (sc, in) -> {
             Entity ent = (Entity) in[0].get(sc);
             ent.setCustomName(new StringTextComponent(in[1].getString(sc)));
@@ -86,7 +101,8 @@ public class EntityCommands {
             }
             ent.setCustomNameVisible(false);
         });
-        sm.registerFunction("entity.getname", (sc, in) -> ((Entity) in[0].get(sc)).getDisplayName().getString());
+        sm.registerFunction("entity.getname",
+                (sc, in) -> ((Entity) in[0].get(sc)).getDisplayName().getString());
         sm.registerConsumer("entity.throw", (sc, in) -> {
             Entity ent = (Entity) in[0].get(sc);
             ent.setMotion(in[1].getDouble(sc), in[2].getDouble(sc), in[3].getDouble(sc));
@@ -122,7 +138,7 @@ public class EntityCommands {
         sm.registerConsumer("entity.setequip", (sc, in) -> {
             LivingEntity liv = (LivingEntity) in[0].get(sc);
             ItemStack stack = ((ItemStack) in[2].get(sc)).copy();
-            switch(in[1].getString(sc)) {
+            switch (in[1].getString(sc)) {
                 case "hand":
                     liv.setItemStackToSlot(EquipmentSlotType.MAINHAND, stack);
                     return;
@@ -144,7 +160,7 @@ public class EntityCommands {
         });
         sm.registerFunction("entity.getequip", (sc, in) -> {
             LivingEntity liv = (LivingEntity) in[0].get(sc);
-            switch(in[1].getString(sc)) {
+            switch (in[1].getString(sc)) {
                 case "hand":
                     return liv.getItemStackFromSlot(EquipmentSlotType.MAINHAND);
                 case "head":
@@ -161,14 +177,16 @@ public class EntityCommands {
             return ItemStack.EMPTY;
         });
         sm.registerConsumer("entity.removeall", (sc, in) -> {
-            Class<? extends Entity> c = (Class<? extends Entity>) getNamedClass(in[0].getString(sc));
+            Class<? extends Entity> c =
+                    (Class<? extends Entity>) getNamedClass(in[0].getString(sc));
             if(c == Entity.class) {
                 return;
             }
             Location l = (Location) in[1].get(sc);
-            Utils.getEntities(l.getWorld(), l.getX(), l.getY(), l.getZ(), in[2].getDouble(sc), c).stream().forEach(ent -> {
-                ent.remove();
-            });
+            Utils.getEntities(l.getWorld(), l.getX(), l.getY(), l.getZ(), in[2].getDouble(sc), c)
+                    .stream().forEach(ent -> {
+                        ent.remove();
+                    });
         });
         sm.registerConsumer("entity.remove", (sc, in) -> ((Entity) in[0].get(sc)).remove());
         sm.registerConsumer("entity.setinvulnerable", (sc, in) -> {
@@ -196,27 +214,34 @@ public class EntityCommands {
                 base.removePotionEffect(potion);
             }
             boolean showParticles = in.length >= 5 ? in[4].getBoolean(sc) : true;
-            base.addPotionEffect(new EffectInstance(potion, in[2].getInt(sc), in[3].getInt(sc), false, showParticles));
+            base.addPotionEffect(new EffectInstance(potion, in[2].getInt(sc), in[3].getInt(sc),
+                    false, showParticles));
         });
         sm.registerConsumer("entity.cleareffects", (sc, in) -> {
             ((LivingEntity) in[0].get(sc)).clearActivePotions();
         });
         sm.registerFunction("entity.geteffectamplifier", (sc, in) -> {
-            EffectInstance effect = ((LivingEntity) in[0].get(sc)).getActivePotionEffect(Mapper.getPotion(in[1].getString(sc)));
+            EffectInstance effect = ((LivingEntity) in[0].get(sc))
+                    .getActivePotionEffect(Mapper.getPotion(in[1].getString(sc)));
             return effect == null ? 0 : effect.getAmplifier() + 1;
         });
         sm.registerConsumer("entity.spawnitemframe", (sc, in) -> {
             Location l = ((Location) in[0].get(sc));
-            ItemFrameEntity frame = new ItemFrameEntity(l.getWorld(), l.getBlockPos(), Direction.byName(in[1].getString(sc)));
+            ItemFrameEntity frame = new ItemFrameEntity(l.getWorld(), l.getBlockPos(),
+                    Direction.byName(in[1].getString(sc)));
             frame.setDisplayedItem(((ItemStack) in[2].get(sc))); // copy happens in internals
             l.getWorld().addEntity(frame);
         });
-        sm.registerFunction("entity.getitemfromframe", (sc, in) -> ((ItemFrameEntity) in[0].get(sc)).getDisplayedItem());
+        sm.registerFunction("entity.getitemfromframe",
+                (sc, in) -> ((ItemFrameEntity) in[0].get(sc)).getDisplayedItem());
         sm.registerFunction("entity.get", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
-            return Utils.getEntity(l.getWorld(), l.getX(), l.getY(), l.getZ(), in[1].getDouble(sc), getNamedClass(in[2].getString(sc)));
+            return Utils.getEntity(l.getWorld(), l.getX(), l.getY(), l.getZ(), in[1].getDouble(sc),
+                    (Class<? extends Entity>) getNamedClass(in[2].getString(sc)));
         });
-        sm.registerFunction("entity.getpotiontype", (sc, in) -> PotionUtils.getPotionFromItem(((PotionEntity) in[0].get(sc)).getItem()).getRegistryName().toString());
+        sm.registerFunction("entity.getpotiontype",
+                (sc, in) -> PotionUtils.getPotionFromItem(((PotionEntity) in[0].get(sc)).getItem())
+                        .getRegistryName().toString());
         sm.registerConsumer("entity.setgravity", (sc, in) -> {
             ((Entity) in[0].get(sc)).setNoGravity(!in[1].getBoolean(sc));
         });
@@ -230,18 +255,21 @@ public class EntityCommands {
             if(!World.isInvalidPosition(l.getBlockPos())) {
                 return null;
             }
-            CompoundNBT nbt = in.length >= 3 ? JsonToNBT.getTagFromJson(in[2].getString(sc)) : new CompoundNBT();
+            CompoundNBT nbt = in.length >= 3 ? JsonToNBT.getTagFromJson(in[2].getString(sc))
+                    : new CompoundNBT();
             nbt.putString("id", type.toString());
             ServerWorld sw = (ServerWorld) l.getWorld();
             Entity ent = EntityType.loadEntityAndExecute(nbt, sw, (e) -> {
-                e.setLocationAndAngles(l.getX(), l.getY(), l.getZ(), e.rotationYaw, e.rotationPitch);
+                e.setLocationAndAngles(l.getX(), l.getY(), l.getZ(), e.rotationYaw,
+                        e.rotationPitch);
                 return e;
             });
             if(ent == null) {
                 return ent;
             }
             if(ent instanceof MobEntity) {
-                ((MobEntity) ent).onInitialSpawn(sw, sw.getDifficultyForLocation(ent.getPosition()), SpawnReason.COMMAND, null, null);
+                ((MobEntity) ent).onInitialSpawn(sw, sw.getDifficultyForLocation(ent.getPosition()),
+                        SpawnReason.COMMAND, null, null);
             }
             if(!sw.func_242106_g(ent)) {
                 return null;
@@ -256,17 +284,24 @@ public class EntityCommands {
             return Utils.getEntities((Entity) o, in[1].getDouble(sc));
         });
         sm.registerConsumer("entity.setspeed", (sc, in) -> {
-            ((LivingEntity) in[0].get(sc)).getAttribute(Attributes.MOVEMENT_SPEED).setBaseValue(in[1].getDouble(sc));
+            ((LivingEntity) in[0].get(sc)).getAttribute(Attributes.MOVEMENT_SPEED)
+                    .setBaseValue(in[1].getDouble(sc));
         });
         sm.registerConsumer("entity.setgrowingage", (sc, in) -> {
             ((AgeableEntity) in[0].get(sc)).setGrowingAge(in[1].getInt(sc));
         });
-        sm.registerFunction("entity.gettype", (sc, in) -> ((Entity) in[0].get(sc)).getType().getRegistryName().getPath());
-        sm.registerFunction("entity.issneaking", (sc, in) -> ((Entity) in[0].get(sc)).isCrouching());
-        sm.registerFunction("entity.issneaking", (sc, in) -> ((Entity) in[0].get(sc)).isCrouching());
-        sm.registerFunction("sheep.issheared", (sc, in) -> ((SheepEntity) in[0].get(sc)).getSheared());
-        sm.registerFunction("sheep.getcolor", (sc, in) -> ((SheepEntity) in[0].get(sc)).getFleeceColor().toString());
-        sm.registerConsumer("creeper.explode", (sc, in) -> ((CreeperEntity) in[0].get(sc)).ignite());
+        sm.registerFunction("entity.gettype",
+                (sc, in) -> ((Entity) in[0].get(sc)).getType().getRegistryName().getPath());
+        sm.registerFunction("entity.issneaking",
+                (sc, in) -> ((Entity) in[0].get(sc)).isCrouching());
+        sm.registerFunction("entity.issneaking",
+                (sc, in) -> ((Entity) in[0].get(sc)).isCrouching());
+        sm.registerFunction("sheep.issheared",
+                (sc, in) -> ((SheepEntity) in[0].get(sc)).getSheared());
+        sm.registerFunction("sheep.getcolor",
+                (sc, in) -> ((SheepEntity) in[0].get(sc)).getFleeceColor().toString());
+        sm.registerConsumer("creeper.explode",
+                (sc, in) -> ((CreeperEntity) in[0].get(sc)).ignite());
         sm.registerFunction("pet.istamed", (sc, in) -> ((TameableEntity) in[0].get(sc)).isTamed());
         sm.registerConsumer("pet.settamed", (sc, in) -> {
             TameableEntity t = (TameableEntity) in[0].get(sc);
@@ -276,10 +311,13 @@ public class EntityCommands {
             }
             t.setTamed(b);
         });
-        sm.registerFunction("pet.getowner", (sc, in) -> ((TameableEntity) in[0].get(sc)).getOwner());
+        sm.registerFunction("pet.getowner",
+                (sc, in) -> ((TameableEntity) in[0].get(sc)).getOwner());
     }
 
-    private static <T> T launchProjectile(LivingEntity liv, Class<? extends T> projectile, double scale, Object data) {
+    @SuppressWarnings("unchecked")
+    private static <T> T launchProjectile(LivingEntity liv, Class<? extends T> projectile,
+            double scale, Object data) {
         World w = liv.world;
         Entity launch = null;
 
@@ -292,7 +330,8 @@ public class EntityCommands {
                 throw new IllegalArgumentException("Empty ItemStack not allowed here");
             }
             launch = new EntityItemProjectile(liv, stack.copy());
-            ((EntityItemProjectile) launch).setHeadingFromThrower(liv, liv.rotationPitch, liv.rotationYaw, 0.0f, 1.5f, 1.0f);
+            ((EntityItemProjectile) launch).setHeadingFromThrower(liv, liv.rotationPitch,
+                    liv.rotationYaw, 0.0f, 1.5f, 1.0f);
         } else if(SnowballEntity.class == projectile) {
             launch = new SnowballEntity(w, liv);
             ((SnowballEntity) launch).shoot(liv.rotationPitch, liv.rotationYaw, 0.0f, 1.5f, 1.0f);
@@ -308,7 +347,8 @@ public class EntityCommands {
             ((PotionEntity) launch).shoot(liv.rotationPitch, liv.rotationYaw, -20.0f, 0.5f, 1.0f);
         } else if(ExperienceBottleEntity.class == projectile) {
             launch = new ExperienceBottleEntity(w, liv);
-            ((ExperienceBottleEntity) launch).shoot(liv.rotationPitch, liv.rotationYaw, -20.0f, 0.7f, 1.0f);
+            ((ExperienceBottleEntity) launch).shoot(liv.rotationPitch, liv.rotationYaw, -20.0f,
+                    0.7f, 1.0f);
         } else if(AbstractArrowEntity.class.isAssignableFrom(projectile)) {
             if(SpectralArrowEntity.class == projectile) {
                 launch = new SpectralArrowEntity(w, liv);
@@ -318,7 +358,8 @@ public class EntityCommands {
                     ((ArrowEntity) launch).setPotionEffect((ItemStack) data);
                 }
             }
-            ((AbstractArrowEntity) launch).shoot(liv.rotationPitch, liv.rotationYaw, 0.0F, 3.0F, 1.0F);
+            ((AbstractArrowEntity) launch).shoot(liv.rotationPitch, liv.rotationYaw, 0.0F, 3.0F,
+                    1.0F);
         } else if(DamagingProjectileEntity.class.isAssignableFrom(projectile)) {
             Vector3d v = liv.getLookVec().scale(10);
             if(SmallFireballEntity.class == projectile) {

+ 7 - 6
src/main/java/me/km/snuviscript/commands/GameRuleCommands.java

@@ -8,16 +8,16 @@ import net.minecraft.world.GameRules.RuleKey;
 import net.minecraft.world.World;
 
 public class GameRuleCommands {
-    private static GameRules.RuleKey ruleKey = null;
-    
-    @SuppressWarnings("")
+    private static GameRules.RuleKey<?> ruleKey = null;
+
     public static void registerFunctions(ScriptManager sm, MinecraftServer server) {
         sm.registerFunction("gamerule.getkey", (sc, in) -> {
             String name = in[0].getString(sc);
             ruleKey = null;
             GameRules.visitAll(new GameRules.IRuleEntryVisitor() {
                 @Override
-                public <T extends GameRules.RuleValue<T>> void visit(GameRules.RuleKey<T> key, GameRules.RuleType<T> type) {
+                public <T extends GameRules.RuleValue<T>> void visit(GameRules.RuleKey<T> key,
+                        GameRules.RuleType<T> type) {
                     if(key.getName().equals(name)) {
                         ruleKey = key;
                     }
@@ -26,7 +26,7 @@ public class GameRuleCommands {
             return ruleKey;
         });
         sm.registerFunction("gamerule.getvalue", (sc, in) -> {
-            return ((World) in[0].get(sc)).getGameRules().get((RuleKey) in[1].get(sc));
+            return ((World) in[0].get(sc)).getGameRules().get((RuleKey<?>) in[1].get(sc));
         });
         sm.registerFunction("gamerule.isbool", (sc, in) -> {
             return in[0].get(sc) instanceof GameRules.BooleanValue;
@@ -44,7 +44,8 @@ public class GameRuleCommands {
             ((GameRules.BooleanValue) in[0].get(sc)).set(in[1].getBoolean(sc), server);
         });
         sm.registerConsumer("gamerule.setint", (sc, in) -> {
-            ReflectionUtils.setIntegerValue((GameRules.IntegerValue) in[0].get(sc), in[1].getInt(sc));
+            ReflectionUtils.setIntegerValue((GameRules.IntegerValue) in[0].get(sc),
+                    in[1].getInt(sc));
         });
     }
 }

+ 38 - 21
src/main/java/me/km/snuviscript/commands/ItemCommands.java

@@ -9,7 +9,6 @@ import me.km.utils.Mapper;
 import net.minecraft.block.Block;
 import net.minecraft.entity.ai.attributes.Attribute;
 import net.minecraft.entity.ai.attributes.AttributeModifier;
-import net.minecraft.entity.ai.attributes.Attributes;
 import net.minecraft.entity.player.PlayerEntity;
 import net.minecraft.inventory.EquipmentSlotType;
 import net.minecraft.item.Item;
@@ -26,7 +25,7 @@ import net.minecraft.world.World;
 import net.minecraftforge.registries.ForgeRegistries;
 
 public class ItemCommands {
-
+    @SuppressWarnings("unchecked")
     public static void registerFunctions(ScriptManager sm) {
         sm.registerConsumer("item.drop", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
@@ -44,38 +43,52 @@ public class ItemCommands {
                 Block.spawnAsEntity(w, pos, stack);
             }
         });
-        sm.registerFunction("item.gettag", (sc, in) -> ItemTags.getCollection().get(new ResourceLocation(in[0].getString(sc))));
-        sm.registerFunction("item.hastag", (sc, in) -> ((Tag<Item>) in[0].get(sc)).contains(((ItemStack) in[1].get(sc)).getItem()));
+        sm.registerFunction("item.gettag", (sc, in) -> ItemTags.getCollection()
+                .get(new ResourceLocation(in[0].getString(sc))));
+        sm.registerFunction("item.hastag", (sc, in) -> ((Tag<Item>) in[0].get(sc))
+                .contains(((ItemStack) in[1].get(sc)).getItem()));
         sm.registerFunction("item.get", (sc, in) -> ((ItemStack) in[0].get(sc)).getItem());
-        sm.registerFunction("item.gettype", (sc, in) -> ((ItemStack) in[0].get(sc)).getItem().getRegistryName().toString());
-        sm.registerFunction("item.getmaxamount", (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getMaxStackSize());
-        sm.registerFunction("item.getamount", (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getCount());
-        sm.registerConsumer("item.setamount", (sc, in) -> ((ItemStack) in[0].get(sc)).setCount(in[1].getInt(sc)));
-        sm.registerFunction("item.getfulltext", (sc, in) -> ((ItemStack) in[0].get(sc)).getTextComponent());
-        sm.registerFunction("item.hasname", (sc, in) -> ((ItemStack) in[0].get(sc)).hasDisplayName());
-        sm.registerFunction("item.getname", (sc, in) -> ((ItemStack) in[0].get(sc)).getDisplayName().getString());
+        sm.registerFunction("item.gettype",
+                (sc, in) -> ((ItemStack) in[0].get(sc)).getItem().getRegistryName().toString());
+        sm.registerFunction("item.getmaxamount",
+                (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getMaxStackSize());
+        sm.registerFunction("item.getamount",
+                (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getCount());
+        sm.registerConsumer("item.setamount",
+                (sc, in) -> ((ItemStack) in[0].get(sc)).setCount(in[1].getInt(sc)));
+        sm.registerFunction("item.getfulltext",
+                (sc, in) -> ((ItemStack) in[0].get(sc)).getTextComponent());
+        sm.registerFunction("item.hasname",
+                (sc, in) -> ((ItemStack) in[0].get(sc)).hasDisplayName());
+        sm.registerFunction("item.getname",
+                (sc, in) -> ((ItemStack) in[0].get(sc)).getDisplayName().getString());
         sm.registerConsumer("item.setname", (sc, in) -> {
-            ((ItemStack) in[0].get(sc)).setDisplayName(new StringTextComponent(SnuviUtils.connect(sc, in, 1)));
+            ((ItemStack) in[0].get(sc))
+                    .setDisplayName(new StringTextComponent(SnuviUtils.connect(sc, in, 1)));
         });
-        sm.registerFunction("item.getlore", (sc, in) -> ItemStackUtils.getLore((ItemStack) in[0].get(sc)));
+        sm.registerFunction("item.getlore",
+                (sc, in) -> ItemStackUtils.getLore((ItemStack) in[0].get(sc)));
         sm.registerConsumer("item.setlore", (sc, in) -> {
             ItemStackUtils.setLore((ItemStack) in[0].get(sc), (List<Object>) in[1].get(sc));
         });
         sm.registerConsumer("item.addlore", (sc, in) -> {
-            ItemStackUtils.addLore((ItemStack) in[0].get(sc), SnuviUtils.connect(sc, in, 2), in[1].getInt(sc));
+            ItemStackUtils.addLore((ItemStack) in[0].get(sc), SnuviUtils.connect(sc, in, 2),
+                    in[1].getInt(sc));
         });
         sm.registerConsumer("item.setcooldown", (sc, in) -> {
-            ((PlayerEntity) in[0].get(sc)).getCooldownTracker().setCooldown(((ItemStack) in[1].get(sc)).getItem(), in[2].getInt(sc));
+            ((PlayerEntity) in[0].get(sc)).getCooldownTracker()
+                    .setCooldown(((ItemStack) in[1].get(sc)).getItem(), in[2].getInt(sc));
         });
         sm.registerConsumer("item.addpotion", (sc, in) -> {
             ItemStack stack = (ItemStack) in[0].get(sc);
             List<EffectInstance> list = PotionUtils.getEffectsFromStack(stack);
-            list.add(new EffectInstance(Mapper.getPotion(in[1].getString(sc)), in[2].getInt(sc), in[3].getInt(sc)));
+            list.add(new EffectInstance(Mapper.getPotion(in[1].getString(sc)), in[2].getInt(sc),
+                    in[3].getInt(sc)));
             PotionUtils.appendEffects(stack, list);
         });
         sm.registerFunction("item.hide", (sc, in) -> {
             int flag = 0;
-            switch(in[1].getString(sc)) {
+            switch (in[1].getString(sc)) {
                 case "enchantments":
                     flag = 1;
                     break;
@@ -105,16 +118,20 @@ public class ItemCommands {
             return true;
         });
         sm.registerConsumer("item.addattribute", (sc, in) -> {
-            Attribute a = ForgeRegistries.ATTRIBUTES.getValue(new ResourceLocation(in[1].getString(sc)));
+            Attribute a =
+                    ForgeRegistries.ATTRIBUTES.getValue(new ResourceLocation(in[1].getString(sc)));
             ((ItemStack) in[0].get(sc)).addAttributeModifier(a,
                     new AttributeModifier("modifier", in[3].getDouble(sc),
                             AttributeModifier.Operation.values()[in[4].getInt(sc)]),
                     (EquipmentSlotType) in[2].get(sc));
         });
         sm.registerFunction("item.clone", (sc, in) -> ((ItemStack) in[0].get(sc)).copy());
-        sm.registerFunction("item.getmaxdamage", (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getMaxDamage());
-        sm.registerFunction("item.isdamageable", (sc, in) -> ((ItemStack) in[0].get(sc)).isDamageable());
-        sm.registerFunction("item.getdamage", (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getDamage());
+        sm.registerFunction("item.getmaxdamage",
+                (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getMaxDamage());
+        sm.registerFunction("item.isdamageable",
+                (sc, in) -> ((ItemStack) in[0].get(sc)).isDamageable());
+        sm.registerFunction("item.getdamage",
+                (sc, in) -> (double) ((ItemStack) in[0].get(sc)).getDamage());
         sm.registerConsumer("item.setdamage", (sc, in) -> {
             ((ItemStack) in[0].get(sc)).setDamage(in[1].getInt(sc));
         });

+ 1 - 1
src/main/java/me/km/snuviscript/commands/LimitCommands.java

@@ -17,7 +17,7 @@ public class LimitCommands {
         });
     }
 
-    private static EntityType getType(String type) {
+    private static EntityType<?> getType(String type) {
         return EntityType.byKey(type).get();
     }
 }

+ 12 - 7
src/main/java/me/km/snuviscript/commands/LivingCommands.java

@@ -11,7 +11,6 @@ import net.minecraft.entity.MobEntity;
 import net.minecraft.entity.ai.attributes.Attribute;
 import net.minecraft.entity.ai.attributes.AttributeModifier;
 import net.minecraft.entity.ai.attributes.ModifiableAttributeInstance;
-import net.minecraft.entity.player.PlayerEntity;
 import net.minecraftforge.registries.ForgeRegistries;
 
 public class LivingCommands {
@@ -30,31 +29,37 @@ public class LivingCommands {
         for(Attribute attribute : ForgeRegistries.ATTRIBUTES.getValues()) {
             String name = getName(attribute);
             sm.registerConsumer("living.set" + name, (sc, in) -> {
-                ModifiableAttributeInstance a = ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
+                ModifiableAttributeInstance a =
+                        ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
                 if(a == null) {
                     return;
                 }
                 double amount = in[1].getDouble(sc) - a.getBaseValue();
                 UUID uuid = new UUID(name.length(), name.hashCode());
                 a.removeModifier(uuid);
-                a.applyNonPersistentModifier(new AttributeModifier(uuid, name, amount, AttributeModifier.Operation.ADDITION));
+                a.applyNonPersistentModifier(new AttributeModifier(uuid, name, amount,
+                        AttributeModifier.Operation.ADDITION));
             });
             sm.registerConsumer("living.setpersistent" + name, (sc, in) -> {
-                ModifiableAttributeInstance a = ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
+                ModifiableAttributeInstance a =
+                        ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
                 if(a == null) {
                     return;
                 }
                 double amount = in[1].getDouble(sc) - a.getBaseValue();
                 UUID uuid = new UUID(name.length(), name.hashCode());
                 a.removeModifier(uuid);
-                a.applyPersistentModifier(new AttributeModifier(uuid, name, amount, AttributeModifier.Operation.ADDITION));
+                a.applyPersistentModifier(new AttributeModifier(uuid, name, amount,
+                        AttributeModifier.Operation.ADDITION));
             });
             sm.registerFunction("living.get" + name, (sc, in) -> {
-                ModifiableAttributeInstance a = ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
+                ModifiableAttributeInstance a =
+                        ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
                 return a == null ? null : a.getValue();
             });
             sm.registerFunction("living.getbase" + name, (sc, in) -> {
-                ModifiableAttributeInstance a = ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
+                ModifiableAttributeInstance a =
+                        ((LivingEntity) in[0].get(sc)).getAttribute(attribute);
                 return a == null ? null : a.getBaseValue();
             });
         }

+ 18 - 10
src/main/java/me/km/snuviscript/commands/ParticleCommands.java

@@ -4,7 +4,6 @@ import java.util.ArrayList;
 import me.hammerle.snuviscript.code.ScriptManager;
 import me.km.utils.Location;
 import me.km.utils.Mapper;
-import net.minecraft.entity.player.PlayerEntity;
 import net.minecraft.entity.player.ServerPlayerEntity;
 import net.minecraft.item.ItemStack;
 import net.minecraft.particles.*;
@@ -12,16 +11,21 @@ import net.minecraft.world.server.ServerWorld;
 import net.minecraftforge.registries.ForgeRegistries;
 
 public class ParticleCommands {
+    @SuppressWarnings("unchecked")
     public static void registerFunctions(ScriptManager sm) {
-        sm.registerFunction("particle.getall", (sc, in) -> new ArrayList<>(ForgeRegistries.PARTICLE_TYPES.getValues()));
+        sm.registerFunction("particle.getall",
+                (sc, in) -> new ArrayList<>(ForgeRegistries.PARTICLE_TYPES.getValues()));
         sm.registerFunction("particle.get", (sc, in) -> {
-            ParticleType data = Mapper.getParticle(in[0].getString(sc));
+            ParticleType<?> data = Mapper.getParticle(in[0].getString(sc));
             if(data == ParticleTypes.BLOCK || data == ParticleTypes.FALLING_DUST) {
-                return new BlockParticleData((ParticleType<BlockParticleData>) data, Mapper.getBlock(in[1].getString(sc)).getDefaultState());
+                return new BlockParticleData((ParticleType<BlockParticleData>) data,
+                        Mapper.getBlock(in[1].getString(sc)).getDefaultState());
             } else if(data == ParticleTypes.DUST) {
-                return new RedstoneParticleData(in[1].getFloat(sc), in[2].getFloat(sc), in[3].getFloat(sc), in[4].getFloat(sc));
+                return new RedstoneParticleData(in[1].getFloat(sc), in[2].getFloat(sc),
+                        in[3].getFloat(sc), in[4].getFloat(sc));
             } else if(data == ParticleTypes.ITEM) {
-                return new ItemParticleData((ParticleType<ItemParticleData>) data, new ItemStack(Mapper.getItem(in[1].getString(sc))));
+                return new ItemParticleData((ParticleType<ItemParticleData>) data,
+                        new ItemStack(Mapper.getItem(in[1].getString(sc))));
             }
             return data;
         });
@@ -33,7 +37,8 @@ public class ParticleCommands {
             double offX = in.length >= 5 ? in[4].getDouble(sc) : 0.0;
             double offY = in.length >= 6 ? in[5].getDouble(sc) : 0.0;
             double offZ = in.length >= 7 ? in[6].getDouble(sc) : 0.0;
-            ((ServerWorld) l.getWorld()).spawnParticle(data, l.getX(), l.getY(), l.getZ(), count, offX, offY, offZ, speed);
+            ((ServerWorld) l.getWorld()).spawnParticle(data, l.getX(), l.getY(), l.getZ(), count,
+                    offX, offY, offZ, speed);
         });
         sm.registerConsumer("particle.spawnplayer", (sc, in) -> {
             Location l = ((Location) in[0].get(sc));
@@ -44,7 +49,8 @@ public class ParticleCommands {
             double offX = in.length >= 6 ? in[5].getDouble(sc) : 0.0;
             double offY = in.length >= 7 ? in[6].getDouble(sc) : 0.0;
             double offZ = in.length >= 8 ? in[7].getDouble(sc) : 0.0;
-            ((ServerWorld) l.getWorld()).spawnParticle(p, data, true, l.getX(), l.getY(), l.getZ(), count, offX, offY, offZ, speed);
+            ((ServerWorld) l.getWorld()).spawnParticle(p, data, true, l.getX(), l.getY(), l.getZ(),
+                    count, offX, offY, offZ, speed);
         });
         sm.registerConsumer("particle.spawncircle", (sc, in) -> {
             Location l = ((Location) in[0].get(sc));
@@ -62,7 +68,8 @@ public class ParticleCommands {
             ServerWorld sw = (ServerWorld) l.getWorld();
             double angle = 2 * Math.PI / instances;
             for(int i = 0; i < instances; i++) {
-                sw.spawnParticle(data, x + Math.cos(i * angle) * radius, y, z + Math.sin(i * angle) * radius, count, offX, offY, offZ, speed);
+                sw.spawnParticle(data, x + Math.cos(i * angle) * radius, y,
+                        z + Math.sin(i * angle) * radius, count, offX, offY, offZ, speed);
             }
         });
         sm.registerConsumer("particle.spawnline", (sc, in) -> {
@@ -83,7 +90,8 @@ public class ParticleCommands {
             double z = l.getZ();
             ServerWorld sw = (ServerWorld) l.getWorld();
             for(int i = 0; i < instances; i++) {
-                sw.spawnParticle(data, x + i * stepX, y + i * stepY, z + i * stepZ, count, offX, offY, offZ, speed);
+                sw.spawnParticle(data, x + i * stepX, y + i * stepY, z + i * stepZ, count, offX,
+                        offY, offZ, speed);
             }
         });
     }

+ 96 - 52
src/main/java/me/km/snuviscript/commands/PlayerCommands.java

@@ -42,58 +42,71 @@ import net.minecraft.world.World;
 import net.minecraft.world.server.ServerWorld;
 
 public class PlayerCommands {
-
-    public static void registerFunctions(ScriptManager sm, Scripts scripts,
-            Permissions perms, SnuviScheduler scheduler, MinecraftServer server,
-            IPlayerBank playerBank) {
-        sm.registerFunction("player.getitemamount", (sc, in) -> (double) InventoryUtils.searchInventoryFor(((PlayerEntity) in[0].get(sc)).inventory, (ItemStack) in[2].get(sc), in[1].getBoolean(sc)));
+    @SuppressWarnings("unchecked")
+    public static void registerFunctions(ScriptManager sm, Scripts scripts, Permissions perms,
+            SnuviScheduler scheduler, MinecraftServer server, IPlayerBank playerBank) {
+        sm.registerFunction("player.getitemamount",
+                (sc, in) -> (double) InventoryUtils.searchInventoryFor(
+                        ((PlayerEntity) in[0].get(sc)).inventory, (ItemStack) in[2].get(sc),
+                        in[1].getBoolean(sc)));
         sm.registerFunction("player.removeitem", (sc, in) -> {
             ItemStack stack = ((ItemStack) in[1].get(sc)).copy();
-            stack.setCount(InventoryUtils.removeFromInventory(((PlayerEntity) in[0].get(sc)).inventory, stack));
+            stack.setCount(InventoryUtils
+                    .removeFromInventory(((PlayerEntity) in[0].get(sc)).inventory, stack));
             return stack;
         });
         sm.registerFunction("player.giveitem", (sc, in) -> {
             ItemStack stack = ((ItemStack) in[1].get(sc)).copy();
-            stack.setCount(InventoryUtils.addToInventory(((PlayerEntity) in[0].get(sc)).inventory, stack));
+            stack.setCount(
+                    InventoryUtils.addToInventory(((PlayerEntity) in[0].get(sc)).inventory, stack));
             return stack;
         });
         sm.registerConsumer("player.respawn", (sc, in) -> {
             final ServerPlayerEntity p = ((ServerPlayerEntity) in[0].get(sc));
             scheduler.scheduleTask(() -> {
                 try {
-                    p.connection.processClientStatus(new CClientStatusPacket(CClientStatusPacket.State.PERFORM_RESPAWN));
-                } catch(ThreadQuickExitException ex) {
+                    p.connection.processClientStatus(
+                            new CClientStatusPacket(CClientStatusPacket.State.PERFORM_RESPAWN));
+                } catch (ThreadQuickExitException ex) {
                     // Minecraft needs this for canceling and queueing into main thread
                 }
             });
         });
-        sm.registerConsumer("player.clearinventory", (sc, in) -> ((PlayerEntity) in[0].get(sc)).inventory.clear());
-        sm.registerFunction("player.inventorytolist", (sc, in) -> ((PlayerEntity) in[1].get(sc)).inventory.mainInventory);
+        sm.registerConsumer("player.clearinventory",
+                (sc, in) -> ((PlayerEntity) in[0].get(sc)).inventory.clear());
+        sm.registerFunction("player.inventorytolist",
+                (sc, in) -> ((PlayerEntity) in[1].get(sc)).inventory.mainInventory);
         sm.registerFunction("player.getnearest", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
             return l.getWorld().getClosestPlayer(l.getX(), l.getY(), l.getZ(), -1, p -> true);
         });
         sm.registerConsumer("player.say", (sc, in) -> {
             try {
-                ((ServerPlayerEntity) in[0].get(sc)).connection.processChatMessage(new CChatMessagePacket(SnuviUtils.connect(sc, in, 1)));
-            } catch(ThreadQuickExitException ex) {
+                ((ServerPlayerEntity) in[0].get(sc)).connection
+                        .processChatMessage(new CChatMessagePacket(SnuviUtils.connect(sc, in, 1)));
+            } catch (ThreadQuickExitException ex) {
                 // Minecraft needs this for canceling and queueing into main thread
             }
         });
         sm.registerConsumer("player.speak", (sc, in) -> {
-            sendMessageToGroup(server, scripts, perms, in[0].get(sc), sc, concat(sc, 2, "[" + in[1].getString(sc) + "§r] ", in));
+            sendMessageToGroup(server, scripts, perms, in[0].get(sc), sc,
+                    concat(sc, 2, "[" + in[1].getString(sc) + "§r] ", in));
         });
         sm.registerConsumer("player.setcompass", (sc, in) -> {
-            ((ServerPlayerEntity) in[0].get(sc)).connection.sendPacket(new SWorldSpawnChangedPacket(
-                    ((Location) in[1].get(sc)).getBlockPos(), in.length > 2 ? in[2].getFloat(sc) : 0.0f));
+            ((ServerPlayerEntity) in[0].get(sc)).connection.sendPacket(
+                    new SWorldSpawnChangedPacket(((Location) in[1].get(sc)).getBlockPos(),
+                            in.length > 2 ? in[2].getFloat(sc) : 0.0f));
         });
-        sm.registerFunction("player.gethunger", (sc, in) -> (double) ((PlayerEntity) in[0].get(sc)).getFoodStats().getFoodLevel());
+        sm.registerFunction("player.gethunger",
+                (sc, in) -> (double) ((PlayerEntity) in[0].get(sc)).getFoodStats().getFoodLevel());
         sm.registerConsumer("player.sethunger", (sc, in) -> {
             ((PlayerEntity) in[0].get(sc)).getFoodStats().setFoodLevel(in[1].getInt(sc));
         });
-        sm.registerFunction("player.getsaturation", (sc, in) -> (double) ((PlayerEntity) in[0].get(sc)).getFoodStats().getSaturationLevel());
+        sm.registerFunction("player.getsaturation", (sc,
+                in) -> (double) ((PlayerEntity) in[0].get(sc)).getFoodStats().getSaturationLevel());
         sm.registerConsumer("player.setsaturation", (sc, in) -> {
-            ReflectionUtils.setSaturation(((PlayerEntity) in[0].get(sc)).getFoodStats(), in[1].getFloat(sc));
+            ReflectionUtils.setSaturation(((PlayerEntity) in[0].get(sc)).getFoodStats(),
+                    in[1].getFloat(sc));
         });
         sm.registerFunction("player.getname", (sc, in) -> {
             Object o = in[0].get(sc);
@@ -114,17 +127,25 @@ public class PlayerCommands {
             return playerBank.getUUID(o.toString());
         });
         sm.registerFunction("player.getid", (sc, in) -> (double) getId(playerBank, in[0].get(sc)));
-        sm.registerFunction("player.get", (sc, in) -> server.getPlayerList().getPlayerByUUID(getUUID(in[0].get(sc))));
-        sm.registerFunction("player.getuuidfromid", (sc, in) -> playerBank.getUUIDfromID(in[0].getInt(sc)));
-        sm.registerFunction("player.getnamefromid", (sc, in) -> playerBank.getNamefromID(in[0].getInt(sc)));
-        sm.registerFunction("player.getip", (sc, in) -> ((ServerPlayerEntity) in[0].get(sc)).connection.netManager.getRemoteAddress().toString());
-        sm.registerFunction("player.iscreative", (sc, in) -> ((PlayerEntity) in[0].get(sc)).isCreative());
-        sm.registerFunction("player.isspectator", (sc, in) -> ((PlayerEntity) in[0].get(sc)).isSpectator());
+        sm.registerFunction("player.get",
+                (sc, in) -> server.getPlayerList().getPlayerByUUID(getUUID(in[0].get(sc))));
+        sm.registerFunction("player.getuuidfromid",
+                (sc, in) -> playerBank.getUUIDfromID(in[0].getInt(sc)));
+        sm.registerFunction("player.getnamefromid",
+                (sc, in) -> playerBank.getNamefromID(in[0].getInt(sc)));
+        sm.registerFunction("player.getip",
+                (sc, in) -> ((ServerPlayerEntity) in[0].get(sc)).connection.netManager
+                        .getRemoteAddress().toString());
+        sm.registerFunction("player.iscreative",
+                (sc, in) -> ((PlayerEntity) in[0].get(sc)).isCreative());
+        sm.registerFunction("player.isspectator",
+                (sc, in) -> ((PlayerEntity) in[0].get(sc)).isSpectator());
         sm.registerFunction("player.issurvival", (sc, in) -> {
             PlayerEntity p = (PlayerEntity) in[0].get(sc);
             return !p.isCreative() && !p.isSpectator();
         });
-        sm.registerFunction("player.isadventure", (sc, in) -> !((PlayerEntity) in[0].get(sc)).abilities.allowEdit);
+        sm.registerFunction("player.isadventure",
+                (sc, in) -> !((PlayerEntity) in[0].get(sc)).abilities.allowEdit);
         sm.registerConsumer("player.setfly", (sc, in) -> {
             PlayerEntity p = ((PlayerEntity) in[0].get(sc));
             boolean b = in[1].getBoolean(sc);
@@ -132,11 +153,13 @@ public class PlayerCommands {
             p.abilities.isFlying = b;
             p.sendPlayerAbilities();
         });
-        sm.registerFunction("player.hasfly", (sc, in) -> ((PlayerEntity) in[0].get(sc)).abilities.allowFlying);
-        sm.registerFunction("player.isflying", (sc, in) -> ((PlayerEntity) in[0].get(sc)).abilities.isFlying);
+        sm.registerFunction("player.hasfly",
+                (sc, in) -> ((PlayerEntity) in[0].get(sc)).abilities.allowFlying);
+        sm.registerFunction("player.isflying",
+                (sc, in) -> ((PlayerEntity) in[0].get(sc)).abilities.isFlying);
         sm.registerConsumer("player.setgamemode", (sc, in) -> {
             PlayerEntity p = (PlayerEntity) in[0].get(sc);
-            switch(in[1].get(sc).toString()) {
+            switch (in[1].get(sc).toString()) {
                 case "survival":
                 case "s":
                 case "0":
@@ -191,7 +214,8 @@ public class PlayerCommands {
             Vector3d unit = p.getLook(0.0f);
             Vector3d end = start.add(unit.x * radius, unit.y * radius, unit.z * radius);
 
-            BlockRayTraceResult result = p.world.rayTraceBlocks(new RayTraceContext(start, end, bm, fm, p));
+            BlockRayTraceResult result =
+                    p.world.rayTraceBlocks(new RayTraceContext(start, end, bm, fm, p));
 
             if(result.getType() == RayTraceResult.Type.BLOCK) {
                 return new Location(p.world, result.getPos());
@@ -199,17 +223,19 @@ public class PlayerCommands {
 
             return new Location(p.world, end);
         });
-
         sm.registerFunction("player.gettargetentity", (sc, in) -> {
-            return Utils.getTargetedEntity((PlayerEntity) in[0].get(sc), in[1].getDouble(sc), getNamedClass(in[2].getString(sc)));
+            return Utils.getTargetedEntity((PlayerEntity) in[0].get(sc), in[1].getDouble(sc),
+                    (Class<? extends Entity>) getNamedClass(in[2].getString(sc)));
         });
         sm.registerAlias("player.hasscript", "player.hasquest");
         sm.registerConsumer("player.action", (sc, in) -> {
             StringTextComponent text = new StringTextComponent(SnuviUtils.connect(sc, in, 1));
-            doForGroup(server, scripts, perms, in[0].get(sc), sc, p -> ((ServerPlayerEntity) p).sendStatusMessage(text, true));
+            doForGroup(server, scripts, perms, in[0].get(sc), sc,
+                    p -> ((ServerPlayerEntity) p).sendStatusMessage(text, true));
         });
         sm.registerConsumer("player.disconnect", (sc, in) -> {
-            ((ServerPlayerEntity) in[0].get(sc)).connection.disconnect(new StringTextComponent(in[1].getString(sc)));
+            ((ServerPlayerEntity) in[0].get(sc)).connection
+                    .disconnect(new StringTextComponent(in[1].getString(sc)));
         });
         sm.registerFunction("player.getspawn", (sc, in) -> {
             ServerPlayerEntity p = (ServerPlayerEntity) in[0].get(sc);
@@ -218,8 +244,9 @@ public class PlayerCommands {
         sm.registerAlias("player.getspawn", "player.getbedspawn");
         sm.registerConsumer("player.setspawn", (sc, in) -> {
             Location l = (Location) in[1].get(sc);
-            ((ServerPlayerEntity) in[0].get(sc)).func_242111_a(((ServerWorld) l.getWorld()).getDimensionKey(), 
-                    l.getBlockPos(), in.length > 2 ? in[2].getFloat(sc) : 0.0f, true, false);
+            ((ServerPlayerEntity) in[0].get(sc)).func_242111_a(
+                    ((ServerWorld) l.getWorld()).getDimensionKey(), l.getBlockPos(),
+                    in.length > 2 ? in[2].getFloat(sc) : 0.0f, true, false);
         });
         sm.registerAlias("player.setspawn", "player.setbedspawn");
         sm.registerConsumer("player.damageitem", (sc, in) -> {
@@ -228,7 +255,8 @@ public class PlayerCommands {
             });
         });
         sm.registerConsumer("player.damagearmor", (sc, in) -> {
-            ((PlayerEntity) in[0].get(sc)).inventory.func_234563_a_((DamageSource) in[2].get(sc), in[1].getFloat(sc));
+            ((PlayerEntity) in[0].get(sc)).inventory.func_234563_a_((DamageSource) in[2].get(sc),
+                    in[1].getFloat(sc));
         });
         sm.registerConsumer("player.openenderchest", (sc, in) -> {
             PlayerEntity p1 = (PlayerEntity) in[0].get(sc);
@@ -241,11 +269,13 @@ public class PlayerCommands {
         sm.registerConsumer("player.addtotalexp", (sc, in) -> {
             ((ServerPlayerEntity) in[0].get(sc)).giveExperiencePoints(in[1].getInt(sc));
         });
-        sm.registerFunction("player.getlevel", (sc, in) -> (double) ((PlayerEntity) in[0].get(sc)).experienceLevel);
+        sm.registerFunction("player.getlevel",
+                (sc, in) -> (double) ((PlayerEntity) in[0].get(sc)).experienceLevel);
         sm.registerConsumer("player.setlevel", (sc, in) -> {
             ((ServerPlayerEntity) in[0].get(sc)).setExperienceLevel(in[1].getInt(sc));
         });
-        sm.registerFunction("player.getexp", (sc, in) -> (double) ((PlayerEntity) in[0].get(sc)).experience);
+        sm.registerFunction("player.getexp",
+                (sc, in) -> (double) ((PlayerEntity) in[0].get(sc)).experience);
         sm.registerConsumer("player.setexp", (sc, in) -> {
             ServerPlayerEntity p = (ServerPlayerEntity) in[0].get(sc);
             p.func_195394_a((int) (in[1].getDouble(sc) * p.xpBarCap()));
@@ -258,25 +288,34 @@ public class PlayerCommands {
             com.put("SkullOwner", NBTUtil.writeGameProfile(new CompoundNBT(), gp));
             return stack;
         });
-        sm.registerFunction("player.near", (sc, in) -> Utils.getPlayers((Entity) in[0].get(sc), in[1].getDouble(sc)));
+        sm.registerFunction("player.near",
+                (sc, in) -> Utils.getPlayers((Entity) in[0].get(sc), in[1].getDouble(sc)));
         sm.registerFunction("player.getinv", (sc, in) -> ((PlayerEntity) in[0].get(sc)).inventory);
-        sm.registerFunction("player.getinvslot", (sc, in) -> ((PlayerEntity) in[0].get(sc)).inventory.mainInventory.get(in[1].getInt(sc)));
+        sm.registerFunction("player.getinvslot",
+                (sc, in) -> ((PlayerEntity) in[0].get(sc)).inventory.mainInventory
+                        .get(in[1].getInt(sc)));
         sm.registerConsumer("player.setinvslot", (sc, in) -> {
-            ((PlayerEntity) in[0].get(sc)).inventory.mainInventory.set(in[1].getInt(sc), ((ItemStack) in[2].get(sc)).copy());
+            ((PlayerEntity) in[0].get(sc)).inventory.mainInventory.set(in[1].getInt(sc),
+                    ((ItemStack) in[2].get(sc)).copy());
         });
-        sm.registerFunction("player.getenderinv", (sc, in) -> ((PlayerEntity) in[0].get(sc)).getInventoryEnderChest());
-        sm.registerFunction("player.getenderslot", (sc, in) -> ((PlayerEntity) in[0].get(sc)).getInventoryEnderChest().getStackInSlot(in[1].getInt(sc)));
+        sm.registerFunction("player.getenderinv",
+                (sc, in) -> ((PlayerEntity) in[0].get(sc)).getInventoryEnderChest());
+        sm.registerFunction("player.getenderslot", (sc, in) -> ((PlayerEntity) in[0].get(sc))
+                .getInventoryEnderChest().getStackInSlot(in[1].getInt(sc)));
         sm.registerConsumer("player.setenderslot", (sc, in) -> {
-            ((PlayerEntity) in[0].get(sc)).getInventoryEnderChest().setInventorySlotContents(in[1].getInt(sc), ((ItemStack) in[2].get(sc)).copy());
+            ((PlayerEntity) in[0].get(sc)).getInventoryEnderChest()
+                    .setInventorySlotContents(in[1].getInt(sc), ((ItemStack) in[2].get(sc)).copy());
         });
         sm.registerConsumer("player.setdisplayname", (sc, in) -> {
-            ((ModEntityPlayerMP) in[0].get(sc)).setTabListDisplayName(in[1].getString(sc), scheduler);
+            ((ModEntityPlayerMP) in[0].get(sc)).setTabListDisplayName(in[1].getString(sc),
+                    scheduler);
         });
         sm.registerConsumer("player.hide", (sc, in) -> {
             ServerPlayerEntity p = (ServerPlayerEntity) in[0].get(sc);
             GameType type = p.interactionManager.getGameType();
             ReflectionUtils.setGameType(p.interactionManager, GameType.SPECTATOR);
-            SPlayerListItemPacket packet = new SPlayerListItemPacket(SPlayerListItemPacket.Action.UPDATE_GAME_MODE, p);
+            SPlayerListItemPacket packet =
+                    new SPlayerListItemPacket(SPlayerListItemPacket.Action.UPDATE_GAME_MODE, p);
             ReflectionUtils.setGameType(p.interactionManager, type);
             for(ServerPlayerEntity other : server.getPlayerList().getPlayers()) {
                 if(other == p) {
@@ -289,7 +328,8 @@ public class PlayerCommands {
         sm.registerConsumer("player.show", (sc, in) -> {
             ServerPlayerEntity p = (ServerPlayerEntity) in[0].get(sc);
             p.setInvisible(false);
-            SPlayerListItemPacket packet = new SPlayerListItemPacket(SPlayerListItemPacket.Action.UPDATE_GAME_MODE, p);
+            SPlayerListItemPacket packet =
+                    new SPlayerListItemPacket(SPlayerListItemPacket.Action.UPDATE_GAME_MODE, p);
             for(ServerPlayerEntity other : server.getPlayerList().getPlayers()) {
                 if(other == p) {
                     continue;
@@ -297,12 +337,16 @@ public class PlayerCommands {
                 other.connection.sendPacket(packet);
             }
         });
-        sm.registerFunction("players.getamount", (sc, in) -> (double) server.getCurrentPlayerCount());
-        sm.registerFunction("players.tolist", (sc, in) -> new ArrayList(server.getPlayerList().getPlayers()));
-        sm.registerFunction("players.toworldlist", (sc, in) -> new ArrayList(((World) in[0].get(sc)).getPlayers()));
+        sm.registerFunction("players.getamount",
+                (sc, in) -> (double) server.getCurrentPlayerCount());
+        sm.registerFunction("players.tolist",
+                (sc, in) -> new ArrayList<>(server.getPlayerList().getPlayers()));
+        sm.registerFunction("players.toworldlist",
+                (sc, in) -> new ArrayList<>(((World) in[0].get(sc)).getPlayers()));
         sm.registerFunction("players.near", (sc, in) -> {
             Location l = (Location) in[0].get(sc);
-            return Utils.getPlayers(l.getWorld(), l.getX(), l.getY(), l.getZ(), in[1].getDouble(sc));
+            return Utils.getPlayers(l.getWorld(), l.getX(), l.getY(), l.getZ(),
+                    in[1].getDouble(sc));
         });
     }
 }

+ 7 - 6
src/main/java/me/km/utils/ClientReflectionUtils.java

@@ -8,8 +8,6 @@ import static me.km.utils.ReflectionUtils.getMethod;
 import net.minecraft.client.Minecraft;
 import net.minecraft.client.gui.overlay.BossOverlayGui;
 import net.minecraft.client.renderer.entity.EntityRenderer;
-import net.minecraft.client.renderer.entity.EntityRendererManager;
-import net.minecraft.client.renderer.entity.PlayerRenderer;
 import net.minecraft.entity.Entity;
 import net.minecraftforge.api.distmarker.Dist;
 import net.minecraftforge.api.distmarker.OnlyIn;
@@ -17,12 +15,13 @@ import org.apache.logging.log4j.LogManager;
 
 @OnlyIn(Dist.CLIENT)
 public class ClientReflectionUtils {
-    private final static Method CAN_RENDER_NAME = getMethod(EntityRenderer.class, "func_177070_b", Entity.class);
+    private final static Method CAN_RENDER_NAME =
+            getMethod(EntityRenderer.class, "func_177070_b", Entity.class);
 
-    public static boolean canRenderName(EntityRenderer lr, Entity liv) {
+    public static boolean canRenderName(EntityRenderer<?> lr, Entity liv) {
         try {
             return (boolean) CAN_RENDER_NAME.invoke(lr, liv);
-        } catch(Exception ex) {
+        } catch (Exception ex) {
             LogManager.getLogger().warn("canRenderName - " + ex);
             return false;
         }
@@ -31,6 +30,8 @@ public class ClientReflectionUtils {
     private final static Field BOSS_BAR_MAP = getField(BossOverlayGui.class, "field_184060_g");
 
     public static boolean isRenderingBossBar() {
-        return !ReflectionUtils.getFieldValue(Map.class, Minecraft.getInstance().ingameGUI.getBossOverlay(), BOSS_BAR_MAP).isEmpty();
+        Minecraft mc = Minecraft.getInstance();
+        return !ReflectionUtils
+                .getFieldValue(Map.class, mc.ingameGUI.getBossOverlay(), BOSS_BAR_MAP).isEmpty();
     }
 }

+ 13 - 11
src/main/java/me/km/utils/Location.java

@@ -5,13 +5,9 @@ import java.util.regex.PatternSyntaxException;
 import net.minecraft.block.BlockState;
 import net.minecraft.entity.Entity;
 import net.minecraft.server.MinecraftServer;
-import net.minecraft.util.RegistryKey;
-import net.minecraft.util.ResourceLocation;
 import net.minecraft.util.math.BlockPos;
 import net.minecraft.util.math.MathHelper;
 import net.minecraft.util.math.vector.Vector3d;
-import net.minecraft.util.registry.Registry;
-import net.minecraft.world.IWorld;
 import net.minecraft.world.World;
 
 public class Location {
@@ -48,7 +44,8 @@ public class Location {
     }
 
     public Location(Entity ent) {
-        this(ent.world, ent.getPosX(), ent.getPosY(), ent.getPosZ(), ent.rotationYaw, ent.rotationPitch);
+        this(ent.world, ent.getPosX(), ent.getPosY(), ent.getPosZ(), ent.rotationYaw,
+                ent.rotationPitch);
     }
 
     public Location(MinecraftServer server, String location) {
@@ -71,9 +68,11 @@ public class Location {
                 this.pitch = 0;
                 return;
             }
-            throw new IllegalArgumentException(String.format("'%s' is not a valid location string", location));
-        } catch(PatternSyntaxException | NumberFormatException ex) {
-            throw new IllegalArgumentException(String.format("'%s' is not a valid location string", location));
+            throw new IllegalArgumentException(
+                    String.format("'%s' is not a valid location string", location));
+        } catch (PatternSyntaxException | NumberFormatException ex) {
+            throw new IllegalArgumentException(
+                    String.format("'%s' is not a valid location string", location));
         }
     }
 
@@ -81,9 +80,12 @@ public class Location {
     public int hashCode() {
         int hash = 7;
         hash = 17 * hash + Objects.hashCode(this.w);
-        hash = 17 * hash + (int) (Double.doubleToLongBits(this.x) ^ (Double.doubleToLongBits(this.x) >>> 32));
-        hash = 17 * hash + (int) (Double.doubleToLongBits(this.y) ^ (Double.doubleToLongBits(this.y) >>> 32));
-        hash = 17 * hash + (int) (Double.doubleToLongBits(this.z) ^ (Double.doubleToLongBits(this.z) >>> 32));
+        hash = 17 * hash + (int) (Double.doubleToLongBits(this.x)
+                ^ (Double.doubleToLongBits(this.x) >>> 32));
+        hash = 17 * hash + (int) (Double.doubleToLongBits(this.y)
+                ^ (Double.doubleToLongBits(this.y) >>> 32));
+        hash = 17 * hash + (int) (Double.doubleToLongBits(this.z)
+                ^ (Double.doubleToLongBits(this.z) >>> 32));
         return hash;
     }
 

+ 3 - 3
src/main/java/me/km/utils/Mapper.java

@@ -34,7 +34,7 @@ public class Mapper {
         return ForgeRegistries.POTIONS.getValue(new ResourceLocation(name));
     }
 
-    public static ParticleType getParticle(String name) {
+    public static ParticleType<?> getParticle(String name) {
         return ForgeRegistries.PARTICLE_TYPES.getValue(new ResourceLocation(name));
     }
 
@@ -46,8 +46,8 @@ public class Mapper {
         return ForgeRegistries.BLOCKS.getValue(new ResourceLocation(name));
     }
 
-    public static Property getProperty(String name) {
-        switch(name) {
+    public static Property<?> getProperty(String name) {
+        switch (name) {
             case "attached":
                 return BlockStateProperties.ATTACHED;
             case "bottom":

+ 35 - 55
src/main/java/me/km/utils/ReflectionUtils.java

@@ -32,25 +32,21 @@ import static net.minecraftforge.fml.common.ObfuscationReflectionHelper.remapNam
 import org.apache.logging.log4j.LogManager;
 
 public class ReflectionUtils {
-    // -----------------------------------------------------------------------------------
-    // helper stuff
-    // -----------------------------------------------------------------------------------
-
-    public static Method getMethod(Class c, String name, Class... pars) {
+    public static Method getMethod(Class<?> c, String name, Class<?>... pars) {
         try {
             return ObfuscationReflectionHelper.findMethod(c, name, pars);
-        } catch(Exception ex) {
+        } catch (Exception ex) {
             LogManager.getLogger().warn(name + " - " + ex);
         }
         return null;
     }
 
-    public static Field getField(Class c, String field) {
+    public static Field getField(Class<?> c, String field) {
         try {
             Field f = c.getDeclaredField(remapName(INameMappingService.Domain.FIELD, field));
             f.setAccessible(true);
             return f;
-        } catch(Exception ex) {
+        } catch (Exception ex) {
             LogManager.getLogger().warn(field + " - " + ex);
         }
         return null;
@@ -59,24 +55,17 @@ public class ReflectionUtils {
     private static <T> void setInt(T t, Field f, int i) {
         try {
             f.setInt(t, i);
-        } catch(SecurityException | IllegalArgumentException | IllegalAccessException | NullPointerException ex) {
+        } catch (SecurityException | IllegalArgumentException | IllegalAccessException
+                | NullPointerException ex) {
             LogManager.getLogger().warn(f + " - " + ex);
         }
     }
 
-    private static <T> int getInt(T t, Field f, int error) {
-        try {
-            return f.getInt(t);
-        } catch(SecurityException | IllegalArgumentException | IllegalAccessException | NullPointerException ex) {
-            LogManager.getLogger().warn(f + " - " + ex);
-            return error;
-        }
-    }
-
     private static <T> void setFloat(T t, Field f, float fl) {
         try {
             f.setFloat(t, fl);
-        } catch(SecurityException | IllegalArgumentException | IllegalAccessException | NullPointerException ex) {
+        } catch (SecurityException | IllegalArgumentException | IllegalAccessException
+                | NullPointerException ex) {
             LogManager.getLogger().warn(f + " - " + ex);
         }
     }
@@ -84,16 +73,8 @@ public class ReflectionUtils {
     private static <T> float getFloat(T t, Field f, float error) {
         try {
             return f.getFloat(t);
-        } catch(SecurityException | IllegalArgumentException | IllegalAccessException | NullPointerException ex) {
-            LogManager.getLogger().warn(f + " - " + ex);
-            return error;
-        }
-    }
-
-    private static <T> boolean getBoolean(T t, Field f, boolean error) {
-        try {
-            return f.getBoolean(t);
-        } catch(SecurityException | IllegalArgumentException | IllegalAccessException | NullPointerException ex) {
+        } catch (SecurityException | IllegalArgumentException | IllegalAccessException
+                | NullPointerException ex) {
             LogManager.getLogger().warn(f + " - " + ex);
             return error;
         }
@@ -101,8 +82,8 @@ public class ReflectionUtils {
 
     public static <T> T getFieldValue(Class<T> cast, Object o, Field f) {
         try {
-            return (T) f.get(o);
-        } catch(SecurityException | IllegalAccessException | IllegalArgumentException ex) {
+            return cast.cast(f.get(o));
+        } catch (SecurityException | IllegalAccessException | IllegalArgumentException ex) {
             LogManager.getLogger().warn(f + " - " + ex);
             return null;
         }
@@ -111,12 +92,12 @@ public class ReflectionUtils {
     public static void setFieldValue(Object instance, Field f, Object value) {
         try {
             f.set(instance, value);
-        } catch(SecurityException | IllegalAccessException | IllegalArgumentException ex) {
+        } catch (SecurityException | IllegalAccessException | IllegalArgumentException ex) {
             LogManager.getLogger().warn(f + " - " + ex);
         }
     }
 
-    public static <T> T getFieldValue(Class<T> cast, Class c, Object instance, String field) {
+    public static <T> T getFieldValue(Class<T> cast, Class<?> c, Object instance, String field) {
         Field f = getField(c, field);
         if(f == null) {
             return null;
@@ -124,9 +105,6 @@ public class ReflectionUtils {
         return getFieldValue(cast, instance, f);
     }
 
-    // -----------------------------------------------------------------------------------
-    // food stats
-    // -----------------------------------------------------------------------------------
     private final static Field FOOD_EXHAUSTION_LEVEL = getField(FoodStats.class, "field_75126_c"); // foodExhaustionLevel
 
     public static void setExhaustion(FoodStats stats, float f) {
@@ -143,24 +121,20 @@ public class ReflectionUtils {
         setFloat(stats, FOOD_SATURATION_LEVEL, f);
     }
 
-    // -----------------------------------------------------------------------------------
-    // PlayerList
-    // -----------------------------------------------------------------------------------
     private final static Method SET_GAMETYPE = getMethod(PlayerList.class, "func_72381_a",
             ServerPlayerEntity.class, ServerPlayerEntity.class, ServerWorld.class); // setPlayerGameTypeBasedOnOther
 
-    public static void setPlayerGameTypeBasedOnOther(PlayerList pl, ServerPlayerEntity target, ServerPlayerEntity source, ServerWorld sw) {
+    public static void setPlayerGameTypeBasedOnOther(PlayerList pl, ServerPlayerEntity target,
+            ServerPlayerEntity source, ServerWorld sw) {
         try {
             SET_GAMETYPE.invoke(pl, target, source, sw);
-        } catch(IllegalAccessException | IllegalArgumentException | InvocationTargetException ex) {
+        } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException ex) {
             LogManager.getLogger().warn("setPlayerGameTypeBasedOnOther - " + ex);
         }
     }
 
-    // -----------------------------------------------------------------------------------
-    // minecraft server 
-    // -----------------------------------------------------------------------------------
-    private final static Field COMMAND_MANAGER = getField(DataPackRegistries.class, "field_240953_c_"); // commands
+    private final static Field COMMAND_MANAGER =
+            getField(DataPackRegistries.class, "field_240953_c_"); // commands
 
     public static void setCommandManager(MinecraftServer server, Commands manager) {
         setFieldValue(server.getDataPackRegistries(), COMMAND_MANAGER, manager);
@@ -175,7 +149,8 @@ public class ReflectionUtils {
         }
     }
 
-    private final static Field INTEGER_VALUE = getField(GameRules.IntegerValue.class, "field_223566_a"); // value
+    private final static Field INTEGER_VALUE =
+            getField(GameRules.IntegerValue.class, "field_223566_a"); // value
 
     public static void setIntegerValue(GameRules.IntegerValue rule, int value) {
         setInt(rule, INTEGER_VALUE, value);
@@ -184,7 +159,8 @@ public class ReflectionUtils {
     // -----------------------------------------------------------------------------------
     // game type setter without update for dirty hack
     // -----------------------------------------------------------------------------------
-    private final static Field GAME_TYPE = getField(PlayerInteractionManager.class, "field_73091_c");
+    private final static Field GAME_TYPE =
+            getField(PlayerInteractionManager.class, "field_73091_c");
 
     public static void setGameType(PlayerInteractionManager m, GameType type) {
         setFieldValue(m, GAME_TYPE, type);
@@ -195,17 +171,19 @@ public class ReflectionUtils {
     // -----------------------------------------------------------------------------------
     private final static Field GOALS = getField(GoalSelector.class, "field_220892_d");
 
+    @SuppressWarnings("unchecked")
     public static Set<PrioritizedGoal> getGoals(GoalSelector gs) {
         return getFieldValue(Set.class, gs, GOALS);
     }
 
-    private final static Method SET_FIRE_INFO = getMethod(FireBlock.class, "func_180686_a", Block.class, int.class, int.class);
+    private final static Method SET_FIRE_INFO =
+            getMethod(FireBlock.class, "func_180686_a", Block.class, int.class, int.class);
 
     public static void setFireInfo(Block b, int encouragement, int flammability) {
         FireBlock fireblock = (FireBlock) Blocks.FIRE;
         try {
             SET_FIRE_INFO.invoke(fireblock, b, encouragement, flammability);
-        } catch(IllegalAccessException | IllegalArgumentException | InvocationTargetException ex) {
+        } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException ex) {
             LogManager.getLogger().warn("setFireInfo - " + ex);
         }
     }
@@ -223,15 +201,17 @@ public class ReflectionUtils {
         setFieldValue(w, WORLD_INFO, info);
         setFieldValue(w, SERVER_WORLD_INFO, info);
     }
-    
-    private final static Field DERIVED_WORLD_INFO_DELEGATE = getField(DerivedWorldInfo.class, "field_76115_a");
-    
+
+    private final static Field DERIVED_WORLD_INFO_DELEGATE =
+            getField(DerivedWorldInfo.class, "field_76115_a");
+
     public static IServerWorldInfo getDerivedWorldInfoDelegate(DerivedWorldInfo info) {
         return getFieldValue(IServerWorldInfo.class, info, DERIVED_WORLD_INFO_DELEGATE);
     }
-    
-    private final static Field DERIVED_WORLD_INFO_CONFIGURATION = getField(DerivedWorldInfo.class, "field_237244_a_");
-    
+
+    private final static Field DERIVED_WORLD_INFO_CONFIGURATION =
+            getField(DerivedWorldInfo.class, "field_237244_a_");
+
     public static IServerConfiguration getDerivedWorldInfoConfiguration(DerivedWorldInfo info) {
         return getFieldValue(IServerConfiguration.class, info, DERIVED_WORLD_INFO_CONFIGURATION);
     }

+ 40 - 27
src/main/java/me/km/utils/Utils.java

@@ -39,13 +39,15 @@ public class Utils {
     }
 
     private static AxisAlignedBB buildBoxAround(double x, double y, double z, double radius) {
-        return new AxisAlignedBB(x - radius, y - radius, z - radius, x + radius, y + radius, z + radius);
+        return new AxisAlignedBB(x - radius, y - radius, z - radius, x + radius, y + radius,
+                z + radius);
     }
 
-    @SuppressWarnings("unchecked")
-    public static <T extends Entity> List<T> getEntities(IWorld w, double x, double y, double z, double radius, Class<T> type) {
+    public static <T extends Entity> List<T> getEntities(IWorld w, double x, double y, double z,
+            double radius, Class<T> type) {
         double sqareRadius = radius * radius;
-        return w.getEntitiesWithinAABB(type, buildBoxAround(x, y, z, radius), ent -> ent.getDistanceSq(x, y, z) <= sqareRadius);
+        return w.getEntitiesWithinAABB(type, buildBoxAround(x, y, z, radius),
+                ent -> ent.getDistanceSq(x, y, z) <= sqareRadius);
     }
 
     public static List<Entity> getEntities(Entity ent, double radius) {
@@ -53,7 +55,8 @@ public class Utils {
         double x = ent.getPosX();
         double y = ent.getPosY();
         double z = ent.getPosZ();
-        return ent.world.getEntitiesInAABBexcluding(ent, buildBoxAround(x, y, z, radius), e -> e.getDistanceSq(x, y, z) <= sqareRadius);
+        return ent.world.getEntitiesInAABBexcluding(ent, buildBoxAround(x, y, z, radius),
+                e -> e.getDistanceSq(x, y, z) <= sqareRadius);
     }
 
     public static List<Entity> getEntities(Location loc, double radius) {
@@ -61,23 +64,28 @@ public class Utils {
         double x = loc.getX();
         double y = loc.getY();
         double z = loc.getZ();
-        return loc.getWorld().getEntitiesInAABBexcluding(null, buildBoxAround(x, y, z, radius), ent -> ent.getDistanceSq(x, y, z) <= sqareRadius);
+        return loc.getWorld().getEntitiesInAABBexcluding(null, buildBoxAround(x, y, z, radius),
+                ent -> ent.getDistanceSq(x, y, z) <= sqareRadius);
     }
 
-    public static List<PlayerEntity> getPlayers(IWorld w, double x, double y, double z, double radius) {
+    public static List<PlayerEntity> getPlayers(IWorld w, double x, double y, double z,
+            double radius) {
         double sqareRadius = radius * radius;
-        return w.getEntitiesWithinAABB(PlayerEntity.class, buildBoxAround(x, y, z, radius), p -> p.getDistanceSq(x, y, z) <= sqareRadius);
+        return w.getEntitiesWithinAABB(PlayerEntity.class, buildBoxAround(x, y, z, radius),
+                p -> p.getDistanceSq(x, y, z) <= sqareRadius);
     }
 
     public static List<PlayerEntity> getPlayers(Entity not, double radius) {
         double sqareRadius = radius * radius;
-        return not.world.getEntitiesWithinAABB(PlayerEntity.class, buildBoxAround(not.getPosX(), not.getPosY(), not.getPosZ(), radius),
+        return not.world.getEntitiesWithinAABB(PlayerEntity.class,
+                buildBoxAround(not.getPosX(), not.getPosY(), not.getPosZ(), radius),
                 p -> p != not && p.getDistanceSq(not) <= sqareRadius);
     }
 
     public static List<LivingEntity> getLiving(Entity not, double radius) {
         double sqareRadius = radius * radius;
-        return not.world.getEntitiesWithinAABB(LivingEntity.class, buildBoxAround(not.getPosX(), not.getPosY(), not.getPosZ(), radius),
+        return not.world.getEntitiesWithinAABB(LivingEntity.class,
+                buildBoxAround(not.getPosX(), not.getPosY(), not.getPosZ(), radius),
                 p -> p != not && p.getDistanceSq(not) <= sqareRadius);
     }
 
@@ -86,13 +94,14 @@ public class Utils {
         double x = loc.getX();
         double y = loc.getY();
         double z = loc.getZ();
-        return loc.getWorld().getEntitiesWithinAABB(LivingEntity.class, buildBoxAround(x, y, z, radius),
-                p -> p.getDistanceSq(x, y, z) <= sqareRadius);
+        return loc.getWorld().getEntitiesWithinAABB(LivingEntity.class,
+                buildBoxAround(x, y, z, radius), p -> p.getDistanceSq(x, y, z) <= sqareRadius);
     }
 
-    public static <T extends Entity> T getEntity(IWorld w, double x, double y, double z, double radius, Class<T> type) {
-        return getEntities(w, x, y, z, radius, type).stream()
-                .min((e1, e2) -> Double.compare(e1.getDistanceSq(x, y, z), e2.getDistanceSq(x, y, z)))
+    public static <T extends Entity> T getEntity(IWorld w, double x, double y, double z,
+            double radius, Class<T> type) {
+        return getEntities(w, x, y, z, radius, type).stream().min(
+                (e1, e2) -> Double.compare(e1.getDistanceSq(x, y, z), e2.getDistanceSq(x, y, z)))
                 .orElse(null);
     }
 
@@ -133,7 +142,8 @@ public class Utils {
             }
         }
 
-        return Math.max(Math.max(lowerX, lowerY), lowerZ) < Math.min(Math.min(upperX, upperY), upperZ);
+        return Math.max(Math.max(lowerX, lowerY), lowerZ) < Math.min(Math.min(upperX, upperY),
+                upperZ);
     }
 
     private static Vector3d getTargetVector(Entity ent, double range) {
@@ -145,7 +155,8 @@ public class Utils {
         Vector3d look = ent.getLookVec();
         Vector3d end = start.add(look.x * range, look.y * range, look.z * range);
 
-        RayTraceResult ray = w.rayTraceBlocks(new RayTraceContext(start, end, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, ent));
+        RayTraceResult ray = w.rayTraceBlocks(new RayTraceContext(start, end,
+                RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, ent));
         if(ray == null || ray.getHitVec() == null) {
             return end;
         }
@@ -153,29 +164,29 @@ public class Utils {
     }
 
     @SuppressWarnings("unchecked")
-    public static <T extends Entity> T getTargetedEntity(PlayerEntity p, double radius, Class<T> type) {
+    public static <T extends Entity> T getTargetedEntity(PlayerEntity p, double radius,
+            Class<T> type) {
         World w = p.getEntityWorld();
         Vector3d l = getTargetVector(p, radius);
         Vector3d eye = p.getEyePosition(1.0f);
         Vector3d unit = new Vector3d(l.x - eye.x, l.y - eye.y, l.z - eye.z);
 
-        List<Entity> col = w.getEntitiesWithinAABBExcludingEntity(p, new AxisAlignedBB(eye.x, eye.y, eye.z, l.x, l.y, l.z));
+        List<Entity> col = w.getEntitiesWithinAABBExcludingEntity(p,
+                new AxisAlignedBB(eye.x, eye.y, eye.z, l.x, l.y, l.z));
         col.removeIf(ent -> !type.isAssignableFrom(ent.getClass()));
         // removes entities, which do not intersect with the sight vector
         col.removeIf(ent -> !doesIntersect(ent.getBoundingBox().grow(0.1), eye, unit));
 
         return (T) col.stream().sorted((Entity e1, Entity e2) -> {
-            return Double.compare(e1.getDistanceSq(eye.x, eye.y, eye.z), e2.getDistanceSq(eye.x, eye.y, eye.z));
+            return Double.compare(e1.getDistanceSq(eye.x, eye.y, eye.z),
+                    e2.getDistanceSq(eye.x, eye.y, eye.z));
         }).findFirst().orElse(null);
     }
 
-    // -------------------------------------------------------------------------
-    // Player-Tools
-    // -------------------------------------------------------------------------
     public static ServerPlayerEntity getPlayerByName(MinecraftServer server, String name) {
         String nameLower = name.toLowerCase();
-        return server.getPlayerList().getPlayers().stream()
-                .filter(pl -> pl.getName().getUnformattedComponentText().toLowerCase().contains(nameLower))
+        return server.getPlayerList().getPlayers().stream().filter(
+                pl -> pl.getName().getUnformattedComponentText().toLowerCase().contains(nameLower))
                 .findFirst().orElse(null);
     }
 
@@ -184,10 +195,12 @@ public class Utils {
     }
 
     public static World getWorldFromName(MinecraftServer server, String name) {
-        ServerWorld sw = server.getWorld(RegistryKey.getOrCreateKey(Registry.WORLD_KEY, new ResourceLocation(name)));
+        ServerWorld sw = server.getWorld(
+                RegistryKey.getOrCreateKey(Registry.WORLD_KEY, new ResourceLocation(name)));
         if(sw != null) {
             return sw;
         }
-        return server.getWorld(RegistryKey.getOrCreateKey(Registry.WORLD_KEY, new ResourceLocation("km", name)));
+        return server.getWorld(
+                RegistryKey.getOrCreateKey(Registry.WORLD_KEY, new ResourceLocation("km", name)));
     }
 }