4jcraft/Minecraft.World/Items/MapItem.h
2026-03-21 16:39:12 -05:00

31 lines
1.2 KiB
C++

#pragma once
#include "ComplexItem.h"
class MapItemSavedData;
class MapItem : public ComplexItem {
public:
static const int IMAGE_WIDTH = 128;
static const int IMAGE_HEIGHT = 128;
public: // 4J Stu - Was protected in Java, but then we can't access it where we
// need it
MapItem(int id);
static std::shared_ptr<MapItemSavedData> getSavedData(short idNum,
Level* level);
std::shared_ptr<MapItemSavedData> getSavedData(
std::shared_ptr<ItemInstance> itemInstance, Level* level);
void update(Level* level, std::shared_ptr<Entity> player,
std::shared_ptr<MapItemSavedData> data);
virtual void inventoryTick(std::shared_ptr<ItemInstance> itemInstance,
Level* level, std::shared_ptr<Entity> owner,
int slot, bool selected);
std::shared_ptr<Packet> getUpdatePacket(
std::shared_ptr<ItemInstance> itemInstance, Level* level,
std::shared_ptr<Player> player);
virtual void onCraftedBy(std::shared_ptr<ItemInstance> itemInstance,
Level* level, std::shared_ptr<Player> player);
};