#pragma once #include "AbstractContainerScreen.h" #include "../../../Minecraft.World/Containers/MerchantMenu.h" #include "../../../Minecraft.World/Headers/net.minecraft.world.item.trading.h" class TradeSwitchButton; class MerchantScreen : public AbstractContainerScreen { public: MerchantScreen(std::shared_ptr inventory, std::shared_ptr merchant, Level* level); virtual ~MerchantScreen(); void init() override; void removed() override; void renderLabels() override; void renderBg(float a) override; void render(int xm, int ym, float a) override; void tick() override; void buttonClicked(Button* button) override; std::shared_ptr getMerchant() { return merchant; } private: std::shared_ptr inventory; std::shared_ptr merchant; MerchantMenu* merchantMenu; TradeSwitchButton* nextRecipeButton; TradeSwitchButton* prevRecipeButton; int currentRecipeIndex; };