Game.h 1.4 KB

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