#pragma once #include "Slot.h" class MerchantContainer; class Player; class Merchant; class MerchantResultSlot : public Slot { private: shared_ptr slots; Player *player; int removeCount; shared_ptr merchant; public: MerchantResultSlot(Player *player, shared_ptr merchant, shared_ptr slots, int id, int x, int y); bool mayPlace(shared_ptr item); shared_ptr remove(int c); protected: void onQuickCraft(shared_ptr picked, int count); void checkTakeAchievements(shared_ptr carried); public: void onTake(shared_ptr player, shared_ptr carried); virtual bool mayCombine(shared_ptr item); // 4J Added private: bool removePaymentItemsIfMatching(MerchantRecipe *activeRecipe, shared_ptr a, shared_ptr b); };