diff --git a/Include/Core/Classes/Character.hpp b/Include/Core/Classes/Character.hpp index 7fd8205..353697c 100644 --- a/Include/Core/Classes/Character.hpp +++ b/Include/Core/Classes/Character.hpp @@ -5,6 +5,7 @@ #include "../JavaClass/Class.hpp" #include #include "LinkedList.hpp" +#include "IterableHashTable.hpp" #include #include @@ -28,8 +29,7 @@ namespace Internal std::int32_t GetAnimationFrame() const; std::int32_t GetAnimationID() const; LinkedList GetCombatInfo() const; - std::int32_t GetGraphicsFrame() const; - std::int32_t GetGraphicsID() const; + IterableHashTable GetGraphicsHashTable() const; std::vector GetHitsplatTicks() const; std::vector GetHitsplatTypes() const; std::vector GetHitsplatValues() const; diff --git a/Include/Core/Classes/GraphicsNode.hpp b/Include/Core/Classes/GraphicsNode.hpp new file mode 100644 index 0000000..816302d --- /dev/null +++ b/Include/Core/Classes/GraphicsNode.hpp @@ -0,0 +1,29 @@ +#ifndef GRAPHICSNODE_HPP_INCLUDED +#define GRAPHICSNODE_HPP_INCLUDED + +#include "Node.hpp" +#include "../JavaClass/Class.hpp" +#include + +namespace Internal +{ + class GraphicsNode : public Node + { + public: + GraphicsNode(const void* Obj); + + GraphicsNode() = default; + GraphicsNode(GraphicsNode&& Obj) = default; + GraphicsNode(const GraphicsNode& Obj) = default; + GraphicsNode& operator=(GraphicsNode&& Obj) = default; + GraphicsNode& operator=(const GraphicsNode& Obj) = default; + + static Class GetClass(); + + std::int32_t GetID() const; + std::int32_t GetFrame() const; + std::int32_t GetTick() const; + }; +} + +#endif // GRAPHICSNODE_HPP_INCLUDED diff --git a/Include/Core/Internal.hpp b/Include/Core/Internal.hpp index 61092cf..4b766dd 100644 --- a/Include/Core/Internal.hpp +++ b/Include/Core/Internal.hpp @@ -63,6 +63,7 @@ #include "Classes/FriendList.hpp" #include "Classes/GameObject.hpp" #include "Classes/GameShell.hpp" +#include "Classes/GraphicsNode.hpp" #include "Classes/GraphicsObject.hpp" #include "Classes/GroundItem.hpp" #include "Classes/GroundObject.hpp" @@ -316,6 +317,8 @@ namespace Internal std::int32_t GetCollisionFlags(std::int32_t X, std::int32_t Y, std::int32_t Plane); std::vector ToByteArray(const Object& O); std::vector GetKeysPressed(); + std::int32_t GetGraphicsID(const Internal::Character& C); + std::int32_t GetGraphicsFrame(const Internal::Character& C); } #endif // INTERNAL_HPP_INCLUDED diff --git a/Include/Core/Time.hpp b/Include/Core/Time.hpp index bf717e5..ae2f588 100644 --- a/Include/Core/Time.hpp +++ b/Include/Core/Time.hpp @@ -3,6 +3,7 @@ #include #include +#include void Wait(std::int64_t Duration); std::uint64_t CurrentTimeMillis(); diff --git a/Library/libAlpacaLibrary.a b/Library/libAlpacaLibrary.a index 5ee4af9..c4114df 100644 Binary files a/Library/libAlpacaLibrary.a and b/Library/libAlpacaLibrary.a differ