#pragma once #include #include #include "Chat.h" #include "Dialog.h" #include "DragController.h" #include "ItemList.h" #include "MapWindow.h" #include "Menu.h" class Player; class InventoryDragSource; class Game : public Menu { private: Framework::Knopf* logout; Framework::TextFeld* debug; Framework::Array dialogs; Framework::UIMLView* guiView; Framework::UIMLView* targetUIMLView; DragController* inventoryDragController; Framework::TextFeld* filter; Framework::BildZ* searchIcon; ItemListContainer* itemListContainer; Framework::Knopf* chatButton; MapWindow* mapWindow; Chat* chat; bool recipieVisible; public: // Konstruktor Game(Bildschirm* zScreen); ~Game(); void updatePosition(Vec3 position, bool target, Vec3 targetPos); void api(char* data); void closeCurrentDialog(); DragController* zInventoryDragController(); void setTargetUIML(Framework::Text uiml); void updateRecipieVisibility(); void showItemList(); bool isItemListVisible(); const Text* zFilterText(); void makeChatButtonVisible(); Chat* zChat() const; MapWindow* zMap() const; void hide() override; }; class ScreenCenter : public Framework::Zeichnung { public: ScreenCenter(); virtual void render(Bild& zRObj) override; };