Game.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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. Framework::BildZ* searchIcon;
  23. ItemListContainer* itemListContainer;
  24. Framework::Knopf* chatButton;
  25. MapWindow* mapWindow;
  26. Chat* chat;
  27. bool recipieVisible;
  28. Critical dialogCs;
  29. public:
  30. // Konstruktor
  31. Game(Bildschirm* zScreen);
  32. ~Game();
  33. void updatePosition(Vec3<float> position, bool target, Vec3<int> targetPos);
  34. void api(char* data);
  35. void closeCurrentDialog();
  36. DragController<InventoryDragSource, int>* zInventoryDragController();
  37. void setTargetUIML(Framework::Text uiml);
  38. void updateRecipieVisibility();
  39. void showItemList();
  40. bool isItemListVisible();
  41. const Text* zFilterText();
  42. void makeChatButtonVisible();
  43. Chat* zChat() const;
  44. MapWindow* zMap() const;
  45. void hide() override;
  46. };
  47. class ScreenCenter : public Framework::Zeichnung
  48. {
  49. public:
  50. ScreenCenter();
  51. virtual void render(Bild& zRObj) override;
  52. };