diff --git a/Include/Core/JavaClass/ByteBuffer.hpp b/Include/Core/JavaClass/ByteBuffer.hpp index e28a0e2..d4c81aa 100644 --- a/Include/Core/JavaClass/ByteBuffer.hpp +++ b/Include/Core/JavaClass/ByteBuffer.hpp @@ -12,7 +12,7 @@ class ByteBuffer : public Object ByteBuffer(const ByteBuffer& B); std::int32_t GetCapacity() const; - std::int8_t Get(std::int32_t Index) const; // still need to implement. + std::int8_t Get(std::int32_t Index) const; }; diff --git a/Include/Core/JavaClass/Object.hpp b/Include/Core/JavaClass/Object.hpp index b12ea80..916728c 100644 --- a/Include/Core/JavaClass/Object.hpp +++ b/Include/Core/JavaClass/Object.hpp @@ -18,7 +18,7 @@ class Object bool InstanceOf(Class C) const; operator bool() const; operator void*() const; - virtual ~Object(); + ~Object(); }; #endif // OBJECT_HPP_INCLUDED diff --git a/Include/Game/Core.hpp b/Include/Game/Core.hpp index 1eda31b..8236a40 100644 --- a/Include/Game/Core.hpp +++ b/Include/Game/Core.hpp @@ -40,7 +40,10 @@ #include "Models/Players.hpp" #include "Models/WallObjects.hpp" +#include "Interactable/DecorativeObject.hpp" #include "Interactable/GameObject.hpp" +#include "Interactable/GroundObject.hpp" +#include "Interactable/WallObject.hpp" // // DoxyGen diff --git a/Include/Game/Interactable/DecorativeObject.hpp b/Include/Game/Interactable/DecorativeObject.hpp new file mode 100644 index 0000000..6734367 --- /dev/null +++ b/Include/Game/Interactable/DecorativeObject.hpp @@ -0,0 +1,31 @@ +#ifndef INTERACTABLEDECORATIVEOBJECT_HPP_INCLUDED +#define INTERACTABLEDECORATIVEOBJECT_HPP_INCLUDED + +#include "../../Core/Classes/DecorativeObject.hpp" +#include "../../Core/Classes/ObjectInfo.hpp" +#include "../../Core/Types/Tile.hpp" +#include "../../Core/Types/Point.hpp" +#include "../../Core/Types/Convex.hpp" +#include + +namespace Interactable +{ + class DecorativeObject : public Internal::DecorativeObject + { + public: + DecorativeObject(const Internal::DecorativeObject& G); + DecorativeObject(const DecorativeObject& G); + + std::int32_t GetID() const; + std::string GetName() const; + Tile GetTile() const; + Internal::ObjectInfo GetInfo() const; + std::vector GetModel() const; + Convex GetConvex() const; + + operator Internal::DecorativeObject() const; + }; +} + + +#endif // INTERACTABLEDECORATIVEOBJECT_HPP_INCLUDED diff --git a/Include/Game/Interactable/GameObject.hpp b/Include/Game/Interactable/GameObject.hpp index 48c47d4..8984e8f 100644 --- a/Include/Game/Interactable/GameObject.hpp +++ b/Include/Game/Interactable/GameObject.hpp @@ -23,6 +23,7 @@ namespace Interactable std::vector GetModel() const; Convex GetConvex() const; + operator Internal::GameObject() const; }; } diff --git a/Include/Game/Interactable/GroundObject.hpp b/Include/Game/Interactable/GroundObject.hpp new file mode 100644 index 0000000..5684507 --- /dev/null +++ b/Include/Game/Interactable/GroundObject.hpp @@ -0,0 +1,30 @@ +#ifndef INTERACTABLEGROUNDOBJECT_HPP_INCLUDED +#define INTERACTABLEGROUNDOBJECT_HPP_INCLUDED + +#include "../../Core/Classes/GroundObject.hpp" +#include "../../Core/Classes/ObjectInfo.hpp" +#include "../../Core/Types/Tile.hpp" +#include "../../Core/Types/Point.hpp" +#include "../../Core/Types/Convex.hpp" +#include + +namespace Interactable +{ + class GroundObject : public Internal::GroundObject + { + public: + GroundObject(const Internal::GroundObject& G); + GroundObject(const GroundObject& G); + + std::int32_t GetID() const; + std::string GetName() const; + Tile GetTile() const; + Internal::ObjectInfo GetInfo() const; + std::vector GetModel() const; + Convex GetConvex() const; + + operator Internal::GroundObject() const; + }; +} + +#endif // INTERACTABLEGROUNDOBJECT_HPP_INCLUDED diff --git a/Include/Game/Interactable/WallObject.hpp b/Include/Game/Interactable/WallObject.hpp new file mode 100644 index 0000000..22ea5f3 --- /dev/null +++ b/Include/Game/Interactable/WallObject.hpp @@ -0,0 +1,31 @@ +#ifndef INTERACTABLEWALLOBJECT_HPP_INCLUDED +#define INTERACTABLEWALLOBJECT_HPP_INCLUDED + +#include "../../Core/Classes/WallObject.hpp" +#include "../../Core/Classes/ObjectInfo.hpp" +#include "../../Core/Types/Tile.hpp" +#include "../../Core/Types/Point.hpp" +#include "../../Core/Types/Convex.hpp" +#include + +namespace Interactable +{ + class WallObject : public Internal::WallObject + { + public: + WallObject(const Internal::WallObject& G); + WallObject(const WallObject& G); + + std::int32_t GetID() const; + std::string GetName() const; + Tile GetTile() const; + Internal::ObjectInfo GetInfo() const; + std::vector GetModel() const; + Convex GetConvex() const; + + operator Internal::WallObject() const; + }; +} + + +#endif // INTERACTABLEWALLOBJECT_HPP_INCLUDED diff --git a/Library/libAlpacaLibrary.a b/Library/libAlpacaLibrary.a index 1b41504..8efb320 100644 Binary files a/Library/libAlpacaLibrary.a and b/Library/libAlpacaLibrary.a differ