AlpacaLibrary/Include/Game/Interfaces/Menu.hpp

52 lines
2.4 KiB
C++
Raw Normal View History

2017-12-25 23:49:48 +00:00
#ifndef MENU_HPP_INCLUDED
#define MENU_HPP_INCLUDED
#include "../../Core/Types/Box.hpp"
#include <cstdint>
#include <string>
#include <vector>
/** @addtogroup Interfaces
* @{ */
class Menu
{
public:
static bool IsOpen();
static bool Open();
static std::int32_t GetCount();
static std::vector<std::string> GetActions();
static std::vector<std::string> GetTargetsRaw();
static std::vector<std::string> GetTargets();
static std::vector<std::string> GetOptions();
static std::int32_t IndexOf(const std::string& Action);
static std::int32_t IndexOf(const std::string& Action, const std::string& Target);
static std::int32_t IndexOf(const std::vector<std::string>& PossibleActions);
static std::int32_t IndexOf(const std::vector<std::string>& PossibleActions, const std::vector<std::string>& PossibleTargets);
static bool Contains(const std::string& Action);
static bool Contains(const std::string& Action, const std::string& Target);
static bool Contains(const std::vector<std::string>& PossibleActions);
static bool Contains(const std::vector<std::string>& PossibleActions, const std::vector<std::string>& Targets);
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::string& Action);
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::string& Action, const std::string& Target);
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::vector<std::string>& PossibleActions); // Waits until the Menu contains at least one of these actions
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::vector<std::string>& PossibleActions, const std::vector<std::string>& PossibleTargets); // Waits until the Menu contains at least one of these actions and Targets
static bool Select(std::uint32_t Index);
static bool Select(const std::string& Action);
static bool Select(const std::string& Action, const std::string& Target);
static bool Select(const std::vector<std::string>& PossibleActions);
static bool Select(const std::vector<std::string>& PossibleActions, const std::vector<std::string>& PossibleTargets);
static std::vector<Box> GetBoxes();
static Box GetBox();
};
/** @} */
#endif // MENU_HPP_INCLUDED