215 lines
6.1 KiB
C++
215 lines
6.1 KiB
C++
#ifndef MAGIC_HPP_INCLUDED
|
|
#define MAGIC_HPP_INCLUDED
|
|
|
|
#include <string>
|
|
#include <cstdint>
|
|
|
|
/** @addtogroup GameTabs
|
|
* @{ */
|
|
namespace Magic
|
|
{
|
|
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_WIND_SURGE,
|
|
NORMAL_TELEOTHER_FALADOR,
|
|
NORMAL_WATER_SURGE,
|
|
NORMAL_TELE_BLOCK,
|
|
NORMAL_TELEPORT_TO_BOUNTY_TARGET,
|
|
NORMAL_LVL6_ENCHANT,
|
|
NORMAL_TELEOTHER_CAMELOT,
|
|
NORMAL_EARTH_SURGE,
|
|
NORMAL_LVL7_ENCHANT,
|
|
NORMAL_FIRE_SURGE,
|
|
|
|
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,
|
|
|
|
ARCEUUS_ARCEUUS_HOME_TELEPORT,
|
|
ARCEUUS_REANIMATE_GOBLIN,
|
|
ARCEUUS_LUMBRIDGE_GRAVEYARD_TELEPORT,
|
|
ARCEUUS_REANIMATE_MONKEY,
|
|
ARCEUUS_REANIMATE_IMP,
|
|
ARCEUUS_REANIMATE_MINOTAUR,
|
|
ARCEUUS_DRAYNOR_MANOR_TELEPORT,
|
|
ARCEUUS_REANIMATE_SCORPION,
|
|
ARCEUUS_REANIMATE_BEAR,
|
|
ARCEUUS_REANIMATE_UNICORN,
|
|
ARCEUUS_REANIMATE_DOG,
|
|
ARCEUUS_MIND_ALTAR_TELEPORT,
|
|
ARCEUUS_REANIMATE_CHAOS_DRUID,
|
|
ARCEUUS_RESPAWN_TELEPORT,
|
|
ARCEUUS_REANIMATE_GIANT,
|
|
ARCEUUS_SALVE_GRAVEYARD_TELEPORT,
|
|
ARCEUUS_REANIMATE_OGRE,
|
|
ARCEUUS_REANIMATE_ELF,
|
|
ARCEUUS_REANIMATE_TROLL,
|
|
ARCEUUS_FENKENSTRAINS_CASTLE_TELEPORT,
|
|
ARCEUUS_REANIMATE_HORROR,
|
|
ARCEUUS_REANIMATE_KALPHITE,
|
|
ARCEUUS_WEST_ARDOUGNE_TELEPORT,
|
|
ARCEUUS_REANIMATE_DAGANNOTH,
|
|
ARCEUUS_REANIMATE_BLOODVELD,
|
|
ARCEUUS_HARMONY_ISLAND_TELEPORT,
|
|
ARCEUUS_REANIMATE_TZHAAR,
|
|
ARCEUUS_CEMETERY_TELEPORT,
|
|
ARCEUUS_REANIMATE_DEMON,
|
|
ARCEUUS_REANIMATE_AVIANSIE,
|
|
ARCEUUS_RESURRECT_CROPS,
|
|
ARCEUUS_BARROWS_TELEPORT,
|
|
ARCEUUS_REANIMATE_ABYSSAL_CREATURE,
|
|
ARCEUUS_APE_ATOLL_TELEPORT,
|
|
ARCEUUS_REANIMATE_DRAGON,
|
|
ARCEUUS_BATTLEFRONT_TELEPORT,
|
|
|
|
NONE
|
|
} SPELL;
|
|
|
|
bool IsOpen();
|
|
bool Open();
|
|
|
|
bool HasLevel(const SPELL& Spell);
|
|
|
|
bool IsSpellSelected();
|
|
bool IsSpellSelected(const SPELL& Spell);
|
|
bool IsSpellSelected(const std::string& Name);
|
|
std::string GetSelectedSpellName();
|
|
const SPELL GetSelectedSpell();
|
|
|
|
bool CastSpell(const SPELL& Spell);
|
|
bool SelectSpell(const SPELL& Spell);
|
|
}
|
|
|
|
/** @} */
|
|
|
|
#endif // MAGIC_HPP_INCLUDED
|