diff --git a/.gitignore b/.gitignore index 14a48fd..215fac7 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,8 @@ local.properties .loadpath /target target/ +*.iml +.idea/ # Eclipse Core .project @@ -43,4 +45,4 @@ target/ # STS (Spring Tool Suite) .springBeans -/target/ \ No newline at end of file +/target/ diff --git a/pom.xml b/pom.xml index d5e01ee..641b5a0 100644 --- a/pom.xml +++ b/pom.xml @@ -7,12 +7,12 @@ com.github.civclassic civclassic-parent - 1.0.0 + 1.0.1 com.github.devotedmc hiddenore - 1.7.2 + 1.8.1 HiddenOre @@ -20,13 +20,17 @@ civ-github-repo https://raw.githubusercontent.com/CivClassic/artifacts/master/ + + papermc + https://papermc.io/repo/repository/maven-public/ + - com.destroystokyo.paper - paper - 1.16.4-R0.1-SNAPSHOT + io.papermc.paper + paper-api + 1.18.1-R0.1-SNAPSHOT provided diff --git a/src/main/java/com/github/devotedmc/hiddenore/tracking/BreakTracking.java b/src/main/java/com/github/devotedmc/hiddenore/tracking/BreakTracking.java index 5202e65..2ef653c 100644 --- a/src/main/java/com/github/devotedmc/hiddenore/tracking/BreakTracking.java +++ b/src/main/java/com/github/devotedmc/hiddenore/tracking/BreakTracking.java @@ -33,6 +33,9 @@ * @author soerxpso, programmerdan */ public class BreakTracking { + private static final int POS_LAYERS = 320; + private static final int NEG_LAYERS = 64; + private static final int TOTAL_LAYERS = POS_LAYERS + NEG_LAYERS; private static final int GEN = 1; private static final int MAP = 0; Map> track; @@ -80,7 +83,7 @@ public void load() { while (dis.readBoolean()) { Long chunk = dis.readLong(); - short[] layers = new short[256]; + short[] layers = new short[TOTAL_LAYERS]; for (int i = 0; i < layers.length; i++) { layers[i] = dis.readShort(); } @@ -133,7 +136,7 @@ public void load() { while (dis.readBoolean()) { Long chunk = dis.readLong(); - long[][][] layers = new long[2][256][4]; + long[][][] layers = new long[2][TOTAL_LAYERS][4]; for (int i = 0; i < layers[MAP].length; i++) { for (int j = 0; j < 4; j++) { layers[MAP][i][j] = dis.readLong(); // "map" @@ -330,7 +333,7 @@ public boolean trackGen(Location loc) { mapLayers = new long[2][256][4]; mapChunks.put(chunk_id, mapLayers); - for (int y = 0; y < 256; y++) { + for (int y = -NEG_LAYERS; y < POS_LAYERS; y++) { for (int x = 0; x < 16; x++) { for (int z = 0; z < 16; z++) { Block b = chunk.getBlock(x, y, z); @@ -338,8 +341,8 @@ public boolean trackGen(Location loc) { int bloc = (( x << 4) + z); int quad = (block_id / 64); long mask = (1l << (bloc % 64)); - mapLayers[MAP][y][quad] |= mask; // if unset, set. Ignore complements basis. - mapLayers[GEN][y][quad] |= mask; // tracks for "breaks" and "gens". + mapLayers[MAP][y+NEG_LAYERS][quad] |= mask; // if unset, set. Ignore complements basis. + mapLayers[GEN][y+NEG_LAYERS][quad] |= mask; // tracks for "breaks" and "gens". } } } @@ -347,12 +350,12 @@ public boolean trackGen(Location loc) { } boolean ret = false; - if ((mapLayers[GEN][Y][quad_id] & mask_id) == mask_id) { + if ((mapLayers[GEN][Y+NEG_LAYERS][quad_id] & mask_id) == mask_id) { ret = false; // already broken! } else { ret = true; // new break according to this tracking. - mapLayers[MAP][Y][quad_id] |= mask_id; - mapLayers[GEN][Y][quad_id] |= mask_id; + mapLayers[MAP][Y+NEG_LAYERS][quad_id] |= mask_id; + mapLayers[GEN][Y+NEG_LAYERS][quad_id] |= mask_id; } s = System.currentTimeMillis() - s; @@ -403,7 +406,7 @@ public boolean testGen(Location loc) { return true; } - if ((mapLayers[GEN][Y][quad_id] & mask_id) == mask_id) { + if ((mapLayers[GEN][Y+NEG_LAYERS][quad_id] & mask_id) == mask_id) { return false; } else { return true; @@ -449,28 +452,28 @@ public void postTrackBreak(Location loc, boolean exp) { return; // should be init'd or this is being improperly called. } - mapLayers[GEN][Y][quad_id] |= mask_id; + mapLayers[GEN][Y+NEG_LAYERS][quad_id] |= mask_id; if (exp) { - if (Y > 0) mapLayers[GEN][Y-1][quad_id] |= mask_id; - if (Y < 255) mapLayers[GEN][Y+1][quad_id] |= mask_id; + if (Y > -NEG_LAYERS) mapLayers[GEN][Y-1][quad_id] |= mask_id; + if (Y < POS_LAYERS) mapLayers[GEN][Y+1][quad_id] |= mask_id; if (X > 0) { int nblock_id = (((X-1) << 4) + Z); int nquad_id = (nblock_id / 64); long nmask_id = (1l << (nblock_id % 64)); - mapLayers[GEN][Y][nquad_id] |= nmask_id; + mapLayers[GEN][Y+NEG_LAYERS][nquad_id] |= nmask_id; } else postTrackBreak(loc.clone().add(-1, 0, 0), false); if (X < 15) { int nblock_id = (((X+1) << 4) + Z); int nquad_id = (nblock_id / 64); long nmask_id = (1l << (nblock_id % 64)); - mapLayers[GEN][Y][nquad_id] |= nmask_id; + mapLayers[GEN][Y+NEG_LAYERS][nquad_id] |= nmask_id; } else postTrackBreak(loc.clone().add(1, 0, 0), false); if (Z > 0) { int nblock_id = (((X) << 4) + (Z-1)); int nquad_id = (nblock_id / 64); long nmask_id = (1l << (nblock_id % 64)); - mapLayers[GEN][Y][nquad_id] |= nmask_id; + mapLayers[GEN][Y+NEG_LAYERS][nquad_id] |= nmask_id; } else postTrackBreak(loc.clone().add(0, 0, -1), false); if (Z < 15) { int nblock_id = (((X) << 4) + (Z+1)); @@ -481,7 +484,7 @@ public void postTrackBreak(Location loc, boolean exp) { } if (Config.isDebug) { HiddenOre.getPlugin().getLogger() - .info("now world " + world + " chunk " + chunk_id + " gent " + mapLayers[GEN][Y][quad_id]); + .info("now world " + world + " chunk " + chunk_id + " gent " + mapLayers[GEN][Y+NEG_LAYERS][quad_id]); } s = System.currentTimeMillis() - s; if (s > 10l) { @@ -527,7 +530,7 @@ public boolean trackBreak(Location loc) { short[] layers = chunks.get(chunk_id); if (layers == null) { // init layers initLayers = System.nanoTime(); - layers = new short[256]; + layers = new short[TOTAL_LAYERS]; chunks.put(chunk_id, layers); initLayers = System.nanoTime() - initLayers; } @@ -547,11 +550,11 @@ public boolean trackBreak(Location loc) { long[][][] mapLayers = mapChunks.get(chunk_id); if (mapLayers == null) { // init layers initMapLayers = System.nanoTime(); - mapLayers = new long[2][256][4]; + mapLayers = new long[2][TOTAL_LAYERS][4]; mapChunks.put(chunk_id, mapLayers); ChunkSnapshot chunkS = chunk.getChunkSnapshot(); - for (int y = 0; y < 256; y++) { + for (int y = -NEG_LAYERS; y < POS_LAYERS; y++) { for (int x = 0; x < 16; x++) { for (int z = 0; z < 16; z++) { //Block b = chunk.getBlock(x, y, z); @@ -561,8 +564,8 @@ public boolean trackBreak(Location loc) { int bloc = ((x << 4) + z); int quad = (block_id / 64); long mask = (1l << (bloc % 64)); - mapLayers[MAP][y][quad] |= mask; // if unset, set. Ignore complements basis. - mapLayers[GEN][y][quad] |= mask; // tracks for "breaks" and "gens". + mapLayers[MAP][y+NEG_LAYERS][quad] |= mask; // if unset, set. Ignore complements basis. + mapLayers[GEN][y+NEG_LAYERS][quad] |= mask; // tracks for "breaks" and "gens". } } } @@ -570,35 +573,35 @@ public boolean trackBreak(Location loc) { initMapLayers = System.nanoTime() - initMapLayers; } - if ((mapLayers[MAP][Y][quad_id] & mask_id) == mask_id) { + if ((mapLayers[MAP][Y+NEG_LAYERS][quad_id] & mask_id) == mask_id) { ret = false; // already broken! } else { ret = true; // new break according to this tracking. - mapLayers[MAP][Y][quad_id] |= mask_id; - mapLayers[GEN][Y][quad_id] |= mask_id; + mapLayers[MAP][Y+NEG_LAYERS][quad_id] |= mask_id; + mapLayers[GEN][Y+NEG_LAYERS][quad_id] |= mask_id; } - spc = mapLayers[MAP][Y][quad_id]; + spc = mapLayers[MAP][Y+NEG_LAYERS][quad_id]; } - if (layers[Y] == 0) { + if (layers[Y+NEG_LAYERS] == 0) { scanLayer = System.nanoTime(); // quick layer scan for air and water for (int x = 0; x < 16; x++) { for (int z = 0; z < 16; z++) { Block b = chunk.getBlock(x, Y, z); if (b.isEmpty() || b.isLiquid()) { - layers[Y]++; + layers[Y+NEG_LAYERS]++; } } } scanLayer = System.nanoTime() - scanLayer; } - if (layers[Y] >= 256) { // done + if (layers[Y+NEG_LAYERS] >= TOTAL_LAYERS) { // done ret = false; } else if (ret) { - layers[Y]++; // represent new break in layer. + layers[Y+NEG_LAYERS]++; // represent new break in layer. ret = true; } if (ret) { @@ -626,7 +629,7 @@ public boolean trackBreak(Location loc) { if (Config.isDebug) { HiddenOre.getPlugin().getLogger() - .info("now world " + world + " chunk " + chunk_id + " layersum " + layers[Y] + " map" + quad_id + ":" + mask_id + "t " + spc); + .info("now world " + world + " chunk " + chunk_id + " layersum " + layers[Y+NEG_LAYERS] + " map" + quad_id + ":" + mask_id + "t " + spc); } s = System.currentTimeMillis() - s; diff --git a/src/main/java/com/github/devotedmc/hiddenore/util/FakePlayer.java b/src/main/java/com/github/devotedmc/hiddenore/util/FakePlayer.java index 8bb7748..da895a6 100644 --- a/src/main/java/com/github/devotedmc/hiddenore/util/FakePlayer.java +++ b/src/main/java/com/github/devotedmc/hiddenore/util/FakePlayer.java @@ -1,15 +1,27 @@ package com.github.devotedmc.hiddenore.util; +import com.destroystokyo.paper.ClientOption; +import com.destroystokyo.paper.Title; +import com.destroystokyo.paper.block.TargetBlockInfo; +import com.destroystokyo.paper.block.TargetBlockInfo.FluidMode; +import com.destroystokyo.paper.entity.TargetEntityInfo; +import com.destroystokyo.paper.profile.PlayerProfile; import java.net.InetSocketAddress; +import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.ListIterator; +import java.util.Locale; import java.util.Map; import java.util.Set; import java.util.UUID; - +import javax.annotation.Nonnull; +import javax.annotation.Nullable; +import net.kyori.adventure.identity.Identity; +import net.kyori.adventure.text.Component; +import net.md_5.bungee.api.chat.BaseComponent; import org.bukkit.Chunk; import org.bukkit.DyeColor; import org.bukkit.Effect; @@ -39,21 +51,13 @@ import org.bukkit.block.data.BlockData; import org.bukkit.conversations.Conversation; import org.bukkit.conversations.ConversationAbandonedEvent; -import org.bukkit.entity.Entity; -import org.bukkit.entity.EntityCategory; -import org.bukkit.entity.EntityType; -import org.bukkit.entity.Firework; -import org.bukkit.entity.HumanEntity; -import org.bukkit.entity.Item; -import org.bukkit.entity.Player; -import org.bukkit.entity.Pose; -import org.bukkit.entity.Projectile; -import org.bukkit.entity.Villager; +import org.bukkit.entity.*; import org.bukkit.entity.memory.MemoryKey; import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason; import org.bukkit.event.entity.EntityDamageEvent; import org.bukkit.event.inventory.InventoryCloseEvent.Reason; import org.bukkit.event.inventory.InventoryType; +import org.bukkit.event.player.PlayerKickEvent; import org.bukkit.event.player.PlayerResourcePackStatusEvent.Status; import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; import org.bukkit.inventory.EntityEquipment; @@ -80,15 +84,6 @@ import org.bukkit.util.RayTraceResult; import org.bukkit.util.Vector; -import com.destroystokyo.paper.ClientOption; -import com.destroystokyo.paper.Title; -import com.destroystokyo.paper.block.TargetBlockInfo; -import com.destroystokyo.paper.block.TargetBlockInfo.FluidMode; -import com.destroystokyo.paper.entity.TargetEntityInfo; -import com.destroystokyo.paper.profile.PlayerProfile; - -import net.md_5.bungee.api.chat.BaseComponent; - public class FakePlayer implements Player { private final ItemStack inHand; private final Location location; @@ -128,12 +123,12 @@ public ItemStack getItem(int index) { @Override public HashMap addItem(ItemStack...items) throws IllegalArgumentException { - return null; + return new HashMap<>(); } @Override public HashMap removeItem(ItemStack...items) throws IllegalArgumentException { - return null; + return new HashMap<>(); } @Override @@ -181,12 +176,12 @@ public boolean containsAtLeast(ItemStack item, int amount) { @Override public HashMap all(Material material) throws IllegalArgumentException { - return null; + return new HashMap<>(); } @Override public HashMap all(ItemStack item) { - return null; + return new HashMap<>(); } @Override @@ -220,14 +215,19 @@ public void clear(int index) { public void clear() { } + @Override + public int close() { + return 0; + } + @Override public List getViewers() { - return null; + return new ArrayList<>(); } @Override public InventoryType getType() { - return null; + return InventoryType.PLAYER; } @Override @@ -441,6 +441,11 @@ public boolean isSleeping() { return false; } + @Override + public boolean isClimbing() { + return false; + } + @Override public int getSleepTicks() { return 0; @@ -598,6 +603,11 @@ public boolean hasLineOfSight(Entity other) { return false; } + @Override + public boolean hasLineOfSight(@Nonnull Location location) { + return false; + } + @Override public boolean getRemoveWhenFarAway() { @@ -683,6 +693,11 @@ public AttributeInstance getAttribute(Attribute attribute) { return null; } + @Override + public void registerAttribute(@Nonnull Attribute attribute) { + + } + @Override public Location getLocation() { return location; @@ -762,6 +777,36 @@ public void setFireTicks(int ticks) { } + @Override + public void setVisualFire(boolean bl) { + + } + + @Override + public boolean isVisualFire() { + return false; + } + + @Override + public int getFreezeTicks() { + return 0; + } + + @Override + public int getMaxFreezeTicks() { + return 0; + } + + @Override + public void setFreezeTicks(int i) { + + } + + @Override + public boolean isFrozen() { + return false; + } + @Override public void remove() { @@ -882,6 +927,17 @@ public void setCustomName(String name) { } + @Override + public @Nullable + Component customName() { + return null; + } + + @Override + public void customName(@Nullable Component component) { + + } + @Override public String getCustomName() { @@ -1168,6 +1224,21 @@ public Set getListeningPluginChannels() { return null; } + @Override + public @Nonnull Identity identity() { + return Player.super.identity(); + } + + @Override + public @Nonnull Component displayName() { + return Component.text("Spoof"); + } + + @Override + public void displayName(@Nullable Component component) { + + } + @Override public String getDisplayName() { return "Spoof"; @@ -1178,6 +1249,26 @@ public void setDisplayName(String name) { } + @Override + public void playerListName(@Nullable Component component) { + + } + + @Override + public @Nullable Component playerListName() { + return null; + } + + @Override + public @Nullable Component playerListHeader() { + return null; + } + + @Override + public @Nullable Component playerListFooter() { + return null; + } + @Override public String getPlayerListName() { return "Spoof"; @@ -1215,6 +1306,17 @@ public void kickPlayer(String message) { } + @Override + public void kick(@Nullable Component component) { + + } + + @Override + public void kick(@Nullable Component component, + PlayerKickEvent.Cause cause) { + + } + @Override public void chat(String msg) { @@ -1299,21 +1401,36 @@ public void playEffect(Location loc, Effect effect, T data) { } + @Override + public boolean breakBlock(@Nonnull Block block) { + return false; + } + @Override public void sendBlockChange(Location loc, Material material, byte data) { } @Override - public boolean sendChunkChange(Location loc, int sx, int sy, int sz, byte[] data) { + public void sendSignChange(@Nonnull Location location, + @Nullable List list) throws IllegalArgumentException { - return false; } - /*@Override - public void sendBlockChange(Location loc, int material, byte data) { + @Override + public void sendSignChange(@Nonnull Location location, + @Nullable List list, + @Nonnull DyeColor dyeColor) throws IllegalArgumentException { + + } + + @Override + public void sendSignChange(@Nonnull Location location, + @Nullable List list, + @Nonnull DyeColor dyeColor, boolean bl) + throws IllegalArgumentException { - }*/ + } @Override public void sendSignChange(Location loc, String[] lines) throws IllegalArgumentException { @@ -1544,6 +1661,36 @@ public void setFoodLevel(int value) { } + @Override + public int getSaturatedRegenRate() { + return 0; + } + + @Override + public void setSaturatedRegenRate(int i) { + + } + + @Override + public int getUnsaturatedRegenRate() { + return 0; + } + + @Override + public void setUnsaturatedRegenRate(int i) { + + } + + @Override + public int getStarvationRate() { + return 0; + } + + @Override + public void setStarvationRate(int i) { + + } + @Override public Location getBedSpawnLocation() { @@ -1597,6 +1744,21 @@ public boolean canSee(Player player) { return false; } + @Override + public void hideEntity(Plugin plugin, Entity entity) { + + } + + @Override + public void showEntity(Plugin plugin, Entity entity) { + + } + + @Override + public boolean canSee(Entity entity) { + return false; + } + @Override public boolean isOnGround() { @@ -1679,6 +1841,16 @@ public double getHealthScale() { return 0; } + @Override + public void sendHealthUpdate(double v, int i, float v1) { + + } + + @Override + public void sendHealthUpdate() { + + } + @Override public Entity getSpectatorTarget() { @@ -1773,6 +1945,16 @@ public Spigot spigot() { return null; } + @Override + public Component name() { + return null; + } + + @Override + public Component teamDisplayName() { + return null; + } + @Override public boolean isSilent() { return false; @@ -1824,6 +2006,16 @@ public boolean isHandRaised() { return false; } + @Override + public @Nonnull EquipmentSlot getHandRaised() { + return null; + } + + @Override + public @Nullable ItemStack getItemInUse() { + return null; + } + @Override public InventoryView openMerchant(Merchant arg0, boolean arg1) { return null; @@ -1831,17 +2023,22 @@ public InventoryView openMerchant(Merchant arg0, boolean arg1) { @Override public void setCooldown(Material arg0, int arg1) { - + + } + + @Override + public boolean isDeeplySleeping() { + return false; } @Override public void setShoulderEntityLeft(Entity arg0) { - + } @Override public void setShoulderEntityRight(Entity arg0) { - + } @Override @@ -1896,7 +2093,7 @@ public boolean removeScoreboardTag(String arg0) { @Override public void setPortalCooldown(int arg0) { - + } @Override @@ -1911,32 +2108,37 @@ public String getLocale() { @Override public void playSound(Location arg0, Sound arg1, SoundCategory arg2, float arg3, float arg4) { - + } @Override public void playSound(Location arg0, String arg1, SoundCategory arg2, float arg3, float arg4) { - + } @Override public void sendTitle(String arg0, String arg1, int arg2, int arg3, int arg4) { - + } @Override public void setResourcePack(String arg0, byte[] arg1) { - + } @Override public void stopSound(Sound arg0, SoundCategory arg1) { - + } @Override public void stopSound(String arg0, SoundCategory arg1) { - + + } + + @Override + public void stopAllSounds() { + } @Override @@ -1951,12 +2153,22 @@ public boolean isSwimming() { @Override public void setSwimming(boolean arg0) { - + } @Override public void sendBlockChange(Location arg0, BlockData arg1) { - + + } + + @Override + public void sendBlockDamage(@Nonnull Location location, float f) { + + } + + @Override + public void sendEquipmentChange(LivingEntity livingEntity, EquipmentSlot equipmentSlot, ItemStack itemStack) { + } @Override @@ -2008,7 +2220,7 @@ public boolean sleep(Location location, boolean force) { @Override public void wakeup(boolean setSpawnLocation) { // TODO Auto-generated method stub - + } @Override @@ -2074,7 +2286,7 @@ public T getMemory(MemoryKey memoryKey) { @Override public void setMemory(MemoryKey memoryKey, T memoryValue) { // TODO Auto-generated method stub - + } @Override @@ -2086,7 +2298,7 @@ public double getAbsorptionAmount() { @Override public void setAbsorptionAmount(double arg0) { // TODO Auto-generated method stub - + } @Override @@ -2098,7 +2310,7 @@ public BoundingBox getBoundingBox() { @Override public void setRotation(float yaw, float pitch) { // TODO Auto-generated method stub - + } @Override @@ -2122,7 +2334,15 @@ public PersistentDataContainer getPersistentDataContainer() { @Override public void sendSignChange(Location loc, String[] lines, DyeColor dyeColor) throws IllegalArgumentException { // TODO Auto-generated method stub - + + } + + @Override + public void sendSignChange(@Nonnull Location location, + @Nullable String[] strings, + @Nonnull DyeColor dyeColor, boolean bl) + throws IllegalArgumentException { + } @Override @@ -2131,10 +2351,20 @@ public int getClientViewDistance() { return 0; } + @Override + public @Nonnull Locale locale() { + return Locale.ENGLISH; + } + + @Override + public int getPing() { + return 0; + } + @Override public void openBook(ItemStack book) { // TODO Auto-generated method stub - + } @Override @@ -2158,19 +2388,19 @@ public Set getDiscoveredRecipes() { @Override public void attack(Entity target) { // TODO Auto-generated method stub - + } @Override public void swingMainHand() { // TODO Auto-generated method stub - + } @Override public void swingOffHand() { // TODO Auto-generated method stub - + } @Override @@ -2182,19 +2412,19 @@ public Set getCollidableExemptions() { @Override public void sendExperienceChange(float progress) { // TODO Auto-generated method stub - + } @Override public void sendExperienceChange(float progress, int level) { // TODO Auto-generated method stub - + } @Override public void closeInventory(Reason arg0) { // TODO Auto-generated method stub - + } @Override @@ -2236,7 +2466,17 @@ public InventoryView openLoom(Location arg0, boolean arg1) { @Override public void openSign(Sign arg0) { // TODO Auto-generated method stub - + + } + + @Override + public void showDemoScreen() { + + } + + @Override + public boolean isAllowingServerListings() { + return false; } @Override @@ -2266,7 +2506,7 @@ public Entity releaseRightShoulderEntity() { @Override public void clearActiveItem() { // TODO Auto-generated method stub - + } @Override @@ -2368,55 +2608,75 @@ public boolean isJumping() { @Override public void playPickupItemAnimation(Item arg0, int arg1) { // TODO Auto-generated method stub - + } @Override public void setArrowCooldown(int arg0) { // TODO Auto-generated method stub - + } @Override public void setArrowsInBody(int arg0) { // TODO Auto-generated method stub - + + } + + @Override + public int getBeeStingerCooldown() { + return 0; + } + + @Override + public void setBeeStingerCooldown(int i) { + + } + + @Override + public int getBeeStingersInBody() { + return 0; + } + + @Override + public void setBeeStingersInBody(int i) { + } @Override public void setArrowsStuck(int arg0) { // TODO Auto-generated method stub - + } @Override public void setHurtDirection(float arg0) { // TODO Auto-generated method stub - + } @Override public void setInvisible(boolean arg0) { // TODO Auto-generated method stub - + } @Override public void setJumping(boolean arg0) { // TODO Auto-generated method stub - + } @Override public void setKiller(Player arg0) { // TODO Auto-generated method stub - + } @Override public void setShieldBlockingDelay(int arg0) { // TODO Auto-generated method stub - + } @Override @@ -2494,19 +2754,19 @@ public boolean isTicking() { @Override public void sendMessage(UUID arg0, String arg1) { // TODO Auto-generated method stub - + } @Override public void sendMessage(UUID arg0, String[] arg1) { // TODO Auto-generated method stub - + } @Override public void sendRawMessage(UUID arg0, String arg1) { // TODO Auto-generated method stub - + } @Override @@ -2545,6 +2805,21 @@ public Firework boostElytra(ItemStack arg0) { return null; } + @Override + public void sendOpLevel(byte b) { + + } + + @Override + public @Nonnull Set getTrackedPlayers() { + return null; + } + + @Override + public boolean spawnAt(Location location, SpawnReason spawnReason) { + return false; + } + @Override public boolean getAffectsSpawning() { // TODO Auto-generated method stub @@ -2602,7 +2877,7 @@ public int getViewDistance() { @Override public void giveExp(int arg0, boolean arg1) { // TODO Auto-generated method stub - + } @Override @@ -2614,67 +2889,80 @@ public boolean hasResourcePack() { @Override public void hideTitle() { // TODO Auto-generated method stub - + } @Override public void resetCooldown() { // TODO Auto-generated method stub - + } @Override public void sendActionBar(String arg0) { // TODO Auto-generated method stub - + } @Override public void sendActionBar(BaseComponent... arg0) { // TODO Auto-generated method stub - + } @Override public void sendActionBar(char arg0, String arg1) { // TODO Auto-generated method stub - + } @Override public void sendTitle(Title arg0) { // TODO Auto-generated method stub - + } @Override public void setAffectsSpawning(boolean arg0) { // TODO Auto-generated method stub - + } @Override public void setPlayerListHeaderFooter(BaseComponent[] arg0, BaseComponent[] arg1) { // TODO Auto-generated method stub - + } @Override public void setPlayerListHeaderFooter(BaseComponent arg0, BaseComponent arg1) { // TODO Auto-generated method stub - + } @Override public void setPlayerProfile(PlayerProfile arg0) { // TODO Auto-generated method stub - + } @Override public void setResourcePack(String arg0, String arg1) { // TODO Auto-generated method stub - + + } + + @Override + public void setResourcePack(@Nonnull String string, + @Nonnull String string2, boolean bl) { + + } + + @Override + public void setResourcePack(@Nonnull String string, + @Nonnull String string2, boolean bl, + @Nullable Component component) { + } @Override @@ -2701,6 +2989,26 @@ public void setViewDistance(int arg0) { } + @Override + public int getNoTickViewDistance() { + return 0; + } + + @Override + public void setNoTickViewDistance(int i) { + + } + + @Override + public int getSendViewDistance() { + return 0; + } + + @Override + public void setSendViewDistance(int i) { + + } + @Override public void showTitle(BaseComponent[] arg0) { // TODO Auto-generated method stub diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index a7adcb5..50e9947 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -4,7 +4,7 @@ main: com.github.devotedmc.hiddenore.HiddenOre author: Soerxpso authors: [ProgrammerDan] load: STARTUP -api-version: 1.13 +api-version: 1.17 website: https://www.github.com/DevotedMC/HiddenOre description: HiddenOre allows the complete disguising of ores from players by not generating them in the first place, instead using a probability model to generate configurable ore layouts in response to player mining. commands: