#ifndef MAGIC_HPP_INCLUDED #define MAGIC_HPP_INCLUDED #include #include namespace Magic { typedef enum SPELL { NORMAL_LUMBRIDGE_HOME_TELEPORT, NORMAL_WIND_STRIKE, NORMAL_CONFUSE, NORMAL_ENCHANT_CROSSBOW_BOLT, NORMAL_WATER_STRIKE, NORMAL_JEWELLERY_ENCHANTS, 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_TELEPORT_TO_KOUREND, NORMAL_LVL3_ENCHANT, NORMAL_IBAN_BLAST, NORMAL_SNARE, NORMAL_MAGIC_DART, NORMAL_ARDOUGNE_TELEPORT, NORMAL_EARTH_BLAST, NORMAL_TELEPORT_TO_CIVITAS, 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_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_BASIC_REANIMATION, ARCEUUS_ARCEUUS_LIBRARY_TELEPORT, ARCEUUS_ADEPT_REANIMATION, ARCEUUS_EXPERT_REANIMATION, ARCEUUS_MASTER_REANIMATION, ARCEUUS_DRAYNOR_MANOR_TELEPORT, ARCEUUS_MIND_ALTAR_TELEPORT, ARCEUUS_RESPAWN_TELEPORT, ARCEUUS_SALVE_GRAVEYARD_TELEPORT, ARCEUUS_FENKENSTRAINS_CASTLE_TELEPORT, ARCEUUS_WEST_ARDOUGNE_TELEPORT, ARCEUUS_HARMONY_ISLAND_TELEPORT, ARCEUUS_CEMETERY_TELEPORT, ARCEUUS_RESURRECT_CROPS, ARCEUUS_BARROWS_TELEPORT, ARCEUUS_APE_ATOLL_TELEPORT, ARCEUUS_BATTLEFRONT_TELEPORT, ARCEUUS_INFERIOR_DEMONBANE, ARCEUUS_SUPERIOR_DEMONBANE, ARCEUUS_DARK_DEMONBANE, ARCEUUS_MARK_OF_DARKNESS, ARCEUUS_GHOSTLY_GRASP, ARCEUUS_SKELETAL_GRASP, ARCEUUS_UNDEAD_GRASP, ARCEUUS_WARD_OF_ARCEUUS, ARCEUUS_LESSER_CORRUPTION, ARCEUUS_GREATER_CORRUPTION, ARCEUUS_DEMONIC_OFFERING, ARCEUUS_SINISTER_OFFERING, ARCEUUS_DEGRIME, ARCEUUS_SHADOW_VEIL, ARCEUUS_VILE_VIGOUR, ARCEUUS_DARK_LURE, ARCEUUS_DEATH_CHARGE, ARCEUUS_RESURRECT_LESSER_GHOST, ARCEUUS_RESURRECT_LESSER_SKELETON, ARCEUUS_RESURRECT_LESSER_ZOMBIE, ARCEUUS_RESURRECT_SUPERIOR_GHOST, ARCEUUS_RESURRECT_SUPERIOR_SKELETON, ARCEUUS_RESURRECT_SUPERIOR_ZOMBIE, ARCEUUS_RESURRECT_GREATER_GHOST, ARCEUUS_RESURRECT_GREATER_SKELETON, ARCEUUS_RESURRECT_GREATER_ZOMBIE, NONE } SPELL; typedef enum SPELLBOOK { NORMAL = 0, ANCIENT, LUNAR, ARCEUUS } SPELLBOOK; bool IsOpen(); bool Open(bool UseHotkey = false); std::int32_t GetTabHotkey(); SPELLBOOK GetActiveSpellbook(); 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 CastSpell(const SPELL& Spell, const std::string& Option); bool SelectSpell(const SPELL& Spell); } #endif // MAGIC_HPP_INCLUDED