#pragma once

#include <Bild.h>
#include <Knopf.h>

#include "Dialog.h"
#include "DragController.h"
#include "Menu.h"

class Player;
class InventoryDragSource;

class Game : public Menu
{
private:
    Framework::Knopf* logout;
    Framework::TextFeld* debug;
    Framework::Array<UIMLDialog*> dialogs;
    Framework::UIMLView* guiView;
    Framework::UIMLView* targetUIMLView;
    DragController<InventoryDragSource, int>* inventoryDragController;

public:
    // Konstruktor
    Game(Bildschirm* zScreen);
    ~Game();

    void updatePosition(Vec3<float> position, bool target, Vec3<int> targetPos);
    void api(char* data);
    void closeCurrentDialog();
    DragController<InventoryDragSource, int>* zInventoryDragController();
    void setTargetUIML(Framework::Text uiml);
};