diff --git a/Include/Core/Globals.hpp b/Include/Core/Globals.hpp index 7072484..1da797e 100644 --- a/Include/Core/Globals.hpp +++ b/Include/Core/Globals.hpp @@ -388,6 +388,44 @@ namespace Globals { "Ghorrock Teleport", 91, 398, 96 }, { "Teleport to Bounty Target", 92, 409, 85 }, { "Edgeville Home Teleport", 93, 356, 0 }, + + // Arceuus 141-177 + { "Arceuus Home Teleport", 143, 356, 0 }, + { "Reanimate Goblin", 144, 1247, 3 }, + { "Lumbridge Graveyard Teleport", 145, 1294, 6 }, + { "Reanimate Monkey", 146, 1264, 7 }, + { "Reanimate Imp", 147, 1258, 12 }, + { "Reanimate Minotaur", 148, 1259, 16 }, + { "Draynor Manor Teleport", 149, 1295, 17 }, + { "Reanimate Scorpion", 150, 1257, 19 }, + { "Reanimate Bear", 151, 1256, 21 }, + { "Reanimate Unicorn", 152, 1260, 22 }, + { "Reanimate Dog", 153, 1268, 26 }, + { "Mind Altar Teleport", 154, 1296, 28 }, + { "Reanimate Chaos Druid", 155, 1251, 30 }, + { "Respawn Teleport", 156, 1319, 34 }, + { "Reanimate Giant", 157, 1255, 37 }, + { "Salve Graveyard Teleport", 158, 1320, 40 }, + { "Reanimate Ogre", 159, 1254, 40 }, + { "Reanimate Elf", 160, 1250, 43 }, + { "Reanimate Troll", 161, 1252, 46 }, + { "Fenkenstrain's Castle Teleport", 162, 1321, 48 }, + { "Reanimate Horror", 163, 1266, 52 }, + { "Reanimate Kalphite", 164, 1261, 57 }, + { "West Ardougne Teleport", 165, 1322, 61 }, + { "Reanimate Dagannoth", 166, 1253, 62 }, + { "Reanimate Bloodveld", 167, 1292, 65 }, + { "Harmony Island Teleport", 168, 1323, 65 }, + { "Reanimate TzHaar", 169, 1287, 69 }, + { "Cemetery Teleport", 170, 1324, 71 }, + { "Reanimate Demon", 171, 1273, 72 }, + { "Reanimate Aviansie", 172, 1288, 78 }, + { "Resurrect Crops", 173, 1327, 78 }, + { "Barrows Teleport", 174, 1325, 83 }, + { "Reanimate Abyssal Creature", 175, 1290, 85 }, + { "Ape Atoll Teleport", 176, 1326, 90 }, + { "Reanimate Dragon", 177, 1274, 93 }, + { "Battlefront Teleport", 178, 1325, 23 }, }; //************ Options.cpp ************// diff --git a/Include/Core/Internal.hpp b/Include/Core/Internal.hpp index 2cb8df7..81bb858 100644 --- a/Include/Core/Internal.hpp +++ b/Include/Core/Internal.hpp @@ -159,6 +159,7 @@ namespace Internal std::int32_t GetLocalPlayerIndex(); PlayerManager GetLocalPlayerManager(); Region GetLocalRegion(); + std::int32_t GetLoginAccountState(); std::int32_t GetLoginCaret(); std::string GetLoginMessage0(); std::string GetLoginMessage1(); diff --git a/Include/Core/Types/Triangle.hpp b/Include/Core/Types/Triangle.hpp index cff7215..c649d5e 100644 --- a/Include/Core/Types/Triangle.hpp +++ b/Include/Core/Types/Triangle.hpp @@ -10,15 +10,18 @@ class Triangle Point B; Point C; double Area; - double Sign; Triangle(); Triangle(const Point& A, const Point& B, const Point& C); - ~Triangle(); Point GetCentroid() const; - bool Contains(const Point& P) const; + float GetCentroidX() const; + float GetCentroidY() const; + bool Contains(const Point& P) const; + bool Contains(float X, float Y) const; + + ~Triangle(); }; #endif // TRIANGLE_HPP diff --git a/Include/Game/Core.hpp b/Include/Game/Core.hpp index f5c339d..b7104c0 100644 --- a/Include/Game/Core.hpp +++ b/Include/Game/Core.hpp @@ -41,6 +41,7 @@ #include "Interfaces/GameTabs/Stats.hpp" #include "Models/DecorativeObjects.hpp" +#include "Models/GraphicsObjects.hpp" #include "Models/GameObjects.hpp" #include "Models/GroundItems.hpp" #include "Models/GroundObjects.hpp" @@ -50,6 +51,7 @@ #include "Models/WallObjects.hpp" #include "Interactable/DecorativeObject.hpp" +#include "Interactable/GraphicsObject.hpp" #include "Interactable/GameObject.hpp" #include "Interactable/GroundItem.hpp" #include "Interactable/GroundObject.hpp" diff --git a/Include/Game/Interactable/GraphicsObject.hpp b/Include/Game/Interactable/GraphicsObject.hpp new file mode 100644 index 0000000..15ff0fa --- /dev/null +++ b/Include/Game/Interactable/GraphicsObject.hpp @@ -0,0 +1,35 @@ +#ifndef INTERACTABLEGRAPHICSOBJECT_HPP_INCLUDED +#define INTERACTABLEGRAPHICSOBJECT_HPP_INCLUDED + +#include "../../Core/Classes/GraphicsObject.hpp" +#include "../../Core/Types/Tile.hpp" +#include "../../Core/Types/Box.hpp" +#include "../../Core/Types/Convex.hpp" +#include "../../Core/Types/Wireframe.hpp" +#include + +namespace Interactable +{ + class GraphicsObject : public Internal::GraphicsObject + { + public: + GraphicsObject(const Internal::GraphicsObject& G); + + GraphicsObject() = default; + GraphicsObject(GraphicsObject&& Obj) = default; + GraphicsObject(const GraphicsObject& Obj) = default; + GraphicsObject& operator=(GraphicsObject&& Obj) = default; + GraphicsObject& operator=(const GraphicsObject& Obj) = default; + + std::vector GetModel() const; + Wireframe GetWireframe() const; + Convex GetConvex() const; + Box GetBox() const; + + double GetVisibility() const; + Tile GetTile() const; + + }; +} + +#endif // INTERACTABLEGRAPHICSOBJECT_HPP_INCLUDED diff --git a/Include/Game/Interfaces/GameTabs/Magic.hpp b/Include/Game/Interfaces/GameTabs/Magic.hpp index 8334e67..f966f34 100644 --- a/Include/Game/Interfaces/GameTabs/Magic.hpp +++ b/Include/Game/Interfaces/GameTabs/Magic.hpp @@ -154,6 +154,43 @@ namespace Magic ANCIENT_TELEPORT_TO_BOUNTY_TARGET, ANCIENT_EDGEVILLE_HOME_TELEPORT, + ARCEUUS_ARCEUUS_HOME_TELEPORT, + ARCEUUS_REANIMATE_GOBLIN, + ARCEUUS_LUMBRIDGE_GRAVEYARD_TELEPORT, + ARCEUUS_REANIMATE_MONKEY, + ARCEUUS_REANIMATE_IMP, + ARCEUUS_REANIMATE_MINOTAUR, + ARCEUUS_DRAYNOR_MANOR_TELEPORT, + ARCEUUS_REANIMATE_SCORPION, + ARCEUUS_REANIMATE_BEAR, + ARCEUUS_REANIMATE_UNICORN, + ARCEUUS_REANIMATE_DOG, + ARCEUUS_MIND_ALTAR_TELEPORT, + ARCEUUS_REANIMATE_CHAOS_DRUID, + ARCEUUS_RESPAWN_TELEPORT, + ARCEUUS_REANIMATE_GIANT, + ARCEUUS_SALVE_GRAVEYARD_TELEPORT, + ARCEUUS_REANIMATE_OGRE, + ARCEUUS_REANIMATE_ELF, + ARCEUUS_REANIMATE_TROLL, + ARCEUUS_FENKENSTRAINS_CASTLE_TELEPORT, + ARCEUUS_REANIMATE_HORROR, + ARCEUUS_REANIMATE_KALPHITE, + ARCEUUS_WEST_ARDOUGNE_TELEPORT, + ARCEUUS_REANIMATE_DAGANNOTH, + ARCEUUS_REANIMATE_BLOODVELD, + ARCEUUS_HARMONY_ISLAND_TELEPORT, + ARCEUUS_REANIMATE_TZHAAR, + ARCEUUS_CEMETERY_TELEPORT, + ARCEUUS_REANIMATE_DEMON, + ARCEUUS_REANIMATE_AVIANSIE, + ARCEUUS_RESURRECT_CROPS, + ARCEUUS_BARROWS_TELEPORT, + ARCEUUS_REANIMATE_ABYSSAL_CREATURE, + ARCEUUS_APE_ATOLL_TELEPORT, + ARCEUUS_REANIMATE_DRAGON, + ARCEUUS_BATTLEFRONT_TELEPORT, + NONE } SPELL; diff --git a/Include/Game/Models/GraphicsObjects.hpp b/Include/Game/Models/GraphicsObjects.hpp new file mode 100644 index 0000000..eb6d9ce --- /dev/null +++ b/Include/Game/Models/GraphicsObjects.hpp @@ -0,0 +1,27 @@ +#ifndef GRAPHICSOBJECTS_HPP_INCLUDED +#define GRAPHICSOBJECTS_HPP_INCLUDED + +#include "../../Game/Interactable/GraphicsObject.hpp" +#include +#include +#include +#include + +namespace GraphicsObjects +{ + std::vector GetAllWithin(std::int32_t Distance); + std::vector GetAll(); + + std::vector GetAll(const Tile& T); + std::vector GetAll(std::int32_t ID, std::int32_t Distance = -1); + std::vector GetAll(const std::vector& IDs, std::int32_t Distance = -1); + std::vector GetAll(const std::function& Filter, std::int32_t Distance = -1); + + Interactable::GraphicsObject Get(const Tile& T); + Interactable::GraphicsObject Get(std::int32_t ID, std::int32_t Distance = -1); + Interactable::GraphicsObject Get(const std::vector& IDs, std::int32_t Distance = -1); + Interactable::GraphicsObject Get(const std::function& Filter, std::int32_t Distance = -1); +} + + +#endif // GRAPHICSOBJECTS_HPP_INCLUDED diff --git a/Library/libAlpacaLibrary.a b/Library/libAlpacaLibrary.a index f3d4973..62a6bea 100644 Binary files a/Library/libAlpacaLibrary.a and b/Library/libAlpacaLibrary.a differ