AlpacaLibrary/Include/Game/Interfaces/Mainscreen.hpp

56 lines
1.8 KiB
C++

#ifndef MAINSCREEN_HPP_INCLUDED
#define MAINSCREEN_HPP_INCLUDED
#include "../../Core/Types/Box.hpp"
#include "../../Core/Classes/Character.hpp"
#include <cstdint>
#include <string>
#include <vector>
/** @addtogroup Interfaces
* @{ */
class Mainscreen
{
public:
typedef enum SCREEN_STATE
{
LOGIN_SCREEN,
LOBBY_SCREEN,
CONNECTING,
LOADING,
HOPPING,
PLAYING
} SCREEN_STATE;
static Mainscreen::SCREEN_STATE GetState();
static bool IsLoggedIn();
static bool IsPlaying();
static std::string GetUpText();
static bool UpTextContains(const std::string& UpText);
static bool UpTextContains(const std::vector<std::string>& UpTexts);
static bool IsUpText(const std::string& UpText);
static bool IsUpText(const std::vector<std::string>& UpTexts);
static bool WaitIsUpText(std::uint32_t Duration, std::uint32_t Step, const std::string& UpText);
static bool WaitUpTextContains(std::uint32_t Duration, std::uint32_t Step, const std::string& UpText);
static Internal::Character GetInteractingByIndex(std::uint32_t Index);
static Internal::Character GetInteracting(); //Returns the Character interacting with the Local Player
static Internal::Character GetInteractingWith(const Internal::Character& C); //Returns the Character interactinng with the Character
static bool IsInteracting(const Internal::Character& A, const Internal::Character& B); // True if A is interacting with B
static std::int32_t CameraX();
static std::int32_t CameraY();
static std::int32_t CameraZ();
static std::int32_t CameraPitch();
static std::int32_t CameraYaw();
static bool SetCameraPitch(std::int32_t Pitch);
};
/** @} */
#endif // MAINSCREEN_HPP_INCLUDED