#pragma once #include "minecraft/client/IMenuService.h" class Game; class GameMenuService : public IMenuService { public: explicit GameMenuService(Game& game) : game_(game) {} bool openInventory(int iPad, std::shared_ptr player, bool navigateBack) override; bool openCreative(int iPad, std::shared_ptr player, bool navigateBack) override; bool openCrafting2x2(int iPad, std::shared_ptr player) override; bool openCrafting3x3(int iPad, std::shared_ptr player, int x, int y, int z) override; bool openEnchanting(int iPad, std::shared_ptr inventory, int x, int y, int z, Level* level, const std::string& name) override; bool openFurnace(int iPad, std::shared_ptr inventory, std::shared_ptr furnace) override; bool openBrewingStand( int iPad, std::shared_ptr inventory, std::shared_ptr brewingStand) override; bool openContainer(int iPad, std::shared_ptr inventory, std::shared_ptr container) override; bool openTrap(int iPad, std::shared_ptr inventory, std::shared_ptr trap) override; bool openFireworks(int iPad, std::shared_ptr player, int x, int y, int z) override; bool openSign(int iPad, std::shared_ptr sign) override; bool openRepairing(int iPad, std::shared_ptr inventory, Level* level, int x, int y, int z) override; bool openTrading(int iPad, std::shared_ptr inventory, std::shared_ptr trader, Level* level, const std::string& name) override; bool openCommandBlock( int iPad, std::shared_ptr commandBlock) override; bool openHopper(int iPad, std::shared_ptr inventory, std::shared_ptr hopper) override; bool openHopperMinecart( int iPad, std::shared_ptr inventory, std::shared_ptr hopper) override; bool openHorse(int iPad, std::shared_ptr inventory, std::shared_ptr container, std::shared_ptr horse) override; bool openBeacon(int iPad, std::shared_ptr inventory, std::shared_ptr beacon) override; private: Game& game_; };