Game.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #pragma once
  2. #include <Bild.h>
  3. #include <Knopf.h>
  4. #include "Chat.h"
  5. #include "Dialog.h"
  6. #include "DragController.h"
  7. #include "ItemList.h"
  8. #include "MapWindow.h"
  9. #include "Menu.h"
  10. class Player;
  11. class InventoryDragSource;
  12. class Game : public Menu
  13. {
  14. private:
  15. Framework::Knopf* logout;
  16. Framework::TextFeld* debug;
  17. Framework::Array<UIMLDialog*> dialogs;
  18. Framework::UIMLView* guiView;
  19. Framework::UIMLView* targetUIMLView;
  20. DragController<InventoryDragSource, int>* inventoryDragController;
  21. Framework::TextFeld* filter;
  22. ItemListContainer* itemListContainer;
  23. Framework::Knopf* chatButton;
  24. MapWindow* mapWindow;
  25. Chat* chat;
  26. bool recipieVisible;
  27. public:
  28. // Konstruktor
  29. Game(Bildschirm* zScreen);
  30. ~Game();
  31. void updatePosition(Vec3<float> position, bool target, Vec3<int> targetPos);
  32. void api(char* data);
  33. void closeCurrentDialog();
  34. DragController<InventoryDragSource, int>* zInventoryDragController();
  35. void setTargetUIML(Framework::Text uiml);
  36. void updateRecipieVisibility();
  37. void showItemList();
  38. bool isItemListVisible();
  39. const Text* zFilterText();
  40. void makeChatButtonVisible();
  41. Chat* zChat() const;
  42. MapWindow* zMap() const;
  43. void hide() override;
  44. };
  45. class ScreenCenter : public Framework::Zeichnung
  46. {
  47. public:
  48. ScreenCenter();
  49. virtual void render(Bild& zRObj) override;
  50. };