From 2456e8b91d12021825698b212f1875120036f5a6 Mon Sep 17 00:00:00 2001
From: sisby-folk
Date: Mon, 15 May 2023 19:20:09 +1000
Subject: [PATCH] remove all items and item changes
---
.../main/java/hunternif/mc/api/AtlasAPI.java | 38 +----
.../main/java/hunternif/mc/api/MarkerAPI.java | 3 +-
.../main/java/hunternif/mc/api/TileAPI.java | 6 +-
.../mc/impl/atlas/AntiqueAtlasConfig.java | 4 -
.../mc/impl/atlas/AntiqueAtlasMod.java | 7 -
.../mc/impl/atlas/AntiqueAtlasModClient.java | 5 -
.../hunternif/mc/impl/atlas/ClientProxy.java | 7 +-
.../mc/impl/atlas/client/OverlayRenderer.java | 11 +-
.../mc/impl/atlas/client/gui/GuiAtlas.java | 30 ++--
.../mc/impl/atlas/core/AtlasData.java | 3 +-
.../impl/atlas/core/PlayerEventHandler.java | 13 +-
.../mc/impl/atlas/core/TileDataHandler.java | 13 --
.../impl/atlas/core/watcher/DeathWatcher.java | 9 +-
.../atlas/event/RecipeCraftedCallback.java | 25 ----
.../atlas/event/RecipeCraftedHandler.java | 26 ----
.../mc/impl/atlas/item/AntiqueAtlasItems.java | 40 ------
.../mc/impl/atlas/item/AtlasItem.java | 103 -------------
.../mc/impl/atlas/item/EmptyAtlasItem.java | 51 -------
.../impl/atlas/item/RecipeAtlasCloning.java | 113 ---------------
.../impl/atlas/item/RecipeAtlasCombining.java | 136 ------------------
.../mc/impl/atlas/marker/MarkersData.java | 3 +-
.../impl/atlas/marker/MarkersDataHandler.java | 13 --
.../atlas/marker/NetherPortalWatcher.java | 13 +-
.../atlas/mixin/HeldItemRendererMixin.java | 132 -----------------
.../MixinCartographyTableScreenHandler.java | 66 ---------
.../mixin/MixinClientPlayNetworkHandler.java | 2 +
.../atlas/mixin/MixinCraftingResultSlot.java | 38 -----
.../dev/MixinCartographyTableHandlerSlot.java | 42 ------
.../MixinCartographyTableHandlerSlot.java | 43 ------
.../mixinhooks/CartographyTableHooks.java | 51 -------
.../c2s/play/DeleteMarkerC2SPacket.java | 2 +-
.../play/PutBrowsingPositionC2SPacket.java | 2 +-
.../packet/c2s/play/PutMarkerC2SPacket.java | 2 +-
.../packet/c2s/play/PutTileC2SPacket.java | 2 +-
.../resources/antiqueatlas-common.mixins.json | 11 +-
.../assets/antiqueatlas/lang/en_us.json | 1 -
.../assets/antiqueatlas/lang/es_es.json | 1 -
.../assets/antiqueatlas/lang/ru_ru.json | 1 -
.../assets/antiqueatlas/lang/uk_ua.json | 1 -
gradle.properties | 2 +-
40 files changed, 41 insertions(+), 1030 deletions(-)
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedCallback.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedHandler.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/item/AntiqueAtlasItems.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/item/AtlasItem.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/item/EmptyAtlasItem.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCloning.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCombining.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/mixin/HeldItemRendererMixin.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCartographyTableScreenHandler.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCraftingResultSlot.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/mixin/dev/MixinCartographyTableHandlerSlot.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/mixin/prod/MixinCartographyTableHandlerSlot.java
delete mode 100644 common/src/main/java/hunternif/mc/impl/atlas/mixinhooks/CartographyTableHooks.java
diff --git a/common/src/main/java/hunternif/mc/api/AtlasAPI.java b/common/src/main/java/hunternif/mc/api/AtlasAPI.java
index a4a6de5d7..95d16eb05 100644
--- a/common/src/main/java/hunternif/mc/api/AtlasAPI.java
+++ b/common/src/main/java/hunternif/mc/api/AtlasAPI.java
@@ -1,18 +1,8 @@
package hunternif.mc.api;
-import hunternif.mc.impl.atlas.AntiqueAtlasMod;
import hunternif.mc.impl.atlas.api.impl.MarkerApiImpl;
import hunternif.mc.impl.atlas.api.impl.TileApiImpl;
-import hunternif.mc.impl.atlas.item.AtlasItem;
import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.Identifier;
-import net.minecraft.util.registry.Registry;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
/**
* Use this class to obtain a reference to the APIs.
@@ -32,10 +22,6 @@ public static int getVersion() {
return VERSION;
}
- public static Item getAtlasItem() {
- return Registry.ITEM.get(new Identifier("antiqueatlas:antique_atlas"));
- }
-
/**
* API for biomes and custom tiles (i.e. dungeons, towns etc).
*/
@@ -50,27 +36,7 @@ public static MarkerAPI getMarkerAPI() {
return markers;
}
- /**
- * Convenience method that returns a list of atlas IDs for all atlas items
- * the player is currently carrying.
- **/
- public static List getPlayerAtlases(PlayerEntity player) {
- if (!AntiqueAtlasMod.CONFIG.itemNeeded) {
- return Collections.singletonList(player.getUuid().hashCode());
- }
-
- List list = new ArrayList<>();
- for (ItemStack stack : player.getInventory().main) {
- if (!stack.isEmpty() && stack.getItem() instanceof AtlasItem) {
- list.add(AtlasItem.getAtlasID(stack));
- }
- }
- for (ItemStack stack : player.getInventory().offHand) {
- if (!stack.isEmpty() && stack.getItem() instanceof AtlasItem) {
- list.add(AtlasItem.getAtlasID(stack));
- }
- }
-
- return list;
+ public static int getPlayerAtlasId(PlayerEntity player) {
+ return player.getUuid().hashCode();
}
}
diff --git a/common/src/main/java/hunternif/mc/api/MarkerAPI.java b/common/src/main/java/hunternif/mc/api/MarkerAPI.java
index a4a16a265..4a7faa791 100644
--- a/common/src/main/java/hunternif/mc/api/MarkerAPI.java
+++ b/common/src/main/java/hunternif/mc/api/MarkerAPI.java
@@ -27,8 +27,7 @@ public interface MarkerAPI {
* @param world
* @param visibleAhead whether the marker should appear visible even if
* the player hasn't yet discovered that area.
- * @param atlasID the ID of the atlas you want to put marker in. Equal
- * to ItemStack damage for ItemAtlas.
+ * @param atlasID the ID of the atlas you want to put marker in.
* @param marker name of your custom marker type.
* @param label text label to be displayed on mouseover.
* @param x block coordinate
diff --git a/common/src/main/java/hunternif/mc/api/TileAPI.java b/common/src/main/java/hunternif/mc/api/TileAPI.java
index a4d4f3558..c59d28318 100644
--- a/common/src/main/java/hunternif/mc/api/TileAPI.java
+++ b/common/src/main/java/hunternif/mc/api/TileAPI.java
@@ -25,8 +25,7 @@ public interface TileAPI {
*
*
* @param world dimension the chunk is located in.
- * @param atlasID the ID of the atlas you want to put marker in. Equal
- * to ItemStack damage for ItemAtlas.
+ * @param atlasID the ID of the atlas you want to put marker in.
* @param tile the identifier of the new tile
* @param chunkX x chunk coordinate. (block coordinate >> 4)
* @param chunkZ z chunk coordinate. (block coordinate >> 4)
@@ -42,8 +41,7 @@ public interface TileAPI {
*
*
* @param world dimension the chunk is located in.
- * @param atlasID the ID of the atlas you want to put marker in. Equal
- * to ItemStack damage for ItemAtlas.
+ * @param atlasID the ID of the atlas you want to put marker in.
* @param chunkX x chunk coordinate. (block coordinate >> 4)
* @param chunkZ z chunk coordinate. (block coordinate >> 4)
* @return the identifier of the requested tile
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasConfig.java b/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasConfig.java
index ac77754dc..8ffd7c7f6 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasConfig.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasConfig.java
@@ -25,10 +25,6 @@ public class AntiqueAtlasConfig implements ConfigData {
@Comment("Whether to add global markers for Nether Portals.")
public boolean autoNetherPortalMarkers = true;
- @ConfigEntry.Category("gameplay")
- @Comment("Player will need to craft atlas item to use atlas.")
- public boolean itemNeeded = true;
-
//============ Interface settings =============
@ConfigEntry.Category("userInterface")
public boolean doScaleMarkers = false;
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasMod.java b/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasMod.java
index c7b732118..9e9fbe0d9 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasMod.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasMod.java
@@ -7,9 +7,6 @@
import hunternif.mc.impl.atlas.core.PlayerEventHandler;
import hunternif.mc.impl.atlas.core.TileDataHandler;
import hunternif.mc.impl.atlas.core.scanning.WorldScanner;
-import hunternif.mc.impl.atlas.event.RecipeCraftedCallback;
-import hunternif.mc.impl.atlas.event.RecipeCraftedHandler;
-import hunternif.mc.impl.atlas.item.AntiqueAtlasItems;
import hunternif.mc.impl.atlas.marker.GlobalMarkersDataHandler;
import hunternif.mc.impl.atlas.marker.MarkersDataHandler;
import hunternif.mc.impl.atlas.mixinhooks.NewPlayerConnectionCallback;
@@ -57,8 +54,6 @@ public static void init() {
AutoConfig.register(AntiqueAtlasConfig.class, JanksonConfigSerializer::new);
CONFIG = AutoConfig.getConfigHolder(AntiqueAtlasConfig.class).getConfig();
- AntiqueAtlasItems.register();
-
AntiqueAtlasNetworking.registerC2SListeners();
NewServerConnectionCallback.EVENT.register(tileData::onClientConnectedToServer);
@@ -72,8 +67,6 @@ public static void init() {
LifecycleEvent.SERVER_LEVEL_LOAD.register(globalMarkersData::onWorldLoad);
LifecycleEvent.SERVER_LEVEL_LOAD.register(globalTileData::onWorldLoad);
- RecipeCraftedCallback.EVENT.register(new RecipeCraftedHandler());
-
StructurePieceAddedCallback.EVENT.register(StructureHandler::resolve);
StructureAddedCallback.EVENT.register(StructureHandler::resolve);
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasModClient.java b/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasModClient.java
index 1473b45f9..19673172f 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasModClient.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/AntiqueAtlasModClient.java
@@ -5,7 +5,6 @@
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.client.MinecraftClient;
-import net.minecraft.item.ItemStack;
@Environment(EnvType.CLIENT)
public class AntiqueAtlasModClient {
@@ -20,10 +19,6 @@ public static GuiAtlas getAtlasGUI() {
return guiAtlas;
}
- public static void openAtlasGUI(ItemStack stack) {
- openAtlasGUI(getAtlasGUI().prepareToOpen(stack));
- }
-
public static void openAtlasGUI() {
openAtlasGUI(getAtlasGUI().prepareToOpen());
}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/ClientProxy.java b/common/src/main/java/hunternif/mc/impl/atlas/ClientProxy.java
index f06030121..d974eb112 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/ClientProxy.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/ClientProxy.java
@@ -49,11 +49,8 @@ public void initClient() {
type.initMips();
}
- if (!AntiqueAtlasMod.CONFIG.itemNeeded) {
- KeyHandler.registerBindings();
- ClientTickEvent.CLIENT_POST.register(KeyHandler::onClientTick);
- }
-
+ KeyHandler.registerBindings();
+ ClientTickEvent.CLIENT_POST.register(KeyHandler::onClientTick);
}
/**
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/client/OverlayRenderer.java b/common/src/main/java/hunternif/mc/impl/atlas/client/OverlayRenderer.java
index 9b1b04981..9f5e9178c 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/client/OverlayRenderer.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/client/OverlayRenderer.java
@@ -1,12 +1,11 @@
package hunternif.mc.impl.atlas.client;
import com.mojang.blaze3d.systems.RenderSystem;
+import hunternif.mc.api.AtlasAPI;
import hunternif.mc.api.client.AtlasClientAPI;
import hunternif.mc.impl.atlas.AntiqueAtlasMod;
-import hunternif.mc.impl.atlas.item.AntiqueAtlasItems;
import hunternif.mc.impl.atlas.client.gui.GuiAtlas;
import hunternif.mc.impl.atlas.core.WorldData;
-import hunternif.mc.impl.atlas.item.AtlasItem;
import hunternif.mc.impl.atlas.marker.DimensionMarkersData;
import hunternif.mc.impl.atlas.marker.Marker;
import hunternif.mc.impl.atlas.marker.MarkersData;
@@ -20,7 +19,6 @@
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.item.ItemStack;
import net.minecraft.util.math.Quaternion;
import net.minecraft.util.math.Vec3d;
import net.minecraft.util.math.Vec3f;
@@ -40,7 +38,7 @@ public class OverlayRenderer extends DrawableHelper {
private PlayerEntity player;
private World world;
- public void drawOverlay(MatrixStack matrices, VertexConsumerProvider vertexConsumer, int light, ItemStack atlas) {
+ public void drawOverlay(MatrixStack matrices, VertexConsumerProvider vertexConsumer, int light) {
// Overlay must close if Atlas GUI is opened
if (MinecraftClient.getInstance().currentScreen instanceof GuiAtlas) {
return;
@@ -53,10 +51,7 @@ public void drawOverlay(MatrixStack matrices, VertexConsumerProvider vertexConsu
this.player = MinecraftClient.getInstance().player;
this.world = MinecraftClient.getInstance().world;
- if (!atlas.isEmpty() && atlas.getItem() == AntiqueAtlasItems.ATLAS.getOrNull()) {
- int atlasID = AtlasItem.getAtlasID(atlas);
- drawMinimap(matrices, atlasID, vertexConsumer, light);
- }
+ drawMinimap(matrices, AtlasAPI.getPlayerAtlasId(player), vertexConsumer, light);
}
private void drawMinimap(MatrixStack matrices, int atlasID, VertexConsumerProvider buffer, int light) {
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/client/gui/GuiAtlas.java b/common/src/main/java/hunternif/mc/impl/atlas/client/gui/GuiAtlas.java
index 42bbcada7..03a9c4270 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/client/gui/GuiAtlas.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/client/gui/GuiAtlas.java
@@ -1,6 +1,7 @@
package hunternif.mc.impl.atlas.client.gui;
import com.mojang.blaze3d.systems.RenderSystem;
+import hunternif.mc.api.AtlasAPI;
import hunternif.mc.api.client.AtlasClientAPI;
import hunternif.mc.impl.atlas.AntiqueAtlasMod;
import hunternif.mc.impl.atlas.client.*;
@@ -12,7 +13,6 @@
import hunternif.mc.impl.atlas.core.WorldData;
import hunternif.mc.impl.atlas.event.MarkerClickedCallback;
import hunternif.mc.impl.atlas.event.MarkerHoveredCallback;
-import hunternif.mc.impl.atlas.item.AtlasItem;
import hunternif.mc.impl.atlas.marker.DimensionMarkersData;
import hunternif.mc.impl.atlas.marker.Marker;
import hunternif.mc.impl.atlas.marker.MarkersData;
@@ -27,7 +27,6 @@
import net.minecraft.client.sound.PositionedSoundInstance;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.item.ItemStack;
import net.minecraft.sound.SoundCategory;
import net.minecraft.sound.SoundEvents;
import net.minecraft.text.Text;
@@ -35,7 +34,6 @@
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.ChunkPos;
import net.minecraft.util.math.MathHelper;
-import net.minecraft.util.math.Vec3f;
import org.lwjgl.glfw.GLFW;
import org.lwjgl.opengl.GL11;
@@ -279,7 +277,6 @@ public void onExitState() {
// Misc stuff ==============================================================
private PlayerEntity player;
- private ItemStack stack;
private WorldData biomeData;
/**
@@ -346,10 +343,8 @@ public boolean isEnabled() {
};
addChild(btnExportPng).offsetGuiCoords(300, 75);
btnExportPng.addListener(button -> {
- if (stack != null || !AntiqueAtlasMod.CONFIG.itemNeeded) {
- exportThread = new Thread(() -> exportImage(getAtlasID()), "Atlas file export thread");
- exportThread.start();
- }
+ exportThread = new Thread(() -> exportImage(getAtlasID()), "Atlas file export thread");
+ exportThread.start();
});
btnMarker = new GuiBookmarkButton(0, Textures.ICON_ADD_MARKER, Text.translatable("gui.antiqueatlas.addMarker"));
@@ -358,7 +353,7 @@ public boolean isEnabled() {
if (state.is(PLACING_MARKER)) {
selectedButton = null;
state.switchTo(NORMAL);
- } else if (stack != null || !AntiqueAtlasMod.CONFIG.itemNeeded) {
+ } else {
selectedButton = button;
state.switchTo(PLACING_MARKER);
@@ -392,7 +387,7 @@ public boolean isEnabled() {
if (state.is(DELETING_MARKER)) {
selectedButton = null;
state.switchTo(NORMAL);
- } else if (stack != null || !AntiqueAtlasMod.CONFIG.itemNeeded) {
+ } else {
selectedButton = button;
state.switchTo(DELETING_MARKER);
}
@@ -403,7 +398,7 @@ public boolean isEnabled() {
selectedButton = null;
if (state.is(HIDING_MARKERS)) {
state.switchTo(NORMAL);
- } else if (stack != null || !AntiqueAtlasMod.CONFIG.itemNeeded) {
+ } else {
selectedButton = null;
state.switchTo(HIDING_MARKERS);
}
@@ -423,12 +418,6 @@ public boolean isEnabled() {
state.switchTo(NORMAL);
}
- public GuiAtlas prepareToOpen(ItemStack stack) {
- this.stack = stack;
-
- return prepareToOpen();
- }
-
public void openMarkerFinalizer(Text name) {
markerFinalizer.setMarkerData(player.getEntityWorld(),
getAtlasID(),
@@ -913,8 +902,7 @@ public void render(MatrixStack matrices, int mouseX, int mouseY, float par3) {
// RenderSystem.alphaFunc(GL11.GL_GREATER, 0); // So light detail on tiles is visible
Textures.BOOK.draw(matrices, getGuiX(), getGuiY());
- if ((stack == null && AntiqueAtlasMod.CONFIG.itemNeeded) || biomeData == null)
- return;
+ if (biomeData == null) return;
if (state.is(DELETING_MARKER)) {
RenderSystem.setShaderColor(1, 1, 1, 0.5f);
@@ -1240,9 +1228,9 @@ private double getIconScale() {
}
/**
- * Returns atlas id based on "itemNeeded" option
+ * Returns atlas id
*/
private int getAtlasID() {
- return AntiqueAtlasMod.CONFIG.itemNeeded ? AtlasItem.getAtlasID(stack) : player.getUuid().hashCode();
+ return AtlasAPI.getPlayerAtlasId(player);
}
}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/core/AtlasData.java b/common/src/main/java/hunternif/mc/impl/atlas/core/AtlasData.java
index 1fef75818..2952730e3 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/core/AtlasData.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/core/AtlasData.java
@@ -152,8 +152,7 @@ public boolean isSyncedToPlayer(PlayerEntity player) {
}
/**
- * Send all data to the player in several zipped packets. Called once
- * during the first run of ItemAtlas.onUpdate().
+ * Send all data to the player in several zipped packets. Called once on login.
*/
public void syncToPlayer(int atlasID, PlayerEntity player) {
NbtCompound data = new NbtCompound();
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/core/PlayerEventHandler.java b/common/src/main/java/hunternif/mc/impl/atlas/core/PlayerEventHandler.java
index 7fc0f3663..e1a48f0a9 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/core/PlayerEventHandler.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/core/PlayerEventHandler.java
@@ -1,5 +1,6 @@
package hunternif.mc.impl.atlas.core;
+import hunternif.mc.api.AtlasAPI;
import hunternif.mc.impl.atlas.AntiqueAtlasMod;
import hunternif.mc.impl.atlas.marker.MarkersData;
import net.minecraft.entity.player.PlayerEntity;
@@ -9,7 +10,7 @@
public class PlayerEventHandler {
public static void onPlayerLogin(ServerPlayerEntity player) {
World world = player.world;
- int atlasID = player.getUuid().hashCode();
+ int atlasID = AtlasAPI.getPlayerAtlasId(player);
AtlasData data = AntiqueAtlasMod.tileData.getData(atlasID, world);
// On the player join send the map from the server to the client:
@@ -25,12 +26,10 @@ public static void onPlayerLogin(ServerPlayerEntity player) {
}
public static void onPlayerTick(PlayerEntity player) {
- if (!AntiqueAtlasMod.CONFIG.itemNeeded) {
- // TODO Can we move world scanning to the server in this case as well?
- AtlasData data = AntiqueAtlasMod.tileData.getData(
- player.getUuid().hashCode(), player.world);
+ // TODO Can we move world scanning to the server in this case as well?
+ AtlasData data = AntiqueAtlasMod.tileData.getData(
+ AtlasAPI.getPlayerAtlasId(player), player.world);
- AntiqueAtlasMod.worldScanner.updateAtlasAroundPlayer(data, player);
- }
+ AntiqueAtlasMod.worldScanner.updateAtlasAroundPlayer(data, player);
}
}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/core/TileDataHandler.java b/common/src/main/java/hunternif/mc/impl/atlas/core/TileDataHandler.java
index 41fffdd8d..2c25d19e4 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/core/TileDataHandler.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/core/TileDataHandler.java
@@ -1,7 +1,5 @@
package hunternif.mc.impl.atlas.core;
-import hunternif.mc.impl.atlas.item.AtlasItem;
-import net.minecraft.item.ItemStack;
import net.minecraft.server.world.ServerWorld;
import net.minecraft.world.PersistentStateManager;
import net.minecraft.world.World;
@@ -21,17 +19,6 @@ public class TileDataHandler {
private final Map atlasDataClientCache = new ConcurrentHashMap<>();
- /**
- * Loads data for the given atlas ID or creates a new one.
- */
- public AtlasData getData(ItemStack stack, World world) {
- if (stack.getItem() instanceof AtlasItem) {
- return getData(AtlasItem.getAtlasID(stack), world);
- } else {
- return null;
- }
- }
-
/**
* Loads data for the given atlas or creates a new one.
*/
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/core/watcher/DeathWatcher.java b/common/src/main/java/hunternif/mc/impl/atlas/core/watcher/DeathWatcher.java
index beb215efd..3d5a8cf3e 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/core/watcher/DeathWatcher.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/core/watcher/DeathWatcher.java
@@ -14,11 +14,10 @@
public class DeathWatcher {
public static void onPlayerDeath(PlayerEntity player) {
if (AntiqueAtlasMod.CONFIG.autoDeathMarker) {
- for (int atlasID : AtlasAPI.getPlayerAtlases(player)) {
- AtlasAPI.getMarkerAPI().putMarker(player.getEntityWorld(), true, atlasID, new Identifier("antiqueatlas:tomb"),
- Text.translatable("gui.antiqueatlas.marker.tomb", player.getName()),
- (int) player.getX(), (int) player.getZ());
- }
+ int atlasID = AtlasAPI.getPlayerAtlasId(player);
+ AtlasAPI.getMarkerAPI().putMarker(player.getEntityWorld(), true, atlasID, new Identifier("antiqueatlas:tomb"),
+ Text.translatable("gui.antiqueatlas.marker.tomb", player.getName()),
+ (int) player.getX(), (int) player.getZ());
}
}
}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedCallback.java b/common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedCallback.java
deleted file mode 100644
index 9df72dfb8..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedCallback.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package hunternif.mc.impl.atlas.event;
-
-import dev.architectury.event.Event;
-import dev.architectury.event.EventFactory;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.inventory.Inventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.recipe.Recipe;
-import net.minecraft.util.ActionResult;
-import net.minecraft.world.World;
-
-/**
- * Callback right when a item is crafted using a recipe.
- *
- * Upon return:
- * - SUCCESS cancels further processing and, on the client, sends a packet to the server.
- * - PASS falls back to further processing.
- * - FAIL cancels further processing and does not send a packet to the server.
- */
-public interface RecipeCraftedCallback {
-
- Event EVENT = EventFactory.createEventResult(RecipeCraftedCallback.class);
-
- ActionResult onCrafted(PlayerEntity player, World world, Recipe recipe, ItemStack result, Inventory ingredients);
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedHandler.java b/common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedHandler.java
deleted file mode 100644
index fcbdeaf9b..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/event/RecipeCraftedHandler.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package hunternif.mc.impl.atlas.event;
-
-import hunternif.mc.impl.atlas.item.RecipeAtlasCombining;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.inventory.Inventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.recipe.Recipe;
-import net.minecraft.util.ActionResult;
-import net.minecraft.world.World;
-
-
-public class RecipeCraftedHandler implements RecipeCraftedCallback {
-
- @Override
- public ActionResult onCrafted(PlayerEntity player, World world, Recipe recipe, ItemStack result, Inventory ingredients) {
- if (world.isClient()) return ActionResult.PASS;
-
- if (recipe instanceof RecipeAtlasCombining) {
- RecipeAtlasCombining combining_recipe = (RecipeAtlasCombining) recipe;
-
- combining_recipe.onCrafted(world, ingredients, result);
- }
-
- return ActionResult.PASS;
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/item/AntiqueAtlasItems.java b/common/src/main/java/hunternif/mc/impl/atlas/item/AntiqueAtlasItems.java
deleted file mode 100644
index 22bb14e73..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/item/AntiqueAtlasItems.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package hunternif.mc.impl.atlas.item;
-
-import dev.architectury.registry.registries.DeferredRegister;
-import dev.architectury.registry.registries.RegistrySupplier;
-import hunternif.mc.impl.atlas.AntiqueAtlasMod;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemGroup;
-
-import net.minecraft.item.ItemStack;
-import net.minecraft.recipe.RecipeSerializer;
-import net.minecraft.util.Identifier;
-import net.minecraft.util.registry.Registry;
-
-public class AntiqueAtlasItems {
- public static final DeferredRegister-
- ITEMS = DeferredRegister.create(AntiqueAtlasMod.ID, Registry.ITEM_KEY);
- public static final DeferredRegister>
- RECIPES = DeferredRegister.create(AntiqueAtlasMod.ID, Registry.RECIPE_SERIALIZER_KEY);
-
- public static final RegistrySupplier
- EMPTY_ATLAS = ITEMS.register("empty_antique_atlas", () -> new EmptyAtlasItem(new Item.Settings().group(ItemGroup.MISC)));
- public static final RegistrySupplier
- ATLAS = ITEMS.register("antique_atlas", () -> new AtlasItem(new Item.Settings().maxCount(1)));
-
- public static ItemStack getAtlasFromId(int atlasID) {
- ItemStack atlas = new ItemStack(ATLAS.get());
- atlas.getOrCreateNbt().putInt("atlasID", atlasID);
-
- return atlas;
- }
-
- public static void register() {
- if (AntiqueAtlasMod.CONFIG.itemNeeded) {
- ITEMS.register();
-
- RECIPES.register("atlas_clone", () -> RecipeAtlasCloning.SERIALIZER);
- RECIPES.register("atlas_combine", () -> RecipeAtlasCombining.SERIALIZER);
-
- RECIPES.register();
- }
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/item/AtlasItem.java b/common/src/main/java/hunternif/mc/impl/atlas/item/AtlasItem.java
deleted file mode 100644
index 07a816bc9..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/item/AtlasItem.java
+++ /dev/null
@@ -1,103 +0,0 @@
-package hunternif.mc.impl.atlas.item;
-
-import hunternif.mc.impl.atlas.AntiqueAtlasMod;
-import hunternif.mc.impl.atlas.AntiqueAtlasModClient;
-import hunternif.mc.impl.atlas.core.AtlasData;
-import hunternif.mc.impl.atlas.core.TileInfo;
-import hunternif.mc.impl.atlas.marker.MarkersData;
-import hunternif.mc.impl.atlas.network.packet.s2c.play.DimensionUpdateS2CPacket;
-import net.minecraft.block.BlockState;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.item.ItemUsageContext;
-import net.minecraft.item.map.MapBannerMarker;
-import net.minecraft.server.network.ServerPlayerEntity;
-import net.minecraft.sound.SoundCategory;
-import net.minecraft.sound.SoundEvents;
-import net.minecraft.tag.BlockTags;
-import net.minecraft.text.Text;
-import net.minecraft.util.ActionResult;
-import net.minecraft.util.Hand;
-import net.minecraft.util.TypedActionResult;
-import net.minecraft.world.World;
-
-import java.util.Collection;
-import java.util.Objects;
-
-public class AtlasItem extends Item {
-
- public AtlasItem(Item.Settings settings) {
- super(settings);
- }
-
- public static int getAtlasID(ItemStack stack) {
- return stack.getOrCreateNbt().getInt("atlasID");
- }
-
- @Override
- public Text getName(ItemStack stack) {
- return Text.translatable(this.getTranslationKey(), getAtlasID(stack));
- }
-
- @Override
- public TypedActionResult use(World world, PlayerEntity playerEntity, Hand hand) {
- ItemStack stack = playerEntity.getStackInHand(hand);
-
- if (world.isClient) {
- AntiqueAtlasModClient.openAtlasGUI(stack);
- }
-
- return new TypedActionResult<>(ActionResult.SUCCESS, stack);
- }
-
- @Override
- public ActionResult useOnBlock(ItemUsageContext context) {
- if (!context.getWorld().isClient()) {
- return super.useOnBlock(context);
- }
-
- BlockState blockState = context.getWorld().getBlockState(context.getBlockPos());
- if (blockState.isIn(BlockTags.BANNERS)) {
- AntiqueAtlasModClient.openAtlasGUI(context.getStack());
- MapBannerMarker mapBannerMarker = MapBannerMarker.fromWorldBlock(context.getWorld(), context.getBlockPos());
- AntiqueAtlasModClient.getAtlasGUI().openMarkerFinalizer(mapBannerMarker.getName());
- context.getWorld().playSound(context.getPlayer(), context.getBlockPos(), SoundEvents.ITEM_BOOK_PAGE_TURN, SoundCategory.BLOCKS, 1f, 1f);
-
- return ActionResult.SUCCESS;
- }
-
- return super.useOnBlock(context);
- }
-
- @Override
- public void inventoryTick(ItemStack stack, World world, Entity entity, int slot, boolean isEquipped) {
- AtlasData data = AntiqueAtlasMod.tileData.getData(stack, world);
- if (data == null || !(entity instanceof PlayerEntity)) return;
-
- int atlasId = getAtlasID(stack);
-
- // On the first run send the map from the server to the client:
- PlayerEntity player = (PlayerEntity) entity;
- if (!world.isClient && !data.isSyncedToPlayer(player) && !data.isEmpty()) {
- data.syncToPlayer(atlasId, player);
- }
-
- // Same thing with the local markers:
- MarkersData markers = AntiqueAtlasMod.markersData.getMarkersData(stack, world);
- if (!world.isClient && !markers.isSyncedOnPlayer(player) && !markers.isEmpty()) {
- markers.syncToPlayer(atlasId, (ServerPlayerEntity) player);
- }
-
- if (!world.isClient) {
- // Updating map around player
- Collection newTiles = AntiqueAtlasMod.worldScanner.updateAtlasAroundPlayer(data, player);
-
- if (!newTiles.isEmpty()) {
- new DimensionUpdateS2CPacket(atlasId, player.getEntityWorld().getRegistryKey(), newTiles).send(Objects.requireNonNull(player.getServer()));
- }
- }
- }
-
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/item/EmptyAtlasItem.java b/common/src/main/java/hunternif/mc/impl/atlas/item/EmptyAtlasItem.java
deleted file mode 100644
index f4a0bcb73..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/item/EmptyAtlasItem.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package hunternif.mc.impl.atlas.item;
-
-import hunternif.mc.impl.atlas.AntiqueAtlasMod;
-import hunternif.mc.impl.atlas.core.AtlasData;
-import hunternif.mc.impl.atlas.marker.MarkersData;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.sound.SoundCategory;
-import net.minecraft.sound.SoundEvents;
-import net.minecraft.util.ActionResult;
-import net.minecraft.util.Hand;
-import net.minecraft.util.TypedActionResult;
-import net.minecraft.world.World;
-
-public class EmptyAtlasItem extends Item {
- public EmptyAtlasItem(Item.Settings settings) {
- super(settings);
- }
-
- @Override
- public TypedActionResult use(World world, PlayerEntity player,
- Hand hand) {
- ItemStack stack = player.getStackInHand(hand);
- if (world.isClient()) {
- world.playSound(player, player.getBlockPos(), SoundEvents.BLOCK_ENCHANTMENT_TABLE_USE, SoundCategory.PLAYERS, 1F, 1F);
- return new TypedActionResult<>(ActionResult.SUCCESS, stack);
- }
-
- int atlasID = AntiqueAtlasMod.getAtlasIdData(world).getNextAtlasId();
- ItemStack atlasStack = AntiqueAtlasItems.getAtlasFromId(atlasID);
-
- AtlasData atlasData = AntiqueAtlasMod.tileData.getData(atlasID, world);
- atlasData.getWorldData(player.getEntityWorld().getRegistryKey()).setBrowsingPositionTo(player);
- atlasData.markDirty();
-
- MarkersData markersData = AntiqueAtlasMod.markersData.getMarkersData(atlasID, world);
- markersData.markDirty();
-
- stack.decrement(1);
- if (stack.isEmpty()) {
- return new TypedActionResult<>(ActionResult.SUCCESS, atlasStack);
- } else {
- if (!player.getInventory().insertStack(atlasStack.copy())) {
- player.dropItem(atlasStack, true);
- }
-
- return new TypedActionResult<>(ActionResult.SUCCESS, stack);
- }
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCloning.java b/common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCloning.java
deleted file mode 100644
index 796f3b26d..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCloning.java
+++ /dev/null
@@ -1,113 +0,0 @@
-package hunternif.mc.impl.atlas.item;
-
-import hunternif.mc.impl.atlas.AntiqueAtlasMod;
-import net.minecraft.inventory.CraftingInventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.recipe.CraftingRecipe;
-import net.minecraft.recipe.RecipeSerializer;
-import net.minecraft.recipe.RecipeType;
-import net.minecraft.recipe.SpecialRecipeSerializer;
-import net.minecraft.util.Identifier;
-import net.minecraft.world.World;
-
-public class RecipeAtlasCloning implements CraftingRecipe {
- public static final RecipeSerializer> SERIALIZER = new SpecialRecipeSerializer<>(RecipeAtlasCloning::new);
- private final Identifier id;
-
- public RecipeAtlasCloning(Identifier identifier) {
- this.id = identifier;
- }
-
- @Override
- public String getGroup() {
- return AntiqueAtlasMod.ID + ":atlas";
- }
-
- @Override
- public boolean matches(CraftingInventory inv, World world) {
- int i = 0; // number of empty atlases
- ItemStack filledAtlas = ItemStack.EMPTY;
-
- for (int j = 0; j < inv.size(); ++j) {
- ItemStack stack = inv.getStack(j);
-
- if (!stack.isEmpty()) {
- if (stack.getItem() == AntiqueAtlasItems.ATLAS.get()) {
- if (!filledAtlas.isEmpty()) {
- return false;
- }
- filledAtlas = stack;
- } else {
- if (stack.getItem() != AntiqueAtlasItems.EMPTY_ATLAS.get()) {
- return false;
- }
- i++;
- }
- }
- }
-
- return !filledAtlas.isEmpty() && i > 0;
- }
-
- @Override
- public ItemStack craft(CraftingInventory inv) {
- int i = 0; // number of new copies
- ItemStack filledAtlas = ItemStack.EMPTY;
-
- for (int j = 0; j < inv.size(); ++j) {
- ItemStack stack = inv.getStack(j);
-
- if (!stack.isEmpty()) {
- if (stack.getItem() == AntiqueAtlasItems.ATLAS.get()) {
- if (!filledAtlas.isEmpty()) {
- return ItemStack.EMPTY;
- }
- filledAtlas = stack;
- } else {
- if (stack.getItem() != AntiqueAtlasItems.EMPTY_ATLAS.get()) {
- return ItemStack.EMPTY;
- }
- i++;
- }
- }
- }
-
- if (!filledAtlas.isEmpty() && i >= 1) {
- ItemStack newAtlas = new ItemStack(AntiqueAtlasItems.ATLAS.get(), i + 1);
- newAtlas.getOrCreateNbt().putInt("atlasID", AtlasItem.getAtlasID(filledAtlas));
-
- if (filledAtlas.hasCustomName()) {
- newAtlas.setCustomName(filledAtlas.getName());
- }
-
- return newAtlas;
- } else {
- return ItemStack.EMPTY;
- }
- }
-
- @Override
- public boolean fits(int width, int height) {
- return true;
- }
-
- @Override
- public ItemStack getOutput() {
- return ItemStack.EMPTY;
- }
-
- @Override
- public Identifier getId() {
- return id;
- }
-
- @Override
- public RecipeSerializer> getSerializer() {
- return SERIALIZER;
- }
-
- @Override
- public RecipeType> getType() {
- return RecipeType.CRAFTING;
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCombining.java b/common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCombining.java
deleted file mode 100644
index 42288fb3b..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/item/RecipeAtlasCombining.java
+++ /dev/null
@@ -1,136 +0,0 @@
-package hunternif.mc.impl.atlas.item;
-
-import hunternif.mc.impl.atlas.AntiqueAtlasMod;
-import hunternif.mc.impl.atlas.core.AtlasData;
-import hunternif.mc.impl.atlas.marker.Marker;
-import hunternif.mc.impl.atlas.marker.MarkersData;
-import net.minecraft.inventory.CraftingInventory;
-import net.minecraft.inventory.Inventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.recipe.CraftingRecipe;
-import net.minecraft.recipe.RecipeSerializer;
-import net.minecraft.recipe.RecipeType;
-import net.minecraft.recipe.SpecialRecipeSerializer;
-import net.minecraft.util.Identifier;
-import net.minecraft.util.registry.RegistryKey;
-import net.minecraft.world.World;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * 2 or more atlases combine into one with all biome and marker data copied.
- * All data is copied into a new atlas instance.
- *
- * @author Hunternif
- */
-public class RecipeAtlasCombining implements CraftingRecipe {
- public static final RecipeSerializer SERIALIZER = new SpecialRecipeSerializer<>(RecipeAtlasCombining::new);
- private final Identifier id;
-
- public RecipeAtlasCombining(Identifier id) {
- this.id = id;
- }
-
- @Override
- public String getGroup() {
- return AntiqueAtlasMod.ID + ":atlas_combine";
- }
-
- @Override
- public boolean matches(CraftingInventory inv, World world) {
- return matches(inv);
- }
-
- private boolean matches(CraftingInventory inv) {
- int atlasesFound = 0;
- for (int i = 0; i < inv.size(); ++i) {
- ItemStack stack = inv.getStack(i);
- if (!stack.isEmpty()) {
- if (stack.getItem() == AntiqueAtlasItems.ATLAS.get()) {
- atlasesFound++;
- }
- }
- }
- return atlasesFound > 1;
- }
-
- @Override
- public ItemStack craft(CraftingInventory inv) {
- ItemStack firstAtlas = ItemStack.EMPTY;
- List atlasIds = new ArrayList<>(9);
- for (int i = 0; i < inv.size(); ++i) {
- ItemStack stack = inv.getStack(i);
- if (!stack.isEmpty()) {
- if (stack.getItem() instanceof AtlasItem) {
- if (firstAtlas.isEmpty()) {
- firstAtlas = stack;
- } else {
- atlasIds.add(AtlasItem.getAtlasID(stack));
- }
- }
- }
- }
- return atlasIds.size() < 1 ? ItemStack.EMPTY : firstAtlas.copy();
- }
-
- @Override
- public boolean fits(int width, int height) {
- return true;
- }
-
- @Override
- public ItemStack getOutput() {
- return new ItemStack(AntiqueAtlasItems.ATLAS.get());
- }
-
- @Override
- public Identifier getId() {
- return id;
- }
-
- @Override
- public RecipeSerializer> getSerializer() {
- return SERIALIZER;
- }
-
- @Override
- public RecipeType> getType() {
- return RecipeType.CRAFTING;
- }
-
- public ItemStack onCrafted(World world, Inventory inventory, ItemStack result) {
- if (world.isClient) return result;
- // Until the first update, on the client the returned atlas ID is the same as the first Atlas on the crafting grid.
- int atlasID = AntiqueAtlasMod.getAtlasIdData(world).getNextAtlasId();
-
- AtlasData destBiomes = AntiqueAtlasMod.tileData.getData(atlasID, world);
- destBiomes.markDirty();
- MarkersData destMarkers = AntiqueAtlasMod.markersData.getMarkersData(atlasID, world);
- destMarkers.markDirty();
- for (int i = 0; i < inventory.size(); ++i) {
- ItemStack stack = inventory.getStack(i);
- if (stack.isEmpty()) continue;
- AtlasData srcBiomes = AntiqueAtlasMod.tileData.getData(stack, world);
- if (destBiomes != null && srcBiomes != null && destBiomes != srcBiomes) {
- for (RegistryKey worldRegistryKey : srcBiomes.getVisitedWorlds()) {
- destBiomes.getWorldData(worldRegistryKey).addData(srcBiomes.getWorldData(worldRegistryKey));
- }
- }
- MarkersData srcMarkers = AntiqueAtlasMod.markersData.getMarkersData(stack, world);
- if (destMarkers != null && srcMarkers != null && destMarkers != srcMarkers) {
- for (RegistryKey worldRegistryKey : srcMarkers.getVisitedDimensions()) {
- for (Marker marker : srcMarkers.getMarkersDataInWorld(worldRegistryKey).getAllMarkers()) {
- destMarkers.createAndSaveMarker(marker.getType(),
- worldRegistryKey, marker.getX(), marker.getZ(), marker.isVisibleAhead(), marker.getLabel());
- }
- }
- }
- }
-
- // Set atlas ID last, because otherwise we wouldn't be able copy the
- // data from the atlas which was used as a placeholder for the result.
- result.getOrCreateNbt().putInt("atlasID", atlasID);
- return result;
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersData.java b/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersData.java
index c84185390..d9d21025b 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersData.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersData.java
@@ -218,8 +218,7 @@ public boolean isSyncedOnPlayer(PlayerEntity player) {
return playersSentTo.contains(player);
}
- /** Send all data to the player in several packets. Called once during the
- * first run of ItemAtlas.onUpdate(). */
+ /** Send all data to the player in several packets. Called once on login. */
public void syncToPlayer(int atlasID, ServerPlayerEntity player) {
for (RegistryKey world : worldMap.keySet()) {
DimensionMarkersData data = getMarkersDataInWorld(world);
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersDataHandler.java b/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersDataHandler.java
index effbc8c36..9c7d516c3 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersDataHandler.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/marker/MarkersDataHandler.java
@@ -1,7 +1,5 @@
package hunternif.mc.impl.atlas.marker;
-import hunternif.mc.impl.atlas.item.AtlasItem;
-import net.minecraft.item.ItemStack;
import net.minecraft.server.world.ServerWorld;
import net.minecraft.util.registry.RegistryKey;
import net.minecraft.world.PersistentStateManager;
@@ -22,17 +20,6 @@ public class MarkersDataHandler {
private final Map markersDataClientCache = new ConcurrentHashMap<>();
- /**
- * Loads data for the given atlas or creates a new one.
- */
- public MarkersData getMarkersData(ItemStack stack, World world) {
- if (stack.getItem() instanceof AtlasItem) {
- return getMarkersData(AtlasItem.getAtlasID(stack), world);
- } else {
- return null;
- }
- }
-
/**
* Loads data for the given atlas ID or creates a new one.
*/
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/marker/NetherPortalWatcher.java b/common/src/main/java/hunternif/mc/impl/atlas/marker/NetherPortalWatcher.java
index 509feb4b0..62542df74 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/marker/NetherPortalWatcher.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/marker/NetherPortalWatcher.java
@@ -2,12 +2,10 @@
import hunternif.mc.impl.atlas.AntiqueAtlasMod;
import hunternif.mc.api.AtlasAPI;
-import hunternif.mc.impl.atlas.item.AtlasItem;
import hunternif.mc.impl.atlas.mixinhooks.EntityHooksAA;
import hunternif.mc.impl.atlas.registry.MarkerType;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.item.ItemStack;
import net.minecraft.text.Text;
import net.minecraft.world.World;
import net.minecraft.world.dimension.DimensionType;
@@ -93,16 +91,7 @@ private void addPortalMarkerIfNone(PlayerEntity player) {
// We need the very specific dimension each time.
World world = player.getEntityWorld();
- if (!AntiqueAtlasMod.CONFIG.itemNeeded) {
- addPortalMarkerIfNone(player, world, player.getUuid().hashCode());
- return;
- }
-
- for (ItemStack stack : player.getInventory().main) {
- if (stack == null || !(stack.getItem() instanceof AtlasItem)) continue;
-
- addPortalMarkerIfNone(player, world, AtlasItem.getAtlasID(stack));
- }
+ addPortalMarkerIfNone(player, world, AtlasAPI.getPlayerAtlasId(player));
}
private void addPortalMarkerIfNone(PlayerEntity player, World world, int atlasID) {
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/mixin/HeldItemRendererMixin.java b/common/src/main/java/hunternif/mc/impl/atlas/mixin/HeldItemRendererMixin.java
deleted file mode 100644
index c2f10ee9b..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/mixin/HeldItemRendererMixin.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package hunternif.mc.impl.atlas.mixin;
-
-import hunternif.mc.impl.atlas.item.AntiqueAtlasItems;
-import hunternif.mc.impl.atlas.client.OverlayRenderer;
-import net.fabricmc.api.EnvType;
-import net.fabricmc.api.Environment;
-import net.minecraft.client.MinecraftClient;
-import net.minecraft.client.network.AbstractClientPlayerEntity;
-import net.minecraft.client.render.VertexConsumerProvider;
-import net.minecraft.client.render.item.HeldItemRenderer;
-import net.minecraft.client.util.math.MatrixStack;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.Arm;
-import net.minecraft.util.Hand;
-import net.minecraft.util.math.MathHelper;
-import net.minecraft.util.math.Vec3f;
-import org.spongepowered.asm.mixin.Final;
-import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.Shadow;
-import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.Inject;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
-import org.spongepowered.asm.mixin.injection.callback.LocalCapture;
-
-@Environment(EnvType.CLIENT)
-@Mixin(HeldItemRenderer.class)
-public abstract class HeldItemRendererMixin {
- private OverlayRenderer atlasOverlayRenderer = new OverlayRenderer();
-
- @Shadow
- private ItemStack offHand;
-
- @Shadow
- protected abstract void renderArm(MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, Arm arm);
-
- @Shadow
- protected abstract void renderArmHoldingItem(MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, float equipProgress, float swingProgress, Arm arm);
-
- @Shadow
- @Final
- private MinecraftClient client;
-
- @Shadow
- protected abstract float getMapAngle(float tickDelta);
-
- @Shadow
- private ItemStack mainHand;
-
- @Inject(method = "renderFirstPersonItem", at = @At(value = "INVOKE", target = "Lnet/minecraft/item/ItemStack;isEmpty()Z", ordinal = 0), locals = LocalCapture.CAPTURE_FAILHARD, cancellable = true)
- private void renderAtlas(AbstractClientPlayerEntity player, float tickDelta, float pitch, Hand hand, float swingProgress, ItemStack item, float equipProgress, MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, CallbackInfo ci, boolean bl, Arm arm) {
- if (item.getItem() == AntiqueAtlasItems.ATLAS.getOrNull()) {
- if (bl && this.offHand.isEmpty()) {
- renderAtlasInBothHands(matrices, vertexConsumers, light, pitch, equipProgress, swingProgress);
- } else {
- renderAtlasInOneHand(matrices, vertexConsumers, light, equipProgress, arm, swingProgress, item);
- }
-
- matrices.pop();
-
- ci.cancel();
- }
- }
-
- private void renderAtlasInBothHands(MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, float pitch, float equipProgress, float swingProgress) {
- float f = MathHelper.sqrt(swingProgress);
- float g = -0.2F * MathHelper.sin(swingProgress * 3.1415927F);
- float h = -0.4F * MathHelper.sin(f * 3.1415927F);
- matrices.translate(0.0D, -g / 2.0F, h);
- float i = getMapAngle(pitch);
- matrices.translate(0.0D, 0.04F + equipProgress * -1.2F + i * -0.5F, -0.7200000286102295D);
- matrices.multiply(Vec3f.POSITIVE_X.getDegreesQuaternion(i * -85.0F));
-
- if (!this.client.player.isInvisible()) {
- matrices.push();
- matrices.multiply(Vec3f.POSITIVE_Y.getDegreesQuaternion(90.0F));
- this.renderArm(matrices, vertexConsumers, light, Arm.RIGHT);
- this.renderArm(matrices, vertexConsumers, light, Arm.LEFT);
- matrices.pop();
- }
-
- float j = MathHelper.sin(f * 3.1415927F);
- matrices.multiply(Vec3f.POSITIVE_X.getDegreesQuaternion(j * 20.0F));
- matrices.scale(0.5F, 0.5F, 1.0F);
-
- this.renderFirstPersonAtlas(matrices, vertexConsumers, light, this.mainHand);
- }
-
- private void renderAtlasInOneHand(MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, float equipProgress, Arm arm, float swingProgress, ItemStack item) {
- float f = arm == Arm.RIGHT ? 1.0F : -1.0F;
- matrices.push();
- matrices.translate(f * 0.125F, -0.125D, 0.0D);
- if (!this.client.player.isInvisible()) {
- matrices.push();
- matrices.multiply(Vec3f.POSITIVE_Z.getDegreesQuaternion(f * 10.0F));
- this.renderArmHoldingItem(matrices, vertexConsumers, light, equipProgress, swingProgress, arm);
- matrices.pop();
- }
-
-
- matrices.translate(f * 0.51F, -0.08F + equipProgress * -1.2F, -0.75D);
- float g = MathHelper.sqrt(swingProgress);
- float h = MathHelper.sin(g * 3.1415927F);
- float i = -0.5F * h;
- float j = 0.4F * MathHelper.sin(g * 6.2831855F);
- float k = -0.3F * MathHelper.sin(swingProgress * 3.1415927F);
- matrices.translate(f * i, j - 0.3F * h, k);
- matrices.multiply(Vec3f.POSITIVE_X.getDegreesQuaternion(h * -45.0F));
- matrices.multiply(Vec3f.POSITIVE_Y.getDegreesQuaternion(f * h * -30.0F));
-
- matrices.multiply(Vec3f.POSITIVE_Y.getDegreesQuaternion(180.0F));
- matrices.multiply(Vec3f.POSITIVE_Z.getDegreesQuaternion(180.0F));
- matrices.scale(0.38F, 0.38F, 0.38F);
- matrices.translate(-0.75D, -0.5D, 0.0D);
- matrices.scale(0.0078125F, 0.0078125F, 0.0078125F);
-
- matrices.scale(0.4f, 0.4F, 0.4F);
-
- atlasOverlayRenderer.drawOverlay(matrices, vertexConsumers, light, item);
- matrices.pop();
- }
-
- private void renderFirstPersonAtlas(MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, ItemStack item) {
- matrices.multiply(Vec3f.POSITIVE_Y.getDegreesQuaternion(180.0F));
- matrices.multiply(Vec3f.POSITIVE_Z.getDegreesQuaternion(180.0F));
-
- matrices.scale(0.38F, 0.38F, 0.38F);
- matrices.translate(-1.85D, -0.5D, 0.0D);
- matrices.scale(0.0078125F, 0.0078125F, 0.0078125F);
-
- atlasOverlayRenderer.drawOverlay(matrices, vertexConsumers, light, item);
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCartographyTableScreenHandler.java b/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCartographyTableScreenHandler.java
deleted file mode 100644
index adb93b1bc..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCartographyTableScreenHandler.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package hunternif.mc.impl.atlas.mixin;
-
-import hunternif.mc.api.AtlasAPI;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.inventory.CraftingResultInventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.item.Items;
-import net.minecraft.screen.CartographyTableScreenHandler;
-import net.minecraft.screen.ScreenHandler;
-import net.minecraft.screen.ScreenHandlerType;
-import net.minecraft.screen.slot.Slot;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.world.World;
-import org.jetbrains.annotations.Nullable;
-import org.spongepowered.asm.mixin.Final;
-import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.Shadow;
-import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.Inject;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
-
-
-@Mixin(CartographyTableScreenHandler.class)
-public abstract class MixinCartographyTableScreenHandler extends ScreenHandler {
-
- @Final
- @Shadow
- private CraftingResultInventory resultInventory;
-
- protected MixinCartographyTableScreenHandler(@Nullable ScreenHandlerType> type, int syncId) {
- super(type, syncId);
- }
-
- // inject into lambda inside CartographyTableScreenHandler::updateResult
- @Inject(method = {"lambda$setupResultSlot$0", "method_17382", "m_39166_"}, at = @At("HEAD"), cancellable = true)
- void antiqueatlas_call(ItemStack map, ItemStack atlas, ItemStack result, World world, BlockPos pos, CallbackInfo info) {
- if (atlas.getItem() == AtlasAPI.getAtlasItem() && map.getItem() == Items.FILLED_MAP) {
- this.resultInventory.setStack(CartographyTableScreenHandler.RESULT_SLOT_INDEX, atlas.copy());
-
- this.sendContentUpdates();
-
- info.cancel();
- }
- }
-
- @Inject(method = "transferSlot", at = @At("HEAD"), cancellable = true)
- void antiqueatlas_transferSlot(PlayerEntity player, int index, CallbackInfoReturnable info) {
- if (index >= 0 && index <= 2) return;
-
- Slot slot = this.slots.get(index);
-
- if (slot.hasStack()) {
- ItemStack stack = slot.getStack();
-
- if (stack.getItem() != AtlasAPI.getAtlasItem()) return;
-
- boolean result = this.insertItem(stack, 0, 2, false);
-
- if (!result) {
- info.setReturnValue(ItemStack.EMPTY);
- }
- }
- }
-
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinClientPlayNetworkHandler.java b/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinClientPlayNetworkHandler.java
index 2d18569af..45bdf63de 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinClientPlayNetworkHandler.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinClientPlayNetworkHandler.java
@@ -6,6 +6,7 @@
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayNetworkHandler;
import net.minecraft.network.packet.s2c.play.GameJoinS2CPacket;
+import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
@@ -15,6 +16,7 @@
@Environment(EnvType.CLIENT)
@Mixin(ClientPlayNetworkHandler.class)
public class MixinClientPlayNetworkHandler {
+ @Final
@Shadow
private MinecraftClient client;
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCraftingResultSlot.java b/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCraftingResultSlot.java
deleted file mode 100644
index 9b1b10760..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/mixin/MixinCraftingResultSlot.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package hunternif.mc.impl.atlas.mixin;
-
-import hunternif.mc.impl.atlas.event.RecipeCraftedCallback;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.inventory.CraftingInventory;
-import net.minecraft.inventory.Inventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.recipe.RecipeUnlocker;
-import net.minecraft.screen.slot.CraftingResultSlot;
-import net.minecraft.screen.slot.Slot;
-import org.spongepowered.asm.mixin.Final;
-import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.Shadow;
-import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.Inject;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
-
-
-@Mixin(CraftingResultSlot.class)
-public class MixinCraftingResultSlot extends Slot {
- @Final
- @Shadow
- private CraftingInventory input;
- @Final
- @Shadow
- private PlayerEntity player;
-
- public MixinCraftingResultSlot(Inventory inventory_1, int int_1, int int_2, int int_3) {
- super(inventory_1, int_1, int_2, int_3);
- }
-
- @Inject(at = @At("HEAD"), method = "onCrafted(Lnet/minecraft/item/ItemStack;)V")
- protected void onCrafted(ItemStack stack, final CallbackInfo info) {
- if (inventory instanceof RecipeUnlocker) {
- RecipeCraftedCallback.EVENT.invoker().onCrafted(this.player, this.player.world, ((RecipeUnlocker) (inventory)).getLastRecipe(), stack, input);
- }
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/mixin/dev/MixinCartographyTableHandlerSlot.java b/common/src/main/java/hunternif/mc/impl/atlas/mixin/dev/MixinCartographyTableHandlerSlot.java
deleted file mode 100644
index 15f50f86a..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/mixin/dev/MixinCartographyTableHandlerSlot.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package hunternif.mc.impl.atlas.mixin.dev;
-
-import hunternif.mc.api.AtlasAPI;
-import hunternif.mc.impl.atlas.mixinhooks.CartographyTableHooks;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.inventory.Inventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.screen.CartographyTableScreenHandler;
-import net.minecraft.screen.ScreenHandlerContext;
-import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.Inject;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
-
-@Mixin(targets = "net.minecraft.screen.CartographyTableScreenHandler$4")
-class MixinCartographyTableScreenHandlerSlot {
- @Inject(method = "canInsert", at = @At("RETURN"), cancellable = true)
- void antiqueatlas_canInsert(ItemStack stack, CallbackInfoReturnable info) {
- info.setReturnValue(stack.getItem() == AtlasAPI.getAtlasItem() || info.getReturnValueZ());
- }
-}
-
-@Mixin(targets = "net.minecraft.screen.CartographyTableScreenHandler$5")
-class MixinCartographyTableScreenHandlerResultSlot {
-
- CartographyTableScreenHandler antiqueatlas_handler;
-
- @Inject(method = "", at = @At("TAIL"))
- void antiqueatlas_init(CartographyTableScreenHandler handler, Inventory inv, int a, int b, int c, ScreenHandlerContext context, CallbackInfo info) {
- antiqueatlas_handler = handler;
- }
-
- @Inject(method = "onTakeItem", at = @At("HEAD"))
- void antiqueatlas_onTakeItem(PlayerEntity player, ItemStack atlas, CallbackInfo info) {
- if (atlas.getItem() == AtlasAPI.getAtlasItem()) {
- ItemStack map = antiqueatlas_handler.slots.get(0).getStack();
-
- CartographyTableHooks.onTakeItem(player, map, atlas);
- }
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/mixin/prod/MixinCartographyTableHandlerSlot.java b/common/src/main/java/hunternif/mc/impl/atlas/mixin/prod/MixinCartographyTableHandlerSlot.java
deleted file mode 100644
index 2125b9146..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/mixin/prod/MixinCartographyTableHandlerSlot.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package hunternif.mc.impl.atlas.mixin.prod;
-
-import hunternif.mc.api.AtlasAPI;
-import hunternif.mc.impl.atlas.mixinhooks.CartographyTableHooks;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.inventory.Inventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.screen.CartographyTableScreenHandler;
-import net.minecraft.screen.ScreenHandlerContext;
-import org.spongepowered.asm.mixin.Mixin;
-import org.spongepowered.asm.mixin.injection.At;
-import org.spongepowered.asm.mixin.injection.Inject;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
-import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
-
-@Mixin(targets = "net.minecraft.screen.CartographyTableScreenHandler$4")
-class MixinCartographyTableScreenHandlerSlot {
-
- @Inject(method = "canInsert", at = @At("RETURN"), cancellable = true)
- void antiqueatlas_canInsert(ItemStack stack, CallbackInfoReturnable info) {
- info.setReturnValue(stack.getItem() == AtlasAPI.getAtlasItem() || info.getReturnValueZ());
- }
-}
-
-@Mixin(targets = "net.minecraft.screen.CartographyTableScreenHandler$5")
-class MixinCartographyTableScreenHandlerResultSlot {
-
- CartographyTableScreenHandler antiqueatlas_handler;
-
- @Inject(method = "", at = @At("TAIL"))
- void antiqueatlas_init(CartographyTableScreenHandler handler, Inventory inv, int a, int b, int c, ScreenHandlerContext context, CallbackInfo info) {
- antiqueatlas_handler = handler;
- }
-
- @Inject(method = "onTakeItem", at = @At("HEAD"))
- void antiqueatlas_onTakeItem(PlayerEntity player, ItemStack atlas, CallbackInfo info) {
- if (atlas.getItem() == AtlasAPI.getAtlasItem()) {
- ItemStack map = antiqueatlas_handler.slots.get(0).getStack();
-
- CartographyTableHooks.onTakeItem(player, map, atlas);
- }
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/mixinhooks/CartographyTableHooks.java b/common/src/main/java/hunternif/mc/impl/atlas/mixinhooks/CartographyTableHooks.java
deleted file mode 100644
index 0471d64a4..000000000
--- a/common/src/main/java/hunternif/mc/impl/atlas/mixinhooks/CartographyTableHooks.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package hunternif.mc.impl.atlas.mixinhooks;
-
-import hunternif.mc.api.AtlasAPI;
-import hunternif.mc.impl.atlas.AntiqueAtlasMod;
-import hunternif.mc.impl.atlas.item.AtlasItem;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.item.FilledMapItem;
-import net.minecraft.item.ItemStack;
-import net.minecraft.item.Items;
-import net.minecraft.item.map.MapIcon;
-import net.minecraft.item.map.MapState;
-import net.minecraft.text.Text;
-import net.minecraft.util.Identifier;
-
-public class CartographyTableHooks {
- public static void onTakeItem(PlayerEntity player, ItemStack map, ItemStack atlas) {
- if (player.getEntityWorld().isClient()) {
- return;
- }
-
- if (map.getItem() == Items.FILLED_MAP) {
- MapState mapState = FilledMapItem.getMapState(FilledMapItem.getMapId(map), player.getEntityWorld());
- if (mapState != null) {
- mapState.getIcons().forEach(icon -> {
- int i = 1 << mapState.scale;
-
- int x = (int) ((int) (icon.getX() - 0.5f) / 2f) * i + mapState.centerX;
- int z = (int) ((int) (icon.getZ() - 0.5f) / 2f) * i + mapState.centerZ;
-
- Identifier type = null;
- Text label = null;
-
- if (icon.getType() == MapIcon.Type.RED_X) {
- type = AntiqueAtlasMod.id("red_x_small");
- label = Text.translatable("gui.antiqueatlas.marker.treasure");
- } else if (icon.getType() == MapIcon.Type.MONUMENT) {
- type = AntiqueAtlasMod.id("monument");
- label = Text.translatable("gui.antiqueatlas.marker.monument");
- } else if (icon.getType() == MapIcon.Type.MANSION) {
- type = AntiqueAtlasMod.id("mansion");
- label = Text.translatable("gui.antiqueatlas.marker.mansion");
- }
-
- if (type != null) {
- AtlasAPI.getMarkerAPI().putMarker(player.getEntityWorld(), true, AtlasItem.getAtlasID(atlas), type, label, x, z);
- }
- });
- }
- }
- }
-}
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/DeleteMarkerC2SPacket.java b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/DeleteMarkerC2SPacket.java
index bebf7ff7f..d71e97caf 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/DeleteMarkerC2SPacket.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/DeleteMarkerC2SPacket.java
@@ -33,7 +33,7 @@ public static void apply(PacketByteBuf buf, NetworkManager.PacketContext context
int markerID = buf.readVarInt();
context.queue(() -> {
- if (AntiqueAtlasMod.CONFIG.itemNeeded && !AtlasAPI.getPlayerAtlases(context.getPlayer()).contains(atlasID)) {
+ if (AtlasAPI.getPlayerAtlasId(context.getPlayer()) != atlasID) {
Log.warn("Player %s attempted to delete marker from someone else's Atlas #%d",
context.getPlayer().getName(), atlasID);
return;
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutBrowsingPositionC2SPacket.java b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutBrowsingPositionC2SPacket.java
index ea4a8afef..f59d6115d 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutBrowsingPositionC2SPacket.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutBrowsingPositionC2SPacket.java
@@ -40,7 +40,7 @@ public static void apply(PacketByteBuf buf, NetworkManager.PacketContext context
double zoom = buf.readDouble();
context.queue(() -> {
- if (AntiqueAtlasMod.CONFIG.itemNeeded && !AtlasAPI.getPlayerAtlases(context.getPlayer()).contains(atlasID)) {
+ if (AtlasAPI.getPlayerAtlasId(context.getPlayer()) != atlasID) {
Log.warn("Player %s attempted to put position marker into someone else's Atlas #%d",
context.getPlayer().getCommandSource().getName(), atlasID);
return;
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutMarkerC2SPacket.java b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutMarkerC2SPacket.java
index 58c0d12fa..39fc4d63d 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutMarkerC2SPacket.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutMarkerC2SPacket.java
@@ -40,7 +40,7 @@ public static void apply(PacketByteBuf buf, NetworkManager.PacketContext context
Text label = buf.readText();
context.queue(() -> {
- if (!AtlasAPI.getPlayerAtlases(context.getPlayer()).contains(atlasID)) {
+ if (AtlasAPI.getPlayerAtlasId(context.getPlayer()) != atlasID) {
AntiqueAtlasMod.LOG.warn(
"Player {} attempted to put marker into someone else's Atlas #{}}",
context.getPlayer().getName(), atlasID);
diff --git a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutTileC2SPacket.java b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutTileC2SPacket.java
index 54bb63da0..1e2cd3fa4 100644
--- a/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutTileC2SPacket.java
+++ b/common/src/main/java/hunternif/mc/impl/atlas/network/packet/c2s/play/PutTileC2SPacket.java
@@ -36,7 +36,7 @@ public static void apply(PacketByteBuf buf, NetworkManager.PacketContext context
Identifier tile = buf.readIdentifier();
context.queue(() -> {
- if (AntiqueAtlasMod.CONFIG.itemNeeded && !AtlasAPI.getPlayerAtlases(context.getPlayer()).contains(atlasID)) {
+ if (AtlasAPI.getPlayerAtlasId(context.getPlayer()) != atlasID) {
Log.warn("Player %s attempted to modify someone else's Atlas #%d",
context.getPlayer().getName(), atlasID);
return;
diff --git a/common/src/main/resources/antiqueatlas-common.mixins.json b/common/src/main/resources/antiqueatlas-common.mixins.json
index 24334dc4a..706c18f69 100644
--- a/common/src/main/resources/antiqueatlas-common.mixins.json
+++ b/common/src/main/resources/antiqueatlas-common.mixins.json
@@ -4,23 +4,16 @@
"compatibilityLevel": "JAVA_17",
"plugin": "hunternif.mc.impl.atlas.mixin.VolatileMixinPlugin",
"mixins": [
- "MixinCraftingResultSlot",
"MixinEntity",
"MixinPlayerEntity",
"MixinPlayerEntityDeath",
"MixinPlayerManager",
- "structure.StructureStartMixin",
- "MixinCartographyTableScreenHandler",
- "dev.MixinCartographyTableScreenHandlerSlot",
- "prod.MixinCartographyTableScreenHandlerSlot",
- "dev.MixinCartographyTableScreenHandlerResultSlot",
- "prod.MixinCartographyTableScreenHandlerResultSlot"
+ "structure.StructureStartMixin"
],
"client": [
"MixinClientPlayNetworkHandler",
"MixinInGameHud",
- "MixinMinecraftClient",
- "HeldItemRendererMixin"
+ "MixinMinecraftClient"
],
"injectors": {
"defaultRequire": 1
diff --git a/common/src/main/resources/assets/antiqueatlas/lang/en_us.json b/common/src/main/resources/assets/antiqueatlas/lang/en_us.json
index c51f57524..8db8f205e 100644
--- a/common/src/main/resources/assets/antiqueatlas/lang/en_us.json
+++ b/common/src/main/resources/assets/antiqueatlas/lang/en_us.json
@@ -49,7 +49,6 @@
"text.autoconfig.antiqueatlas.option.autoDeathMarker": "Death marker",
"text.autoconfig.antiqueatlas.option.autoVillageMarkers": "Village marker",
"text.autoconfig.antiqueatlas.option.autoNetherPortalMarkers": "Nether portal marker",
- "text.autoconfig.antiqueatlas.option.itemNeeded": "Atlas required for usage",
"text.autoconfig.antiqueatlas.option.doScaleMarkers": "Scale markers",
"text.autoconfig.antiqueatlas.option.defaultScale": "Default zoom level",
diff --git a/common/src/main/resources/assets/antiqueatlas/lang/es_es.json b/common/src/main/resources/assets/antiqueatlas/lang/es_es.json
index 23e5ac70b..1fd82e1a0 100644
--- a/common/src/main/resources/assets/antiqueatlas/lang/es_es.json
+++ b/common/src/main/resources/assets/antiqueatlas/lang/es_es.json
@@ -49,7 +49,6 @@
"text.autoconfig.antiqueatlas.option.autoDeathMarker": "Marcador de muerte",
"text.autoconfig.antiqueatlas.option.autoVillageMarkers": "Marcador de aldea",
"text.autoconfig.antiqueatlas.option.autoNetherPortalMarkers": "Marcador de portal del Nether",
- "text.autoconfig.antiqueatlas.option.itemNeeded": "Requerir el Atlas para su uso",
"text.autoconfig.antiqueatlas.option.doScaleMarkers": "Escala de marcadores",
"text.autoconfig.antiqueatlas.option.defaultScale": "Nivel de zum predeterminado",
diff --git a/common/src/main/resources/assets/antiqueatlas/lang/ru_ru.json b/common/src/main/resources/assets/antiqueatlas/lang/ru_ru.json
index dfdbc8cdf..06f2314fa 100644
--- a/common/src/main/resources/assets/antiqueatlas/lang/ru_ru.json
+++ b/common/src/main/resources/assets/antiqueatlas/lang/ru_ru.json
@@ -49,7 +49,6 @@
"text.autoconfig.antiqueatlas.option.autoDeathMarker": "Метка смерти",
"text.autoconfig.antiqueatlas.option.autoVillageMarkers": "Метка деревни",
"text.autoconfig.antiqueatlas.option.autoNetherPortalMarkers": "Метка портала в Нижний Мир",
- "text.autoconfig.antiqueatlas.option.itemNeeded": "Для использования необходим атлас",
"text.autoconfig.antiqueatlas.option.doScaleMarkers": "Маркеры масштаба",
"text.autoconfig.antiqueatlas.option.defaultScale": "Уровень приближения по умолчанию",
diff --git a/common/src/main/resources/assets/antiqueatlas/lang/uk_ua.json b/common/src/main/resources/assets/antiqueatlas/lang/uk_ua.json
index 82cbb5a9c..16cb23f79 100644
--- a/common/src/main/resources/assets/antiqueatlas/lang/uk_ua.json
+++ b/common/src/main/resources/assets/antiqueatlas/lang/uk_ua.json
@@ -49,7 +49,6 @@
"text.autoconfig.antiqueatlas.option.autoDeathMarker": "Мітка смерті",
"text.autoconfig.antiqueatlas.option.autoVillageMarkers": "Мітка села",
"text.autoconfig.antiqueatlas.option.autoNetherPortalMarkers": "Мітка порталу в Незер",
- "text.autoconfig.antiqueatlas.option.itemNeeded": "Для використання необхідний атлас",
"text.autoconfig.antiqueatlas.option.doScaleMarkers": "Масштабувати мітки",
"text.autoconfig.antiqueatlas.option.defaultScale": "Типовий рівень масштабування",
diff --git a/gradle.properties b/gradle.properties
index 49e384de2..47b2e0e42 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -9,7 +9,7 @@ forge_version = 1.19.2-43.2.0
enabled_platforms = fabric,forge
# Mod Properties
-mod_version = 8.0.0
+mod_version = 8.0.0-itemless
maven_group = hunternif.mc.atlas
archives_base_name = antiqueatlas