AlpacaLibrary/Include/Game/Interfaces/GameTabs/Magic.hpp

174 lines
5.3 KiB
C++

#ifndef MAGIC_HPP_INCLUDED
#define MAGIC_HPP_INCLUDED
#include <string>
#include <cstdint>
/** @addtogroup GameTabs
* @{ */
class Magic
{
public:
typedef enum SPELL
{
NORMAL_LUMBRIDGE_HOME_TELEPORT,
NORMAL_WIND_STRIKE,
NORMAL_CONFUSE,
NORMAL_ENCHANT_CROSSBOW_BOLT,
NORMAL_WATER_STRIKE,
NORMAL_LVL1_ENCHANT,
NORMAL_EARTH_STRIKE,
NORMAL_WEAKEN,
NORMAL_FIRE_STRIKE,
NORMAL_BONES_TO_BANANAS,
NORMAL_WIND_BOLT,
NORMAL_CURSE,
NORMAL_BIND,
NORMAL_LOW_LEVEL_ALCHEMY,
NORMAL_WATER_BOLT,
NORMAL_VARROCK_TELEPORT,
NORMAL_LVL2_ENCHANT,
NORMAL_EARTH_BOLT,
NORMAL_LUMBRIDGE_TELEPORT,
NORMAL_TELEKINETIC_GRAB,
NORMAL_FIRE_BOLT,
NORMAL_FALADOR_TELEPORT,
NORMAL_CRUMBLE_UNDEAD,
NORMAL_TELEPORT_TO_HOUSE,
NORMAL_WIND_BLAST,
NORMAL_SUPERHEAT_ITEM,
NORMAL_CAMELOT_TELEPORT,
NORMAL_WATER_BLAST,
NORMAL_LVL3_ENCHANT,
NORMAL_IBAN_BLAST,
NORMAL_SNARE,
NORMAL_MAGIC_DART,
NORMAL_ARDOUGNE_TELEPORT,
NORMAL_EARTH_BLAST,
NORMAL_HIGH_LEVEL_ALCHEMY,
NORMAL_CHARGE_WATER_ORB,
NORMAL_LVL4_ENCHANT,
NORMAL_WATCHTOWER_TELEPORT,
NORMAL_FIRE_BLAST,
NORMAL_CHARGE_EARTH_ORB,
NORMAL_BONES_TO_PEACHES,
NORMAL_SARADOMIN_STRIKE,
NORMAL_CLAWS_OF_GUTHIX,
NORMAL_FLAMES_OF_ZAMORAK,
NORMAL_TROLLHEIM_TELEPORT,
NORMAL_WIND_WAVE,
NORMAL_CHARGE_FIRE_ORB,
NORMAL_TELEPORT_TO_APE_ATOLL,
NORMAL_WATER_WAVE,
NORMAL_CHARGE_AIR_ORB,
NORMAL_VULNERABILITY,
NORMAL_LVL5_ENCHANT,
NORMAL_TELEPORT_TO_KOUREND,
NORMAL_EARTH_WAVE,
NORMAL_ENFEEBLE,
NORMAL_TELEOTHER_LUMBRIDGE,
NORMAL_FIRE_WAVE,
NORMAL_ENTANGLE,
NORMAL_STUN,
NORMAL_CHARGE,
NORMAL_TELEOTHER_FALADOR,
NORMAL_TELE_BLOCK,
NORMAL_TELEPORT_TO_BOUNTY_TARGET,
NORMAL_LVL6_ENCHANT,
NORMAL_TELEOTHER_CAMELOT,
NORMAL_LVL7_ENCHANT,
LUNAR_LUNAR_HOME_TELEPORT,
LUNAR_BAKE_PIE,
LUNAR_GEOMANCY,
LUNAR_CURE_PLANT,
LUNAR_MONSTER_EXAMINE,
LUNAR_NPC_CONTACT,
LUNAR_CURE_OTHER,
LUNAR_HUMIDIFY,
LUNAR_MOONCLAN_TELEPORT,
LUNAR_TELE_GROUP_MOONCLAN,
LUNAR_CURE_ME,
LUNAR_OURANIA_TELEPORT,
LUNAR_HUNTER_KIT,
LUNAR_WATERBIRTH_TELEPORT,
LUNAR_TELE_GROUP_WATERBIRTH,
LUNAR_CURE_GROUP,
LUNAR_STAT_SPY,
LUNAR_BARBARIAN_TELEPORT,
LUNAR_TELE_GROUP_BARBARIAN,
LUNAR_SPIN_FLAX,
LUNAR_SUPERGLASS_MAKE,
LUNAR_TAN_LEATHER,
LUNAR_KHAZARD_TELEPORT,
LUNAR_TELE_GROUP_KHAZARD,
LUNAR_DREAM,
LUNAR_STRING_JEWELLERY,
LUNAR_STAT_RESTORE_POT_SHARE,
LUNAR_MAGIC_IMBUE,
LUNAR_FERTILE_SOIL,
LUNAR_BOOST_POTION_SHARE,
LUNAR_FISHING_GUILD_TELEPORT,
LUNAR_TELEPORT_TO_BOUNTY_TARGET,
LUNAR_TELE_GROUP_FISHING_GUILD,
LUNAR_PLANK_MAKE,
LUNAR_CATHERBY_TELEPORT,
LUNAR_TELE_GROUP_CATHERBY,
LUNAR_RECHARGE_DRAGONSTONE,
LUNAR_ICE_PLATEAU_TELEPORT,
LUNAR_TELE_GROUP_ICE_PLATEAU,
LUNAR_ENERGY_TRANSFER,
LUNAR_HEAL_OTHER,
LUNAR_VENGEANCE_OTHER,
LUNAR_VENGEANCE,
LUNAR_HEAL_GROUP,
LUNAR_SPELLBOOK_SWAP,
ANCIENT_ICE_RUSH,
ANCIENT_ICE_BLITZ,
ANCIENT_ICE_BURST,
ANCIENT_ICE_BARRAGE,
ANCIENT_BLOOD_RUSH,
ANCIENT_BLOOD_BLITZ,
ANCIENT_BLOOD_BURST,
ANCIENT_BLOOD_BARRAGE,
ANCIENT_SMOKE_RUSH,
ANCIENT_SMOKE_BLITZ,
ANCIENT_SMOKE_BURST,
ANCIENT_SMOKE_BARRAGE,
ANCIENT_SHADOW_RUSH,
ANCIENT_SHADOW_BLITZ,
ANCIENT_SHADOW_BURST,
ANCIENT_SHADOW_BARRAGE,
ANCIENT_PADDEWWA_TELEPORT,
ANCIENT_SENNTISTEN_TELEPORT,
ANCIENT_KHARYRLL_TELEPORT,
ANCIENT_LASSAR_TELEPORT,
ANCIENT_DAREEYAK_TELEPORT,
ANCIENT_CARRALLANGAR_TELEPORT,
ANCIENT_ANNAKARL_TELEPORT,
ANCIENT_GHORROCK_TELEPORT,
ANCIENT_TELEPORT_TO_BOUNTY_TARGET,
ANCIENT_EDGEVILLE_HOME_TELEPORT
} SPELL;
static bool IsOpen();
static bool Open();
static bool HasLevel(const SPELL& Spell);
static bool IsSpellSelected();
static bool IsSpellSelected(const SPELL& Spell);
static bool IsSpellSelected(const std::string& Name);
static std::string GetSelectedSpellName();
static bool CastSpell(const SPELL& Spell);
static bool SelectSpell(const SPELL& Spell);
};
/** @} */
#endif // MAGIC_HPP_INCLUDED