From 3948808f4917ebde2b1b013617479c7f19eaff64 Mon Sep 17 00:00:00 2001 From: Kasi Date: Wed, 18 Apr 2018 06:50:40 +0100 Subject: [PATCH] Release 0.31 --- Include/Core/Debug.hpp | 1 + Include/Core/Input.hpp | 1 - Include/Game/Core.hpp | 1 + Include/Game/Interactable/GroundItem.hpp | 35 +++++++++++++++++++++++ Include/Game/Interactable/Player.hpp | 1 + Include/Game/Interfaces/Menu.hpp | 1 + Include/Game/Interfaces/Trade.hpp | 24 ++++++++++++++++ Include/Game/Tools/Widgets.hpp | 6 ++-- Library/libAlpacaLibrary.a | Bin 2595376 -> 2622704 bytes 9 files changed, 66 insertions(+), 4 deletions(-) create mode 100644 Include/Game/Interactable/GroundItem.hpp create mode 100644 Include/Game/Interfaces/Trade.hpp diff --git a/Include/Core/Debug.hpp b/Include/Core/Debug.hpp index 85ed0e1..65435be 100644 --- a/Include/Core/Debug.hpp +++ b/Include/Core/Debug.hpp @@ -11,6 +11,7 @@ class Debug static Logger Warning; static Logger Error; static Logger Fatal; + static Logger Internal; static void ShowConsole(); static void HideConsole(); diff --git a/Include/Core/Input.hpp b/Include/Core/Input.hpp index 81e6869..f81d956 100644 --- a/Include/Core/Input.hpp +++ b/Include/Core/Input.hpp @@ -55,7 +55,6 @@ void ScrollUp(); void ScrollDown(); void MouseDown(std::int32_t B); void MouseUp(std::int32_t B); -void MouseClick(std::int32_t B); void MouseMove(Point P); void MouseMove(std::int32_t X, std::int32_t Y); void KeyDown(std::int32_t K); diff --git a/Include/Game/Core.hpp b/Include/Game/Core.hpp index 420bd24..3810bf5 100644 --- a/Include/Game/Core.hpp +++ b/Include/Game/Core.hpp @@ -17,6 +17,7 @@ #include "Interfaces/Mainscreen.hpp" #include "Interfaces/Menu.hpp" #include "Interfaces/Minimap.hpp" +#include "Interfaces/Trade.hpp" #include "Interfaces/GameTabs/Clan.hpp" #include "Interfaces/GameTabs/Combat.hpp" #include "Interfaces/GameTabs/Emotes.hpp" diff --git a/Include/Game/Interactable/GroundItem.hpp b/Include/Game/Interactable/GroundItem.hpp new file mode 100644 index 0000000..2659492 --- /dev/null +++ b/Include/Game/Interactable/GroundItem.hpp @@ -0,0 +1,35 @@ +#ifndef INTERACTABLEGROUNDITEM_HPP_INCLUDED +#define INTERACTABLEGROUNDITEM_HPP_INCLUDED + +#include "../../Core/Classes/GroundItem.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 GroundItem : public Internal::GroundItem + { + private: + std::int32_t X; + std::int32_t Y; + public: + GroundItem(const Internal::GroundItem& G); + GroundItem(const Internal::GroundItem& G, std::int32_t X, std::int32_t Y); + GroundItem(const GroundItem& 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::GroundItem() const; + }; +} + + +#endif // INTERACTABLEGROUNDITEM_HPP_INCLUDED diff --git a/Include/Game/Interactable/Player.hpp b/Include/Game/Interactable/Player.hpp index 19aa33d..fe25e5f 100644 --- a/Include/Game/Interactable/Player.hpp +++ b/Include/Game/Interactable/Player.hpp @@ -23,6 +23,7 @@ namespace Interactable Internal::Character GetInteracting() const; bool Interacting() const; bool Interacting(const Internal::Character& C) const; + bool Interact(const std::string& Option) const; operator Internal::Player() const; }; diff --git a/Include/Game/Interfaces/Menu.hpp b/Include/Game/Interfaces/Menu.hpp index 929dbc9..26f163e 100644 --- a/Include/Game/Interfaces/Menu.hpp +++ b/Include/Game/Interfaces/Menu.hpp @@ -16,6 +16,7 @@ class Menu static bool Open(); static std::int32_t GetCount(); + static std::vector GetActionsRaw(); static std::vector GetActions(); static std::vector GetTargetsRaw(); static std::vector GetTargets(); diff --git a/Include/Game/Interfaces/Trade.hpp b/Include/Game/Interfaces/Trade.hpp new file mode 100644 index 0000000..714b57c --- /dev/null +++ b/Include/Game/Interfaces/Trade.hpp @@ -0,0 +1,24 @@ +#ifndef TRADE_HPP_INCLUDED +#define TRADE_HPP_INCLUDED + +#include +#include +#include + +class Trade +{ + public: + static bool IsOpen(); + + static std::vector GetYourOfferItemIDs(); + static std::vector GetYourOfferItemNames(); + static std::vector GetYourOfferItemAmounts(); + + static std::vector GetTheirOfferItemIDs(); + static std::vector GetTheirOfferItemNames(); + static std::vector GetTheirOfferItemAmounts(); + + +}; + +#endif // TRADE_HPP_INCLUDED diff --git a/Include/Game/Tools/Widgets.hpp b/Include/Game/Tools/Widgets.hpp index 22d0fb9..ce18013 100644 --- a/Include/Game/Tools/Widgets.hpp +++ b/Include/Game/Tools/Widgets.hpp @@ -60,12 +60,12 @@ class Widgets * @brief Returns the specified Widget by Parent ID * @code std::vector BankParent = Widgets::Get(15); @endcode */ - static std::vector Get(std::int32_t Parent); + static std::vector GetAll(std::int32_t Parent); /** * @brief Returns the specified Widget by Parent, and Child ID * @code Widget BankInventory = Widgets::Get(15, 3); @endcode */ - static Internal::Widget Get(std::int32_t Parent, std::int32_t Child); + static Internal::Widget Get(std::int32_t Parent, std::int32_t Child = -1); /** * @brief Returns the specified Widget by Parent, and Child, and Grandchild ID * @code Widget BankCloseButton = Widgets::Get(12, 3, 11); @endcode @@ -78,7 +78,7 @@ class Widgets * std::vector Widgets = Widgets::Get(WTextEquals); @endcode * Will return all Widgets whose Text equals Enter Amount */ - static std::vector Get(const std::function& Filter); + static std::vector GetAll(const std::function& Filter); }; diff --git a/Library/libAlpacaLibrary.a b/Library/libAlpacaLibrary.a index 3c7e082272385306650d84434044c38b2ca61708..cf5508813aa463b7ab30141b348f9baf77748055 100644 GIT binary patch delta 101946 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