#ifndef GAMEOBJECT_HPP_INCLUDED
#define GAMEOBJECT_HPP_INCLUDED

#include "../JavaClass/Object.hpp"
#include "../JavaClass/Class.hpp"
#include <cstdint>
#include "Renderable.hpp"

namespace Internal
{
    class GameObject : public Object
    {
        public:
            GameObject();
            GameObject(const void* Obj);
            GameObject(const GameObject& G);
            static Class GetClass();

            std::int32_t GetAngle() const;
            std::int32_t GetFlags() const;
            std::int64_t GetHash() const;
            std::int32_t GetHeight() const;
            std::int32_t GetOffsetX() const;
            std::int32_t GetOffsetY() const;
            std::int32_t GetPlane() const;
            std::int32_t GetRelativeX() const;
            std::int32_t GetRelativeY() const;
            Renderable GetRenderable() const;
            std::int32_t GetX() const;
            std::int32_t GetY() const;

    };
}

#endif // GAMEOBJECT_HPP_INCLUDED
