diff --git a/.gitignore b/.gitignore index fa048d1..311183a 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ gradlew.* ## PROJECT ## libs/ +*.log diff --git a/build.gradle b/build.gradle index 089e004..cd525cf 100644 --- a/build.gradle +++ b/build.gradle @@ -1,3 +1,27 @@ +buildscript { + repositories { + maven { + url "https://plugins.gradle.org/m2/" + } + } + dependencies { + classpath (group: 'org.sonarsource.scanner.gradle', name: 'sonarqube-gradle-plugin', version: '2.6.2') + } +} + +/** + * Проверка кода в SonarQube. + * Для запуска локальной проверки кода, используются следующий command line: + * gradle sonarqube \ + * -Dsonar.host.url=http://127.0.0.1:9000 + * -Dsonar.login= + * где + * - - сгенерированный токен учетки "сонара" + */ +plugins { + id "org.sonarqube" version "2.6.2" +} + allprojects { apply plugin: 'java' diff --git a/core/src/main/java/mc/core/EntityLocation.java b/core/src/main/java/mc/core/EntityLocation.java index 0b4e237..735c50b 100644 --- a/core/src/main/java/mc/core/EntityLocation.java +++ b/core/src/main/java/mc/core/EntityLocation.java @@ -3,6 +3,7 @@ package mc.core; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import org.springframework.lang.Nullable; @NoArgsConstructor @AllArgsConstructor @@ -32,15 +33,15 @@ public class EntityLocation implements Cloneable { } public int getBlockX() { - return Double.valueOf(Math.floor(x)).intValue(); + return (int) Math.floor(x); } public int getBlockY() { - return Double.valueOf(Math.floor(y)).intValue(); + return (int) Math.floor(y); } public int getBlockZ() { - return Double.valueOf(Math.floor(z)).intValue(); + return (int) Math.floor(z); } @Override @@ -49,7 +50,7 @@ public class EntityLocation implements Cloneable { return (EntityLocation) super.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); - return null; + return ZERO(); } } } diff --git a/core/src/main/java/mc/core/world/block/AbstractBlock.java b/core/src/main/java/mc/core/world/block/AbstractBlock.java index 0e0fd68..6bf8445 100644 --- a/core/src/main/java/mc/core/world/block/AbstractBlock.java +++ b/core/src/main/java/mc/core/world/block/AbstractBlock.java @@ -1,12 +1,8 @@ package mc.core.world.block; -import com.flowpowered.nbt.Tag; import lombok.Getter; import lombok.Setter; -import java.util.HashMap; -import java.util.Map; - public abstract class AbstractBlock implements Block { @Getter @Setter @@ -15,7 +11,6 @@ public abstract class AbstractBlock implements Block { private int light = 0; @Getter private final BlockType blockType; - private final Map> nbtTagsMap = new HashMap<>(); protected AbstractBlock(BlockType type) { this.blockType = type; diff --git a/core/src/main/java/mc/core/world/block/BlockLocation.java b/core/src/main/java/mc/core/world/block/BlockLocation.java index a4bfc49..8817920 100644 --- a/core/src/main/java/mc/core/world/block/BlockLocation.java +++ b/core/src/main/java/mc/core/world/block/BlockLocation.java @@ -43,7 +43,7 @@ public class BlockLocation implements Cloneable { return (BlockLocation) super.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); - return null; + return ZERO(); } } } diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/Crypter.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/Crypter.java deleted file mode 100644 index 7259f93..0000000 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/Crypter.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * DmitriyMX - * 2018-06-11 - */ -package mc.core.network.proto_1_12_2; - -import lombok.extern.slf4j.Slf4j; - -import java.security.KeyPair; -import java.security.KeyPairGenerator; -import java.security.NoSuchAlgorithmException; -import java.util.Random; - -@Slf4j -public class Crypter { - private static final Crypter instance = new Crypter(); - private KeyPair keyPair; - private byte[] verifyToken; - - public static KeyPair getKeyPair() { - if (instance.keyPair == null) { - try { - KeyPairGenerator keypairgenerator = KeyPairGenerator.getInstance("RSA"); - keypairgenerator.initialize(1024); - instance.keyPair = keypairgenerator.generateKeyPair(); - } catch (NoSuchAlgorithmException e) { - log.error("WTF?! Algorithm \"RSA\" not defined?!", e); - } - } - - return instance.keyPair; - } - - public static byte[] getVerifyToken() { - if (instance.verifyToken == null) { - instance.verifyToken = new byte[4]; - Random rand = new Random(); - rand.nextBytes(instance.verifyToken); - } - - return instance.verifyToken; - } -} diff --git a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java index 5264c7d..2b3eb6e 100644 --- a/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java +++ b/proto_1.12.2/src/main/java/mc/core/network/proto_1_12_2/packets/SpawnPositionPacket.java @@ -1,7 +1,3 @@ -/* - * DmitriyMX - * 2018-06-11 - */ package mc.core.network.proto_1_12_2.packets; import lombok.AllArgsConstructor; @@ -19,15 +15,10 @@ import mc.core.network.SCPacket; public class SpawnPositionPacket implements SCPacket { private EntityLocation location; - private int floor_double(double value) { - int i = (int)value; - return value < (double)i ? i - 1 : i; - } - private long location2long(EntityLocation entityLocation) { - return ((floor_double(entityLocation.getX()) & 0x3FFFFFF) << 38) - | ((floor_double(entityLocation.getY()) & 0xFFF) << 26) - | (floor_double(entityLocation.getZ()) & 0x3FFFFFF); + return (((long) entityLocation.getBlockX() & 0x3FFFFFF) << 38) + | (((long) entityLocation.getBlockY() & 0x0000FFF) << 26) + | ((long) entityLocation.getBlockZ() & 0x3FFFFFF); } @Override