2017-12-25 23:49:48 +00:00
|
|
|
#ifndef MINIMAP_HPP_INCLUDED
|
|
|
|
#define MINIMAP_HPP_INCLUDED
|
|
|
|
|
|
|
|
#include "../../Core/Types/Tile.hpp"
|
|
|
|
#include "../../Core/Types/Point.hpp"
|
|
|
|
#include "../../Core/Classes/Region.hpp"
|
|
|
|
#include <cstdint>
|
2018-11-22 14:39:29 +00:00
|
|
|
#include <functional>
|
2017-12-25 23:49:48 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
namespace Minimap
|
2017-12-25 23:49:48 +00:00
|
|
|
{
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief Returns the middle point of the minimap
|
|
|
|
*
|
|
|
|
* @return the middle point of the minimap
|
|
|
|
*/
|
|
|
|
Point GetMiddle();
|
|
|
|
/**
|
|
|
|
* @brief Returns the plane the local player is on
|
|
|
|
*
|
|
|
|
* @return the plane the local player is on
|
|
|
|
*/
|
|
|
|
std::int32_t GetPlane();
|
2021-10-20 15:27:36 +00:00
|
|
|
|
|
|
|
std::int32_t GetRegionID();
|
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief Returns the tile the local player is on
|
|
|
|
*
|
|
|
|
* @return the tile the local player is on
|
|
|
|
*/
|
|
|
|
Tile GetPosition();
|
2021-10-16 00:18:02 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Returns the tile the local player is on, supports instanced regions.
|
|
|
|
*
|
|
|
|
* @return the tile the local player is on
|
|
|
|
*/
|
|
|
|
Tile GetInstancePosition();
|
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief Returns the tile of the local players destination
|
|
|
|
*
|
|
|
|
* @return the tile of the local players destination
|
|
|
|
*/
|
|
|
|
Tile GetDestination();
|
2017-12-25 23:49:48 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief Returns true if the local players position is close to the passed tile, uses pixels as distance
|
|
|
|
*
|
|
|
|
* @param T tile to check
|
|
|
|
* @param Distance in pixels
|
|
|
|
* @return true if the local players position is close to the passed tile
|
|
|
|
*/
|
|
|
|
bool IsCloseTo(const Tile& T, std::int32_t Distance);
|
|
|
|
/**
|
|
|
|
* @brief Returns true if the passed tile is on the minimap
|
|
|
|
*
|
|
|
|
* @param T tile to check
|
|
|
|
* @return true if the passed tile is on the minimap
|
|
|
|
*/
|
|
|
|
bool IsTileOn(const Tile& T);
|
2017-12-25 23:49:48 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief When poisoned, clicks on the health orb to cure
|
|
|
|
*
|
|
|
|
* @return true if poisoned and if the function successfully clicks the "Cure" option on the orb
|
|
|
|
*/
|
|
|
|
bool ClickCure();
|
2018-12-26 08:44:53 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief Clicks on the minimap compass to quickly face North
|
|
|
|
*
|
|
|
|
* @return true if the function succesfully clicks the compass, and the camera angle is 0 / North
|
|
|
|
*/
|
|
|
|
bool ClickCompass(); // Clicks north
|
2018-06-28 02:22:43 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief Clicks the quick-prayer orb
|
|
|
|
*
|
|
|
|
* @return true if the function succesfully clicked the orb
|
|
|
|
*/
|
|
|
|
bool ClickQuickPrayer();
|
2018-07-13 21:41:07 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
/**
|
|
|
|
* @brief Clicks the toggle-run orb
|
|
|
|
*
|
|
|
|
* @return true if the function succesfully clicked the orb
|
|
|
|
*/
|
|
|
|
bool ClickToggleRun();
|
2019-07-18 17:54:18 +00:00
|
|
|
bool ClickSpecial();
|
2018-07-31 12:20:27 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
bool ClickTile(const Tile& T, std::int32_t Random = 5);
|
2018-08-25 01:03:50 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
bool WalkPath(const std::vector<Tile>& Path, std::int32_t Distance, std::int32_t Random);
|
|
|
|
bool WalkPath(const std::vector<Tile>& Path, std::int32_t Distance, std::int32_t Random, std::function<bool()> Func);
|
2018-08-27 18:09:14 +00:00
|
|
|
|
2018-12-27 18:17:09 +00:00
|
|
|
bool IsReachable(const Tile& T);
|
2018-12-31 21:52:58 +00:00
|
|
|
}
|
2017-12-25 23:49:48 +00:00
|
|
|
|
|
|
|
#endif // MINIMAP_HPP_INCLUDED
|