AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
ScriptMgr Class Reference

#include "ScriptMgr.h"

Public Types

typedef void(* ScriptLoaderCallbackType) ()
 
typedef void(* ModulesLoaderCallbackType) ()
 

Public Member Functions

void Initialize ()
 
void LoadDatabase ()
 
void FillSpellSummary ()
 
void CheckIfScriptsInDatabaseExist ()
 
const char * ScriptsVersion () const
 
void IncrementScriptCount ()
 
uint32 GetScriptCount () const
 
void SetScriptLoader (ScriptLoaderCallbackType script_loader_callback)
 
void SetModulesLoader (ModulesLoaderCallbackType script_loader_callback)
 
void Unload ()
 
void CreateSpellScripts (uint32 spellId, std::list< SpellScript * > &scriptVector)
 
void CreateAuraScripts (uint32 spellId, std::list< AuraScript * > &scriptVector)
 
void CreateSpellScriptLoaders (uint32 spellId, std::vector< std::pair< SpellScriptLoader *, std::multimap< uint32, uint32 >::iterator > > &scriptVector)
 
void OnNetworkStart ()
 
void OnNetworkStop ()
 
void OnSocketOpen (std::shared_ptr< WorldSocket > socket)
 
void OnSocketClose (std::shared_ptr< WorldSocket > socket)
 
bool CanPacketReceive (WorldSession *session, WorldPacket const &packet)
 
bool CanPacketSend (WorldSession *session, WorldPacket const &packet)
 
void OnLoadCustomDatabaseTable ()
 
void OnOpenStateChange (bool open)
 
void OnBeforeConfigLoad (bool reload)
 
void OnAfterConfigLoad (bool reload)
 
void OnBeforeFinalizePlayerWorldSession (uint32 &cacheVersion)
 
void OnMotdChange (std::string &newMotd)
 
void OnShutdownInitiate (ShutdownExitCode code, ShutdownMask mask)
 
void OnShutdownCancel ()
 
void OnWorldUpdate (uint32 diff)
 
void OnStartup ()
 
void OnShutdown ()
 
void OnBeforeWorldInitialized ()
 
void OnAfterUnloadAllMaps ()
 
void OnHonorCalculation (float &honor, uint8 level, float multiplier)
 
void OnGrayLevelCalculation (uint8 &grayLevel, uint8 playerLevel)
 
void OnColorCodeCalculation (XPColorChar &color, uint8 playerLevel, uint8 mobLevel)
 
void OnZeroDifferenceCalculation (uint8 &diff, uint8 playerLevel)
 
void OnBaseGainCalculation (uint32 &gain, uint8 playerLevel, uint8 mobLevel, ContentLevels content)
 
void OnGainCalculation (uint32 &gain, Player *player, Unit *unit)
 
void OnGroupRateCalculation (float &rate, uint32 count, bool isRaid)
 
void OnAfterArenaRatingCalculation (Battleground *const bg, int32 &winnerMatchmakerChange, int32 &loserMatchmakerChange, int32 &winnerChange, int32 &loserChange)
 
void OnBeforeUpdatingPersonalRating (int32 &mod, uint32 type)
 
void OnCreateMap (Map *map)
 
void OnDestroyMap (Map *map)
 
void OnLoadGridMap (Map *map, GridMap *gmap, uint32 gx, uint32 gy)
 
void OnUnloadGridMap (Map *map, GridMap *gmap, uint32 gx, uint32 gy)
 
void OnPlayerEnterMap (Map *map, Player *player)
 
void OnPlayerLeaveMap (Map *map, Player *player)
 
void OnMapUpdate (Map *map, uint32 diff)
 
InstanceScriptCreateInstanceScript (InstanceMap *map)
 
bool OnQuestAccept (Player *player, Item *item, Quest const *quest)
 
bool OnItemUse (Player *player, Item *item, SpellCastTargets const &targets)
 
bool OnItemExpire (Player *player, ItemTemplate const *proto)
 
bool OnItemRemove (Player *player, Item *item)
 
bool OnCastItemCombatSpell (Player *player, Unit *victim, SpellInfo const *spellInfo, Item *item)
 
void OnGossipSelect (Player *player, Item *item, uint32 sender, uint32 action)
 
void OnGossipSelectCode (Player *player, Item *item, uint32 sender, uint32 action, const char *code)
 
bool OnGossipHello (Player *player, Creature *creature)
 
bool OnGossipSelect (Player *player, Creature *creature, uint32 sender, uint32 action)
 
bool OnGossipSelectCode (Player *player, Creature *creature, uint32 sender, uint32 action, const char *code)
 
bool OnQuestAccept (Player *player, Creature *creature, Quest const *quest)
 
bool OnQuestSelect (Player *player, Creature *creature, Quest const *quest)
 
bool OnQuestComplete (Player *player, Creature *creature, Quest const *quest)
 
bool OnQuestReward (Player *player, Creature *creature, Quest const *quest, uint32 opt)
 
uint32 GetDialogStatus (Player *player, Creature *creature)
 
CreatureAIGetCreatureAI (Creature *creature)
 
void OnCreatureUpdate (Creature *creature, uint32 diff)
 
void OnCreatureAddWorld (Creature *creature)
 
void OnCreatureRemoveWorld (Creature *creature)
 
void OnFfaPvpStateUpdate (Creature *creature, bool InPvp)
 
bool OnGossipHello (Player *player, GameObject *go)
 
bool OnGossipSelect (Player *player, GameObject *go, uint32 sender, uint32 action)
 
bool OnGossipSelectCode (Player *player, GameObject *go, uint32 sender, uint32 action, const char *code)
 
bool OnQuestAccept (Player *player, GameObject *go, Quest const *quest)
 
bool OnQuestReward (Player *player, GameObject *go, Quest const *quest, uint32 opt)
 
uint32 GetDialogStatus (Player *player, GameObject *go)
 
void OnGameObjectDestroyed (GameObject *go, Player *player)
 
void OnGameObjectDamaged (GameObject *go, Player *player)
 
void OnGameObjectLootStateChanged (GameObject *go, uint32 state, Unit *unit)
 
void OnGameObjectStateChanged (GameObject *go, uint32 state)
 
void OnGameObjectUpdate (GameObject *go, uint32 diff)
 
GameObjectAIGetGameObjectAI (GameObject *go)
 
void OnGameObjectAddWorld (GameObject *go)
 
void OnGameObjectRemoveWorld (GameObject *go)
 
bool OnAreaTrigger (Player *player, AreaTrigger const *trigger)
 
BattlegroundCreateBattleground (BattlegroundTypeId typeId)
 
OutdoorPvPCreateOutdoorPvP (OutdoorPvPData const *data)
 
std::vector< Acore::ChatCommands::ChatCommandBuilderGetChatCommands ()
 
void OnWeatherChange (Weather *weather, WeatherState state, float grade)
 
void OnWeatherUpdate (Weather *weather, uint32 diff)
 
void OnAuctionAdd (AuctionHouseObject *ah, AuctionEntry *entry)
 
void OnAuctionRemove (AuctionHouseObject *ah, AuctionEntry *entry)
 
void OnAuctionSuccessful (AuctionHouseObject *ah, AuctionEntry *entry)
 
void OnAuctionExpire (AuctionHouseObject *ah, AuctionEntry *entry)
 
void OnBeforeAuctionHouseMgrSendAuctionWonMail (AuctionHouseMgr *auctionHouseMgr, AuctionEntry *auction, Player *bidder, uint32 &bidder_accId, bool &sendNotification, bool &updateAchievementCriteria, bool &sendMail)
 
void OnBeforeAuctionHouseMgrSendAuctionSalePendingMail (AuctionHouseMgr *auctionHouseMgr, AuctionEntry *auction, Player *owner, uint32 &owner_accId, bool &sendMail)
 
void OnBeforeAuctionHouseMgrSendAuctionSuccessfulMail (AuctionHouseMgr *auctionHouseMgr, AuctionEntry *auction, Player *owner, uint32 &owner_accId, uint32 &profit, bool &sendNotification, bool &updateAchievementCriteria, bool &sendMail)
 
void OnBeforeAuctionHouseMgrSendAuctionExpiredMail (AuctionHouseMgr *auctionHouseMgr, AuctionEntry *auction, Player *owner, uint32 &owner_accId, bool &sendNotification, bool &sendMail)
 
void OnBeforeAuctionHouseMgrSendAuctionOutbiddedMail (AuctionHouseMgr *auctionHouseMgr, AuctionEntry *auction, Player *oldBidder, uint32 &oldBidder_accId, Player *newBidder, uint32 &newPrice, bool &sendNotification, bool &sendMail)
 
void OnBeforeAuctionHouseMgrSendAuctionCancelledToBidderMail (AuctionHouseMgr *auctionHouseMgr, AuctionEntry *auction, Player *bidder, uint32 &bidder_accId, bool &sendMail)
 
void OnBeforeAuctionHouseMgrUpdate ()
 
bool OnConditionCheck (Condition *condition, ConditionSourceInfo &sourceInfo)
 
void OnInstall (Vehicle *veh)
 
void OnUninstall (Vehicle *veh)
 
void OnReset (Vehicle *veh)
 
void OnInstallAccessory (Vehicle *veh, Creature *accessory)
 
void OnAddPassenger (Vehicle *veh, Unit *passenger, int8 seatId)
 
void OnRemovePassenger (Vehicle *veh, Unit *passenger)
 
void OnDynamicObjectUpdate (DynamicObject *dynobj, uint32 diff)
 
void OnAddPassenger (Transport *transport, Player *player)
 
void OnAddCreaturePassenger (Transport *transport, Creature *creature)
 
void OnRemovePassenger (Transport *transport, Player *player)
 
void OnTransportUpdate (Transport *transport, uint32 diff)
 
void OnRelocate (Transport *transport, uint32 waypointId, uint32 mapId, float x, float y, float z)
 
bool OnCriteriaCheck (uint32 scriptId, Player *source, Unit *target, uint32 criteria_id)
 
void OnBeforePlayerUpdate (Player *player, uint32 p_time)
 
void OnPlayerUpdate (Player *player, uint32 p_time)
 
void OnSendInitialPacketsBeforeAddToMap (Player *player, WorldPacket &data)
 
void OnPlayerReleasedGhost (Player *player)
 
void OnPVPKill (Player *killer, Player *killed)
 
void OnPlayerPVPFlagChange (Player *player, bool state)
 
void OnCreatureKill (Player *killer, Creature *killed)
 
void OnCreatureKilledByPet (Player *petOwner, Creature *killed)
 
void OnPlayerKilledByCreature (Creature *killer, Player *killed)
 
void OnPlayerLevelChanged (Player *player, uint8 oldLevel)
 
void OnPlayerFreeTalentPointsChanged (Player *player, uint32 newPoints)
 
void OnPlayerTalentsReset (Player *player, bool noCost)
 
void OnPlayerMoneyChanged (Player *player, int32 &amount)
 
void OnBeforeLootMoney (Player *player, Loot *loot)
 
void OnGivePlayerXP (Player *player, uint32 &amount, Unit *victim)
 
bool OnPlayerReputationChange (Player *player, uint32 factionID, int32 &standing, bool incremental)
 
void OnPlayerReputationRankChange (Player *player, uint32 factionID, ReputationRank newRank, ReputationRank oldRank, bool increased)
 
void OnPlayerLearnSpell (Player *player, uint32 spellID)
 
void OnPlayerForgotSpell (Player *player, uint32 spellID)
 
void OnPlayerDuelRequest (Player *target, Player *challenger)
 
void OnPlayerDuelStart (Player *player1, Player *player2)
 
void OnPlayerDuelEnd (Player *winner, Player *loser, DuelCompleteType type)
 
void OnPlayerChat (Player *player, uint32 type, uint32 lang, std::string &msg)
 
void OnBeforeSendChatMessage (Player *player, uint32 &type, uint32 &lang, std::string &msg)
 
void OnPlayerChat (Player *player, uint32 type, uint32 lang, std::string &msg, Player *receiver)
 
void OnPlayerChat (Player *player, uint32 type, uint32 lang, std::string &msg, Group *group)
 
void OnPlayerChat (Player *player, uint32 type, uint32 lang, std::string &msg, Guild *guild)
 
void OnPlayerChat (Player *player, uint32 type, uint32 lang, std::string &msg, Channel *channel)
 
void OnPlayerEmote (Player *player, uint32 emote)
 
void OnPlayerTextEmote (Player *player, uint32 textEmote, uint32 emoteNum, ObjectGuid guid)
 
void OnPlayerSpellCast (Player *player, Spell *spell, bool skipCheck)
 
void OnPlayerLogin (Player *player)
 
void OnPlayerLoadFromDB (Player *player)
 
void OnPlayerLogout (Player *player)
 
void OnPlayerCreate (Player *player)
 
void OnPlayerSave (Player *player)
 
void OnPlayerDelete (ObjectGuid guid, uint32 accountId)
 
void OnPlayerFailedDelete (ObjectGuid guid, uint32 accountId)
 
void OnPlayerBindToInstance (Player *player, Difficulty difficulty, uint32 mapid, bool permanent)
 
void OnPlayerUpdateZone (Player *player, uint32 newZone, uint32 newArea)
 
void OnPlayerUpdateArea (Player *player, uint32 oldArea, uint32 newArea)
 
bool OnBeforePlayerTeleport (Player *player, uint32 mapid, float x, float y, float z, float orientation, uint32 options, Unit *target)
 
void OnPlayerUpdateFaction (Player *player)
 
void OnPlayerAddToBattleground (Player *player, Battleground *bg)
 
void OnPlayerQueueRandomDungeon (Player *player, uint32 &rDungeonId)
 
void OnPlayerRemoveFromBattleground (Player *player, Battleground *bg)
 
void OnAchievementComplete (Player *player, AchievementEntry const *achievement)
 
bool OnBeforeAchievementComplete (Player *player, AchievementEntry const *achievement)
 
void OnCriteriaProgress (Player *player, AchievementCriteriaEntry const *criteria)
 
bool OnBeforeCriteriaProgress (Player *player, AchievementCriteriaEntry const *criteria)
 
void OnAchievementSave (CharacterDatabaseTransaction trans, Player *player, uint16 achiId, CompletedAchievementData achiData)
 
void OnCriteriaSave (CharacterDatabaseTransaction trans, Player *player, uint16 critId, CriteriaProgress criteriaData)
 
void OnGossipSelect (Player *player, uint32 menu_id, uint32 sender, uint32 action)
 
void OnGossipSelectCode (Player *player, uint32 menu_id, uint32 sender, uint32 action, const char *code)
 
void OnPlayerBeingCharmed (Player *player, Unit *charmer, uint32 oldFactionId, uint32 newFactionId)
 
void OnAfterPlayerSetVisibleItemSlot (Player *player, uint8 slot, Item *item)
 
void OnAfterPlayerMoveItemFromInventory (Player *player, Item *it, uint8 bag, uint8 slot, bool update)
 
void OnEquip (Player *player, Item *it, uint8 bag, uint8 slot, bool update)
 
void OnPlayerJoinBG (Player *player)
 
void OnPlayerJoinArena (Player *player)
 
void GetCustomGetArenaTeamId (Player const *player, uint8 slot, uint32 &teamID) const
 
void GetCustomArenaPersonalRating (Player const *player, uint8 slot, uint32 &rating) const
 
void OnGetMaxPersonalArenaRatingRequirement (Player const *player, uint32 minSlot, uint32 &maxArenaRating) const
 
void OnLootItem (Player *player, Item *item, uint32 count, ObjectGuid lootguid)
 
void OnStoreNewItem (Player *player, Item *item, uint32 count)
 
void OnCreateItem (Player *player, Item *item, uint32 count)
 
void OnQuestRewardItem (Player *player, Item *item, uint32 count)
 
void OnGroupRollRewardItem (Player *player, Item *item, uint32 count, RollVote voteType, Roll *roll)
 
bool OnBeforeOpenItem (Player *player, Item *item)
 
bool OnBeforePlayerQuestComplete (Player *player, uint32 quest_id)
 
void OnQuestComputeXP (Player *player, Quest const *quest, uint32 &xpValue)
 
void OnBeforePlayerDurabilityRepair (Player *player, ObjectGuid npcGUID, ObjectGuid itemGUID, float &discountMod, uint8 guildBank)
 
void OnBeforeBuyItemFromVendor (Player *player, ObjectGuid vendorguid, uint32 vendorslot, uint32 &item, uint8 count, uint8 bag, uint8 slot)
 
void OnBeforeStoreOrEquipNewItem (Player *player, uint32 vendorslot, uint32 &item, uint8 count, uint8 bag, uint8 slot, ItemTemplate const *pProto, Creature *pVendor, VendorItem const *crItem, bool bStore)
 
void OnAfterStoreOrEquipNewItem (Player *player, uint32 vendorslot, Item *item, uint8 count, uint8 bag, uint8 slot, ItemTemplate const *pProto, Creature *pVendor, VendorItem const *crItem, bool bStore)
 
void OnAfterUpdateMaxPower (Player *player, Powers &power, float &value)
 
void OnAfterUpdateMaxHealth (Player *player, float &value)
 
void OnBeforeUpdateAttackPowerAndDamage (Player *player, float &level, float &val2, bool ranged)
 
void OnAfterUpdateAttackPowerAndDamage (Player *player, float &level, float &base_attPower, float &attPowerMod, float &attPowerMultiplier, bool ranged)
 
void OnBeforeInitTalentForLevel (Player *player, uint8 &level, uint32 &talentPointsForLevel)
 
void OnFirstLogin (Player *player)
 
void OnSetMaxLevel (Player *player, uint32 &maxPlayerLevel)
 
void OnPlayerCompleteQuest (Player *player, Quest const *quest)
 
void OnBattlegroundDesertion (Player *player, BattlegroundDesertionType const desertionType)
 
bool CanJoinInBattlegroundQueue (Player *player, ObjectGuid BattlemasterGuid, BattlegroundTypeId BGTypeID, uint8 joinAsGroup, GroupJoinBattlegroundResult &err)
 
bool ShouldBeRewardedWithMoneyInsteadOfExp (Player *player)
 
void OnBeforeTempSummonInitStats (Player *player, TempSummon *tempSummon, uint32 &duration)
 
void OnBeforeGuardianInitStatsForLevel (Player *player, Guardian *guardian, CreatureTemplate const *cinfo, PetType &petType)
 
void OnAfterGuardianInitStatsForLevel (Player *player, Guardian *guardian)
 
void OnBeforeLoadPetFromDB (Player *player, uint32 &petentry, uint32 &petnumber, bool &current, bool &forceLoadFromDB)
 
bool CanJoinInArenaQueue (Player *player, ObjectGuid BattlemasterGuid, uint8 arenaslot, BattlegroundTypeId BGTypeID, uint8 joinAsGroup, uint8 IsRated, GroupJoinBattlegroundResult &err)
 
bool CanBattleFieldPort (Player *player, uint8 arenaType, BattlegroundTypeId BGTypeID, uint8 action)
 
bool CanGroupInvite (Player *player, std::string &membername)
 
bool CanGroupAccept (Player *player, Group *group)
 
bool CanSellItem (Player *player, Item *item, Creature *creature)
 
bool CanSendMail (Player *player, ObjectGuid receiverGuid, ObjectGuid mailbox, std::string &subject, std::string &body, uint32 money, uint32 COD, Item *item)
 
void PetitionBuy (Player *player, Creature *creature, uint32 &charterid, uint32 &cost, uint32 &type)
 
void PetitionShowList (Player *player, Creature *creature, uint32 &CharterEntry, uint32 &CharterDispayID, uint32 &CharterCost)
 
void OnRewardKillRewarder (Player *player, bool isDungeon, float &rate)
 
bool CanGiveMailRewardAtGiveLevel (Player *player, uint8 level)
 
void OnDeleteFromDB (CharacterDatabaseTransaction trans, uint32 guid)
 
bool CanRepopAtGraveyard (Player *player)
 
void OnGetMaxSkillValue (Player *player, uint32 skill, int32 &result, bool IsPure)
 
bool OnUpdateFishingSkill (Player *player, int32 skill, int32 zone_skill, int32 chance, int32 roll)
 
bool CanAreaExploreAndOutdoor (Player *player)
 
void OnVictimRewardBefore (Player *player, Player *victim, uint32 &killer_title, uint32 &victim_title)
 
void OnVictimRewardAfter (Player *player, Player *victim, uint32 &killer_title, uint32 &victim_rank, float &honor_f)
 
void OnCustomScalingStatValueBefore (Player *player, ItemTemplate const *proto, uint8 slot, bool apply, uint32 &CustomScalingStatValue)
 
void OnCustomScalingStatValue (Player *player, ItemTemplate const *proto, uint32 &statType, int32 &val, uint8 itemProtoStatNumber, uint32 ScalingStatValue, ScalingStatValuesEntry const *ssv)
 
bool CanArmorDamageModifier (Player *player)
 
void OnGetFeralApBonus (Player *player, int32 &feral_bonus, int32 dpsMod, ItemTemplate const *proto, ScalingStatValuesEntry const *ssv)
 
bool CanApplyWeaponDependentAuraDamageMod (Player *player, Item *item, WeaponAttackType attackType, AuraEffect const *aura, bool apply)
 
bool CanApplyEquipSpell (Player *player, SpellInfo const *spellInfo, Item *item, bool apply, bool form_change)
 
bool CanApplyEquipSpellsItemSet (Player *player, ItemSetEffect *eff)
 
bool CanCastItemCombatSpell (Player *player, Unit *target, WeaponAttackType attType, uint32 procVictim, uint32 procEx, Item *item, ItemTemplate const *proto)
 
bool CanCastItemUseSpell (Player *player, Item *item, SpellCastTargets const &targets, uint8 cast_count, uint32 glyphIndex)
 
void OnApplyAmmoBonuses (Player *player, ItemTemplate const *proto, float &currentAmmoDPS)
 
bool CanEquipItem (Player *player, uint8 slot, uint16 &dest, Item *pItem, bool swap, bool not_loading)
 
bool CanUnequipItem (Player *player, uint16 pos, bool swap)
 
bool CanUseItem (Player *player, ItemTemplate const *proto, InventoryResult &result)
 
bool CanSaveEquipNewItem (Player *player, Item *item, uint16 pos, bool update)
 
bool CanApplyEnchantment (Player *player, Item *item, EnchantmentSlot slot, bool apply, bool apply_dur, bool ignore_condition)
 
void OnGetQuestRate (Player *player, float &result)
 
bool PassedQuestKilledMonsterCredit (Player *player, Quest const *qinfo, uint32 entry, uint32 real_entry, ObjectGuid guid)
 
bool CheckItemInSlotAtLoadInventory (Player *player, Item *item, uint8 slot, uint8 &err, uint16 &dest)
 
bool NotAvoidSatisfy (Player *player, DungeonProgressionRequirements const *ar, uint32 target_map, bool report)
 
bool NotVisibleGloballyFor (Player *player, Player const *u)
 
void OnGetArenaPersonalRating (Player *player, uint8 slot, uint32 &result)
 
void OnFfaPvpStateUpdate (Player *player, bool result)
 
void OnGetArenaTeamId (Player *player, uint8 slot, uint32 &result)
 
void OnIsFFAPvP (Player *player, bool &result)
 
void OnIsPvP (Player *player, bool &result)
 
void OnGetMaxSkillValueForLevel (Player *player, uint16 &result)
 
bool NotSetArenaTeamInfoField (Player *player, uint8 slot, ArenaTeamInfoType type, uint32 value)
 
bool CanJoinLfg (Player *player, uint8 roles, lfg::LfgDungeonSet &dungeons, const std::string &comment)
 
bool CanEnterMap (Player *player, MapEntry const *entry, InstanceTemplate const *instance, MapDifficulty const *mapDiff, bool loginCheck)
 
bool CanInitTrade (Player *player, Player *target)
 
void OnSetServerSideVisibility (Player *player, ServerSideVisibilityType &type, AccountTypes &sec)
 
void OnSetServerSideVisibilityDetect (Player *player, ServerSideVisibilityType &type, AccountTypes &sec)
 
void OnPlayerResurrect (Player *player, float restore_percent, bool applySickness)
 
void OnBeforeChooseGraveyard (Player *player, TeamId teamId, bool nearCorpse, uint32 &graveyardOverride)
 
bool CanPlayerUseChat (Player *player, uint32 type, uint32 language, std::string &msg)
 
bool CanPlayerUseChat (Player *player, uint32 type, uint32 language, std::string &msg, Player *receiver)
 
bool CanPlayerUseChat (Player *player, uint32 type, uint32 language, std::string &msg, Group *group)
 
bool CanPlayerUseChat (Player *player, uint32 type, uint32 language, std::string &msg, Guild *guild)
 
bool CanPlayerUseChat (Player *player, uint32 type, uint32 language, std::string &msg, Channel *channel)
 
void OnPlayerLearnTalents (Player *player, uint32 talentId, uint32 talentRank, uint32 spellid)
 
void OnPlayerEnterCombat (Player *player, Unit *enemy)
 
void OnPlayerLeaveCombat (Player *player)
 
void OnQuestAbandon (Player *player, uint32 questId)
 
void AnticheatSetSkipOnePacketForASH (Player *player, bool apply)
 
void AnticheatSetCanFlybyServer (Player *player, bool apply)
 
void AnticheatSetUnderACKmount (Player *player)
 
void AnticheatSetRootACKUpd (Player *player)
 
void AnticheatUpdateMovementInfo (Player *player, MovementInfo const &movementInfo)
 
void AnticheatSetJumpingbyOpcode (Player *player, bool jump)
 
bool AnticheatHandleDoubleJump (Player *player, Unit *mover)
 
bool AnticheatCheckMovementInfo (Player *player, MovementInfo const &movementInfo, Unit *mover, bool jump)
 
void OnAccountLogin (uint32 accountId)
 
void OnLastIpUpdate (uint32 accountId, std::string ip)
 
void OnFailedAccountLogin (uint32 accountId)
 
void OnEmailChange (uint32 accountId)
 
void OnFailedEmailChange (uint32 accountId)
 
void OnPasswordChange (uint32 accountId)
 
void OnFailedPasswordChange (uint32 accountId)
 
bool CanAccountCreateCharacter (uint32 accountId, uint8 charRace, uint8 charClass)
 
void OnGuildAddMember (Guild *guild, Player *player, uint8 &plRank)
 
void OnGuildRemoveMember (Guild *guild, Player *player, bool isDisbanding, bool isKicked)
 
void OnGuildMOTDChanged (Guild *guild, const std::string &newMotd)
 
void OnGuildInfoChanged (Guild *guild, const std::string &newInfo)
 
void OnGuildCreate (Guild *guild, Player *leader, const std::string &name)
 
void OnGuildDisband (Guild *guild)
 
void OnGuildMemberWitdrawMoney (Guild *guild, Player *player, uint32 &amount, bool isRepair)
 
void OnGuildMemberDepositMoney (Guild *guild, Player *player, uint32 &amount)
 
void OnGuildItemMove (Guild *guild, Player *player, Item *pItem, bool isSrcBank, uint8 srcContainer, uint8 srcSlotId, bool isDestBank, uint8 destContainer, uint8 destSlotId)
 
void OnGuildEvent (Guild *guild, uint8 eventType, ObjectGuid::LowType playerGuid1, ObjectGuid::LowType playerGuid2, uint8 newRank)
 
void OnGuildBankEvent (Guild *guild, uint8 eventType, uint8 tabId, ObjectGuid::LowType playerGuid, uint32 itemOrMoney, uint16 itemStackCount, uint8 destTabId)
 
bool CanGuildSendBankList (Guild const *guild, WorldSession *session, uint8 tabId, bool sendAllSlots)
 
void OnGroupAddMember (Group *group, ObjectGuid guid)
 
void OnGroupInviteMember (Group *group, ObjectGuid guid)
 
void OnGroupRemoveMember (Group *group, ObjectGuid guid, RemoveMethod method, ObjectGuid kicker, const char *reason)
 
void OnGroupChangeLeader (Group *group, ObjectGuid newLeaderGuid, ObjectGuid oldLeaderGuid)
 
void OnGroupDisband (Group *group)
 
bool CanGroupJoinBattlegroundQueue (Group const *group, Player *member, Battleground const *bgTemplate, uint32 MinPlayerCount, bool isRated, uint32 arenaSlot)
 
void OnCreate (Group *group, Player *leader)
 
void OnGlobalItemDelFromDB (CharacterDatabaseTransaction trans, ObjectGuid::LowType itemGuid)
 
void OnGlobalMirrorImageDisplayItem (Item const *item, uint32 &display)
 
void OnBeforeUpdateArenaPoints (ArenaTeam *at, std::map< ObjectGuid, uint32 > &ap)
 
void OnAfterRefCount (Player const *player, Loot &loot, bool canRate, uint16 lootMode, LootStoreItem *LootStoreItem, uint32 &maxcount, LootStore const &store)
 
void OnBeforeDropAddItem (Player const *player, Loot &loot, bool canRate, uint16 lootMode, LootStoreItem *LootStoreItem, LootStore const &store)
 
bool OnItemRoll (Player const *player, LootStoreItem const *LootStoreItem, float &chance, Loot &loot, LootStore const &store)
 
bool OnBeforeLootEqualChanced (Player const *player, LootStoreItemList EqualChanced, Loot &loot, LootStore const &store)
 
void OnInitializeLockedDungeons (Player *player, uint8 &level, uint32 &lockData, lfg::LFGDungeonData const *dungeon)
 
void OnAfterInitializeLockedDungeons (Player *player)
 
void OnAfterUpdateEncounterState (Map *map, EncounterCreditType type, uint32 creditEntry, Unit *source, Difficulty difficulty_fixed, DungeonEncounterList const *encounters, uint32 dungeonCompleted, bool updated)
 
void OnBeforeWorldObjectSetPhaseMask (WorldObject const *worldObject, uint32 &oldPhaseMask, uint32 &newPhaseMask, bool &useCombinedPhases, bool &update)
 
bool OnIsAffectedBySpellModCheck (SpellInfo const *affectSpell, SpellInfo const *checkSpell, SpellModifier const *mod)
 
bool OnSpellHealingBonusTakenNegativeModifiers (Unit const *target, Unit const *caster, SpellInfo const *spellInfo, float &val)
 
void OnLoadSpellCustomAttr (SpellInfo *spell)
 
bool OnAllowedForPlayerLootCheck (Player const *player, ObjectGuid source)
 
void OnInstanceIdRemoved (uint32 instanceId)
 Called when an instance Id is deleted, usually because it expired or no players are bound to it anymore.
 
void OnBeforeSetBossState (uint32 id, EncounterState newState, EncounterState oldState, Map *instance)
 Called when any raid boss has their state updated (e.g. pull, reset, kill).
 
uint32 IncreaseScheduledScriptsCount ()
 
uint32 DecreaseScheduledScriptCount ()
 
uint32 DecreaseScheduledScriptCount (size_t count)
 
bool IsScriptScheduled () const
 
void OnHeal (Unit *healer, Unit *reciever, uint32 &gain)
 
void OnDamage (Unit *attacker, Unit *victim, uint32 &damage)
 
void ModifyPeriodicDamageAurasTick (Unit *target, Unit *attacker, uint32 &damage, SpellInfo const *spellInfo)
 
void ModifyMeleeDamage (Unit *target, Unit *attacker, uint32 &damage)
 
void ModifySpellDamageTaken (Unit *target, Unit *attacker, int32 &damage, SpellInfo const *spellInfo)
 
void ModifyHealReceived (Unit *target, Unit *healer, uint32 &addHealth, SpellInfo const *spellInfo)
 
uint32 DealDamage (Unit *AttackerUnit, Unit *pVictim, uint32 damage, DamageEffectType damagetype)
 
void OnBeforeRollMeleeOutcomeAgainst (Unit const *attacker, Unit const *victim, WeaponAttackType attType, int32 &attackerMaxSkillValueForLevel, int32 &victimMaxSkillValueForLevel, int32 &attackerWeaponSkill, int32 &victimDefenseSkill, int32 &crit_chance, int32 &miss_chance, int32 &dodge_chance, int32 &parry_chance, int32 &block_chance)
 
void OnAuraApply (Unit *, Aura *)
 
void OnAuraRemove (Unit *unit, AuraApplication *aurApp, AuraRemoveMode mode)
 
bool IfNormalReaction (Unit const *unit, Unit const *target, ReputationRank &repRank)
 
bool IsNeedModSpellDamagePercent (Unit const *unit, AuraEffect *auraEff, float &doneTotalMod, SpellInfo const *spellProto)
 
bool IsNeedModMeleeDamagePercent (Unit const *unit, AuraEffect *auraEff, float &doneTotalMod, SpellInfo const *spellProto)
 
bool IsNeedModHealPercent (Unit const *unit, AuraEffect *auraEff, float &doneTotalMod, SpellInfo const *spellProto)
 
bool CanSetPhaseMask (Unit const *unit, uint32 newPhaseMask, bool update)
 
bool IsCustomBuildValuesUpdate (Unit const *unit, uint8 updateType, ByteBuffer &fieldBuffer, Player const *target, uint16 index)
 
bool OnBuildValuesUpdate (Unit const *unit, uint8 updateType, ByteBuffer &fieldBuffer, Player *target, uint16 index)
 
void OnUnitUpdate (Unit *unit, uint32 diff)
 
void OnDisplayIdChange (Unit *unit, uint32 displayId)
 
void OnUnitEnterEvadeMode (Unit *unit, uint8 why)
 
void OnUnitEnterCombat (Unit *unit, Unit *victim)
 
void OnUnitDeath (Unit *unit, Unit *killer)
 
void OnPlayerMove (Player *player, MovementInfo movementInfo, uint32 opcode)
 
void Creature_SelectLevel (const CreatureTemplate *cinfo, Creature *creature)
 
void OnCreatureSaveToDB (Creature *creature)
 
void OnGameObjectSaveToDB (GameObject *go)
 
void OnBeforeCreateInstanceScript (InstanceMap *instanceMap, InstanceScript *instanceData, bool load, std::string data, uint32 completedEncounterMask)
 
void OnDestroyInstance (MapInstanced *mapInstanced, Map *map)
 
void OnBattlegroundStart (Battleground *bg)
 
void OnBattlegroundEndReward (Battleground *bg, Player *player, TeamId winnerTeamId)
 
void OnBattlegroundUpdate (Battleground *bg, uint32 diff)
 
void OnBattlegroundAddPlayer (Battleground *bg, Player *player)
 
void OnBattlegroundBeforeAddPlayer (Battleground *bg, Player *player)
 
void OnBattlegroundRemovePlayerAtLeave (Battleground *bg, Player *player)
 
void OnQueueUpdate (BattlegroundQueue *queue, uint32 diff, BattlegroundTypeId bgTypeId, BattlegroundBracketId bracket_id, uint8 arenaType, bool isRated, uint32 arenaRating)
 
void OnAddGroup (BattlegroundQueue *queue, GroupQueueInfo *ginfo, uint32 &index, Player *leader, Group *group, BattlegroundTypeId bgTypeId, PvPDifficultyEntry const *bracketEntry, uint8 arenaType, bool isRated, bool isPremade, uint32 arenaRating, uint32 matchmakerRating, uint32 arenaTeamId, uint32 opponentsArenaTeamId)
 
bool CanFillPlayersToBG (BattlegroundQueue *queue, Battleground *bg, BattlegroundBracketId bracket_id)
 
bool IsCheckNormalMatch (BattlegroundQueue *queue, Battleground *bgTemplate, BattlegroundBracketId bracket_id, uint32 minPlayers, uint32 maxPlayers)
 
bool CanSendMessageBGQueue (BattlegroundQueue *queue, Player *leader, Battleground *bg, PvPDifficultyEntry const *bracketEntry)
 
bool OnBeforeSendJoinMessageArenaQueue (BattlegroundQueue *queue, Player *leader, GroupQueueInfo *ginfo, PvPDifficultyEntry const *bracketEntry, bool isRated)
 
bool OnBeforeSendExitMessageArenaQueue (BattlegroundQueue *queue, GroupQueueInfo *ginfo)
 
void OnBattlegroundEnd (Battleground *bg, TeamId winnerTeamId)
 
void OnBattlegroundDestroy (Battleground *bg)
 
void OnBattlegroundCreate (Battleground *bg)
 
void OnGetSlotByType (const uint32 type, uint8 &slot)
 
void OnGetArenaPoints (ArenaTeam *at, float &points)
 
void OnArenaTypeIDToQueueID (const BattlegroundTypeId bgTypeId, const uint8 arenaType, uint32 &queueTypeID)
 
void OnArenaQueueIdToArenaType (const BattlegroundQueueTypeId bgQueueTypeId, uint8 &ArenaType)
 
void OnSetArenaMaxPlayersPerTeam (const uint8 arenaType, uint32 &maxPlayerPerTeam)
 
void OnCalcMaxDuration (Aura const *aura, int32 &maxDuration)
 
bool CanModAuraEffectDamageDone (AuraEffect const *auraEff, Unit *target, AuraApplication const *aurApp, uint8 mode, bool apply)
 
bool CanModAuraEffectModDamagePercentDone (AuraEffect const *auraEff, Unit *target, AuraApplication const *aurApp, uint8 mode, bool apply)
 
void OnSpellCheckCast (Spell *spell, bool strict, SpellCastResult &res)
 
bool CanPrepare (Spell *spell, SpellCastTargets const *targets, AuraEffect const *triggeredByAura)
 
bool CanScalingEverything (Spell *spell)
 
bool CanSelectSpecTalent (Spell *spell)
 
void OnScaleAuraUnitAdd (Spell *spell, Unit *target, uint32 effectMask, bool checkIfValid, bool implicit, uint8 auraScaleMask, TargetInfo &targetInfo)
 
void OnRemoveAuraScaleTargets (Spell *spell, TargetInfo &targetInfo, uint8 auraScaleMask, bool &needErase)
 
void OnBeforeAuraRankForLevel (SpellInfo const *spellInfo, SpellInfo const *latestSpellInfo, uint8 level)
 
void OnDummyEffect (WorldObject *caster, uint32 spellID, SpellEffIndex effIndex, GameObject *gameObjTarget)
 
void OnDummyEffect (WorldObject *caster, uint32 spellID, SpellEffIndex effIndex, Creature *creatureTarget)
 
void OnDummyEffect (WorldObject *caster, uint32 spellID, SpellEffIndex effIndex, Item *itemTarget)
 
void OnGameEventStart (uint16 EventID)
 
void OnGameEventStop (uint16 EventID)
 
void OnGameEventCheck (uint16 EventID)
 
void OnBeforeMailDraftSendMailTo (MailDraft *mailDraft, MailReceiver const &receiver, MailSender const &sender, MailCheckMask &checked, uint32 &deliver_delay, uint32 &custom_expiration, bool &deleteMailItemsFromDB, bool &sendMail)
 
void SetRealmCompleted (AchievementEntry const *achievement)
 
bool IsCompletedCriteria (AchievementMgr *mgr, AchievementCriteriaEntry const *achievementCriteria, AchievementEntry const *achievement, CriteriaProgress const *progress)
 
bool IsRealmCompleted (AchievementGlobalMgr const *globalmgr, AchievementEntry const *achievement, std::chrono::system_clock::time_point completionTime)
 
void OnBeforeCheckCriteria (AchievementMgr *mgr, AchievementCriteriaEntryList const *achievementCriteriaList)
 
bool CanCheckCriteria (AchievementMgr *mgr, AchievementCriteriaEntry const *achievementCriteria)
 
void OnInitStatsForLevel (Guardian *guardian, uint8 petlevel)
 
void OnCalculateMaxTalentPointsForLevel (Pet *pet, uint8 level, uint8 &points)
 
bool CanUnlearnSpellSet (Pet *pet, uint32 level, uint32 spell)
 
bool CanUnlearnSpellDefault (Pet *pet, SpellInfo const *spellEntry)
 
bool CanResetTalents (Pet *pet)
 
bool CanAddMember (ArenaTeam *team, ObjectGuid PlayerGuid)
 
void OnGetPoints (ArenaTeam *team, uint32 memberRating, float &points)
 
bool CanSaveToDB (ArenaTeam *team)
 
void OnConstructObject (Object *origin)
 
void OnDestructObject (Object *origin)
 
void OnConstructPlayer (Player *origin)
 
void OnDestructPlayer (Player *origin)
 
void OnConstructGroup (Group *origin)
 
void OnDestructGroup (Group *origin)
 
void OnConstructInstanceSave (InstanceSave *origin)
 
void OnDestructInstanceSave (InstanceSave *origin)
 
void OnItemCreate (Item *item, ItemTemplate const *itemProto, Player const *owner)
 
bool CanApplySoulboundFlag (Item *item, ItemTemplate const *proto)
 
bool CanItemApplyEquipSpell (Player *player, Item *item)
 
bool CanSendAuctionHello (WorldSession const *session, ObjectGuid guid, Creature *creature)
 
void ValidateSpellAtCastSpell (Player *player, uint32 &oldSpellId, uint32 &spellId, uint8 &castCount, uint8 &castFlags)
 
void OnPlayerSetPhase (const AuraEffect *auraEff, AuraApplication const *aurApp, uint8 mode, bool apply, uint32 &newPhase)
 
void ValidateSpellAtCastSpellResult (Player *player, Unit *mover, Spell *spell, uint32 oldSpellId, uint32 spellId)
 
void OnAfterLootTemplateProcess (Loot *loot, LootTemplate const *tab, LootStore const &store, Player *lootOwner, bool personal, bool noEmptyError, uint16 lootMode)
 
void OnInstanceSave (InstanceSave *instanceSave)
 
void GetDialogStatus (Player *player, Object *questgiver)
 
void OnHandleDevCommand (Player *player, bool &enable)
 
bool CanExecuteCommand (ChatHandler &handler, std::string_view cmdStr)
 
void OnAfterDatabasesLoaded (uint32 updateFlags)
 
void OnWorldObjectDestroy (WorldObject *object)
 
void OnWorldObjectCreate (WorldObject *object)
 
void OnWorldObjectSetMap (WorldObject *object, Map *map)
 
void OnWorldObjectResetMap (WorldObject *object)
 
void OnWorldObjectUpdate (WorldObject *object, uint32 diff)
 
void OnPetAddToWorld (Pet *pet)
 
void OnLootMoney (Player *player, uint32 gold)
 

Static Public Member Functions

static ScriptMgrinstance ()
 

Private Member Functions

 ScriptMgr ()
 
virtual ~ScriptMgr ()
 

Private Attributes

uint32 _scriptCount
 
std::atomic< long > _scheduledScripts
 
ScriptLoaderCallbackType _script_loader_callback
 
ModulesLoaderCallbackType _modules_loader_callback
 

Friends

class ScriptObject
 

Detailed Description

Member Typedef Documentation

◆ ModulesLoaderCallbackType

typedef void(* ScriptMgr::ModulesLoaderCallbackType) ()

◆ ScriptLoaderCallbackType

typedef void(* ScriptMgr::ScriptLoaderCallbackType) ()

Constructor & Destructor Documentation

◆ ScriptMgr()

ScriptMgr::ScriptMgr ( )
private
46 : _scriptCount(0),
49 _modules_loader_callback(nullptr) { }
ModulesLoaderCallbackType _modules_loader_callback
Definition: ScriptMgr.h:2610
ScriptLoaderCallbackType _script_loader_callback
Definition: ScriptMgr.h:2609
uint32 _scriptCount
Definition: ScriptMgr.h:2604
std::atomic< long > _scheduledScripts
Definition: ScriptMgr.h:2607

Member Function Documentation

◆ AnticheatCheckMovementInfo()

bool ScriptMgr::AnticheatCheckMovementInfo ( Player player,
MovementInfo const &  movementInfo,
Unit mover,
bool  jump 
)
1595{
1596 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1597 {
1598 return !script->AnticheatCheckMovementInfo(player, movementInfo, mover, jump);
1599 });
1600
1601 if (ret && *ret)
1602 {
1603 return false;
1604 }
1605
1606 return true;
1607}
Definition: ScriptMgr.h:987
virtual bool AnticheatCheckMovementInfo(Player *, MovementInfo const &, Unit *, bool)
Definition: ScriptMgr.h:1454

References PlayerScript::AnticheatCheckMovementInfo().

◆ AnticheatHandleDoubleJump()

bool ScriptMgr::AnticheatHandleDoubleJump ( Player player,
Unit mover 
)
1580{
1581 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1582 {
1583 return !script->AnticheatHandleDoubleJump(player, mover);
1584 });
1585
1586 if (ret && *ret)
1587 {
1588 return false;
1589 }
1590
1591 return true;
1592}
virtual bool AnticheatHandleDoubleJump(Player *, Unit *)
Definition: ScriptMgr.h:1453

References PlayerScript::AnticheatHandleDoubleJump().

◆ AnticheatSetCanFlybyServer()

void ScriptMgr::AnticheatSetCanFlybyServer ( Player player,
bool  apply 
)
1540{
1541 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1542 {
1543 script->AnticheatSetCanFlybyServer(player, apply);
1544 });
1545}
virtual void AnticheatSetCanFlybyServer(Player *, bool)
Definition: ScriptMgr.h:1448

References PlayerScript::AnticheatSetCanFlybyServer().

◆ AnticheatSetJumpingbyOpcode()

void ScriptMgr::AnticheatSetJumpingbyOpcode ( Player player,
bool  jump 
)
1564{
1565 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1566 {
1567 script->AnticheatSetJumpingbyOpcode(player, jump);
1568 });
1569}
virtual void AnticheatSetJumpingbyOpcode(Player *, bool)
Definition: ScriptMgr.h:1451

References PlayerScript::AnticheatSetJumpingbyOpcode().

◆ AnticheatSetRootACKUpd()

void ScriptMgr::AnticheatSetRootACKUpd ( Player player)
1556{
1557 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1558 {
1559 script->AnticheatSetRootACKUpd(player);
1560 });
1561}
virtual void AnticheatSetRootACKUpd(Player *)
Definition: ScriptMgr.h:1450

References PlayerScript::AnticheatSetRootACKUpd().

◆ AnticheatSetSkipOnePacketForASH()

void ScriptMgr::AnticheatSetSkipOnePacketForASH ( Player player,
bool  apply 
)
1532{
1533 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1534 {
1535 script->AnticheatSetSkipOnePacketForASH(player, apply);
1536 });
1537}
virtual void AnticheatSetSkipOnePacketForASH(Player *, bool)
Definition: ScriptMgr.h:1447

References PlayerScript::AnticheatSetSkipOnePacketForASH().

◆ AnticheatSetUnderACKmount()

void ScriptMgr::AnticheatSetUnderACKmount ( Player player)
1548{
1549 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1550 {
1551 script->AnticheatSetUnderACKmount(player);
1552 });
1553}
virtual void AnticheatSetUnderACKmount(Player *)
Definition: ScriptMgr.h:1449

References PlayerScript::AnticheatSetUnderACKmount().

◆ AnticheatUpdateMovementInfo()

void ScriptMgr::AnticheatUpdateMovementInfo ( Player player,
MovementInfo const &  movementInfo 
)
1572{
1573 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1574 {
1575 script->AnticheatUpdateMovementInfo(player, movementInfo);
1576 });
1577}
virtual void AnticheatUpdateMovementInfo(Player *, MovementInfo const &)
Definition: ScriptMgr.h:1452

References PlayerScript::AnticheatUpdateMovementInfo().

◆ CanAccountCreateCharacter()

bool ScriptMgr::CanAccountCreateCharacter ( uint32  accountId,
uint8  charRace,
uint8  charClass 
)
86{
87 auto ret = IsValidBoolScript<AccountScript>([&](AccountScript* script)
88 {
89 return !script->CanAccountCreateCharacter(accountId, charRace, charClass);
90 });
91
92 if (ret && *ret)
93 {
94 return false;
95 }
96
97 return true;
98}
Definition: ScriptMgr.h:1458
virtual bool CanAccountCreateCharacter(uint32, uint8, uint8)
Definition: ScriptMgr.h:1485

References AccountScript::CanAccountCreateCharacter().

◆ CanAddMember()

bool ScriptMgr::CanAddMember ( ArenaTeam team,
ObjectGuid  PlayerGuid 
)
22{
23 auto ret = IsValidBoolScript<ArenaScript>([&](ArenaScript* script)
24 {
25 return !script->CanAddMember(team, PlayerGuid);
26 });
27
28 if (ret && *ret)
29 {
30 return false;
31 }
32
33 return true;
34}
Definition: ScriptMgr.h:1851
virtual bool CanAddMember(ArenaTeam *, ObjectGuid)
Definition: ScriptMgr.h:1860

References ArenaScript::CanAddMember().

◆ CanApplyEnchantment()

bool ScriptMgr::CanApplyEnchantment ( Player player,
Item item,
EnchantmentSlot  slot,
bool  apply,
bool  apply_dur,
bool  ignore_condition 
)
1184{
1185 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1186 {
1187 return !script->CanApplyEnchantment(player, item, slot, apply, apply_dur, ignore_condition);
1188 });
1189
1190 if (ret && *ret)
1191 {
1192 return false;
1193 }
1194
1195 return true;
1196}
virtual bool CanApplyEnchantment(Player *, Item *, EnchantmentSlot, bool, bool, bool)
Definition: ScriptMgr.h:1307

References PlayerScript::CanApplyEnchantment().

◆ CanApplyEquipSpell()

bool ScriptMgr::CanApplyEquipSpell ( Player player,
SpellInfo const *  spellInfo,
Item item,
bool  apply,
bool  form_change 
)
1056{
1057 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1058 {
1059 return !script->CanApplyEquipSpell(player, spellInfo, item, apply, form_change);
1060 });
1061
1062 if (ret && *ret)
1063 {
1064 return false;
1065 }
1066
1067 return true;
1068}
virtual bool CanApplyEquipSpell(Player *, SpellInfo const *, Item *, bool, bool)
Definition: ScriptMgr.h:1289

References PlayerScript::CanApplyEquipSpell().

◆ CanApplyEquipSpellsItemSet()

bool ScriptMgr::CanApplyEquipSpellsItemSet ( Player player,
ItemSetEffect eff 
)
1071{
1072 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1073 {
1074 return !script->CanApplyEquipSpellsItemSet(player, eff);
1075 });
1076
1077 if (ret && *ret)
1078 {
1079 return false;
1080 }
1081
1082 return true;
1083}
virtual bool CanApplyEquipSpellsItemSet(Player *, ItemSetEffect *)
Definition: ScriptMgr.h:1291

References PlayerScript::CanApplyEquipSpellsItemSet().

◆ CanApplySoulboundFlag()

bool ScriptMgr::CanApplySoulboundFlag ( Item item,
ItemTemplate const *  proto 
)
30{
31 auto ret = IsValidBoolScript<MiscScript>([&](MiscScript* script)
32 {
33 return !script->CanApplySoulboundFlag(item, proto);
34 });
35
36 if (ret && *ret)
37 {
38 return false;
39 }
40
41 return true;
42}
Definition: ScriptMgr.h:1868
virtual bool CanApplySoulboundFlag(Item *, ItemTemplate const *)
Definition: ScriptMgr.h:1895

References MiscScript::CanApplySoulboundFlag().

◆ CanApplyWeaponDependentAuraDamageMod()

bool ScriptMgr::CanApplyWeaponDependentAuraDamageMod ( Player player,
Item item,
WeaponAttackType  attackType,
AuraEffect const *  aura,
bool  apply 
)
1041{
1042 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1043 {
1044 return !script->CanApplyWeaponDependentAuraDamageMod(player, item, attackType, aura, apply);
1045 });
1046
1047 if (ret && *ret)
1048 {
1049 return false;
1050 }
1051
1052 return true;
1053}
virtual bool CanApplyWeaponDependentAuraDamageMod(Player *, Item *, WeaponAttackType, AuraEffect const *, bool)
Definition: ScriptMgr.h:1287

References PlayerScript::CanApplyWeaponDependentAuraDamageMod().

◆ CanAreaExploreAndOutdoor()

bool ScriptMgr::CanAreaExploreAndOutdoor ( Player player)
971{
972 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
973 {
974 return !script->CanAreaExploreAndOutdoor(player);
975 });
976
977 if (ret && *ret)
978 {
979 return false;
980 }
981
982 return true;
983}
virtual bool CanAreaExploreAndOutdoor(Player *)
Definition: ScriptMgr.h:1273

References PlayerScript::CanAreaExploreAndOutdoor().

◆ CanArmorDamageModifier()

bool ScriptMgr::CanArmorDamageModifier ( Player player)
1018{
1019 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1020 {
1021 return !script->CanArmorDamageModifier(player);
1022 });
1023
1024 if (ret && *ret)
1025 {
1026 return false;
1027 }
1028
1029 return true;
1030}
virtual bool CanArmorDamageModifier(Player *)
Definition: ScriptMgr.h:1283

References PlayerScript::CanArmorDamageModifier().

◆ CanBattleFieldPort()

bool ScriptMgr::CanBattleFieldPort ( Player player,
uint8  arenaType,
BattlegroundTypeId  BGTypeID,
uint8  action 
)
811{
812 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
813 {
814 return !script->CanBattleFieldPort(player, arenaType, BGTypeID, action);
815 });
816
817 if (ret && *ret)
818 {
819 return false;
820 }
821
822 return true;
823}
virtual bool CanBattleFieldPort(Player *, uint8, BattlegroundTypeId, uint8)
Definition: ScriptMgr.h:1247

References PlayerScript::CanBattleFieldPort().

◆ CanCastItemCombatSpell()

bool ScriptMgr::CanCastItemCombatSpell ( Player player,
Unit target,
WeaponAttackType  attType,
uint32  procVictim,
uint32  procEx,
Item item,
ItemTemplate const *  proto 
)
1086{
1087 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1088 {
1089 return !script->CanCastItemCombatSpell(player, target, attType, procVictim, procEx, item, proto);
1090 });
1091
1092 if (ret && *ret)
1093 {
1094 return false;
1095 }
1096
1097 return true;
1098}
virtual bool CanCastItemCombatSpell(Player *, Unit *, WeaponAttackType, uint32, uint32, Item *, ItemTemplate const *)
Definition: ScriptMgr.h:1293

References PlayerScript::CanCastItemCombatSpell().

◆ CanCastItemUseSpell()

bool ScriptMgr::CanCastItemUseSpell ( Player player,
Item item,
SpellCastTargets const &  targets,
uint8  cast_count,
uint32  glyphIndex 
)
1101{
1102 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1103 {
1104 return !script->CanCastItemUseSpell(player, item, targets, cast_count, glyphIndex);
1105 });
1106
1107 if (ret && *ret)
1108 {
1109 return false;
1110 }
1111
1112 return true;
1113}
virtual bool CanCastItemUseSpell(Player *, Item *, SpellCastTargets const &, uint8, uint32)
Definition: ScriptMgr.h:1295

References PlayerScript::CanCastItemUseSpell().

◆ CanCheckCriteria()

bool ScriptMgr::CanCheckCriteria ( AchievementMgr mgr,
AchievementCriteriaEntry const *  achievementCriteria 
)
68{
69 auto ret = IsValidBoolScript<AchievementScript>([&](AchievementScript* script)
70 {
71 return !script->CanCheckCriteria(mgr, achievementCriteria);
72 });
73
74 if (ret && *ret)
75 {
76 return false;
77 }
78
79 return true;
80}
Definition: ScriptMgr.h:1801
virtual bool CanCheckCriteria(AchievementMgr *, AchievementCriteriaEntry const *)
Definition: ScriptMgr.h:1819

References AchievementScript::CanCheckCriteria().

◆ CanEnterMap()

bool ScriptMgr::CanEnterMap ( Player player,
MapEntry const *  entry,
InstanceTemplate const *  instance,
MapDifficulty const *  mapDiff,
bool  loginCheck 
)
1346{
1347 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1348 {
1349 return !script->CanEnterMap(player, entry, instance, mapDiff, loginCheck);
1350 });
1351
1352 if (ret && *ret)
1353 {
1354 return false;
1355 }
1356
1357 return true;
1358}
virtual bool CanEnterMap(Player *, MapEntry const *, InstanceTemplate const *, MapDifficulty const *, bool)
Definition: ScriptMgr.h:1336
static ScriptMgr * instance()
Definition: ScriptMgr.cpp:53

References PlayerScript::CanEnterMap(), and instance().

◆ CanEquipItem()

bool ScriptMgr::CanEquipItem ( Player player,
uint8  slot,
uint16 dest,
Item pItem,
bool  swap,
bool  not_loading 
)
1124{
1125 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1126 {
1127 return !script->CanEquipItem(player, slot, dest, pItem, swap, not_loading);
1128 });
1129
1130 if (ret && *ret)
1131 {
1132 return false;
1133 }
1134
1135 return true;
1136}
virtual bool CanEquipItem(Player *, uint8, uint16 &, Item *, bool, bool)
Definition: ScriptMgr.h:1299

References PlayerScript::CanEquipItem().

◆ CanExecuteCommand()

bool ScriptMgr::CanExecuteCommand ( ChatHandler handler,
std::string_view  cmdStr 
)
30{
31 auto ret = IsValidBoolScript<CommandSC>([&](CommandSC* script)
32 {
33 return !script->CanExecuteCommand(handler, cmdStr);
34 });
35
36 if (ret && *ret)
37 {
38 return false;
39 }
40
41 return true;
42}
Definition: ScriptMgr.h:1921
virtual bool CanExecuteCommand(ChatHandler &, std::string_view)
This hook runs execute chat command.
Definition: ScriptMgr.h:1938

References CommandSC::CanExecuteCommand().

◆ CanFillPlayersToBG()

bool ScriptMgr::CanFillPlayersToBG ( BattlegroundQueue queue,
Battleground bg,
BattlegroundBracketId  bracket_id 
)
80{
81 auto ret = IsValidBoolScript<BGScript>([&](BGScript* script)
82 {
83 return !script->CanFillPlayersToBG(queue, bg, bracket_id);
84 });
85
86 return ReturnValidBool(ret);
87}
bool ReturnValidBool(Optional< bool > ret, bool need=false)
Definition: ScriptMgrMacros.h:67
Definition: ScriptMgr.h:1607
virtual bool CanFillPlayersToBG(BattlegroundQueue *, Battleground *, BattlegroundBracketId)
Definition: ScriptMgr.h:1641

References BGScript::CanFillPlayersToBG(), and ReturnValidBool().

◆ CanGiveMailRewardAtGiveLevel()

bool ScriptMgr::CanGiveMailRewardAtGiveLevel ( Player player,
uint8  level 
)
910{
911 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
912 {
913 return !script->CanGiveMailRewardAtGiveLevel(player, level);
914 });
915
916 if (ret && *ret)
917 {
918 return false;
919 }
920
921 return true;
922}
virtual bool CanGiveMailRewardAtGiveLevel(Player *, uint8)
Definition: ScriptMgr.h:1263

References PlayerScript::CanGiveMailRewardAtGiveLevel().

◆ CanGroupAccept()

bool ScriptMgr::CanGroupAccept ( Player player,
Group group 
)
841{
842 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
843 {
844 return !script->CanGroupAccept(player, group);
845 });
846
847 if (ret && *ret)
848 {
849 return false;
850 }
851
852 return true;
853}
virtual bool CanGroupAccept(Player *, Group *)
Definition: ScriptMgr.h:1251

References PlayerScript::CanGroupAccept().

◆ CanGroupInvite()

bool ScriptMgr::CanGroupInvite ( Player player,
std::string &  membername 
)
826{
827 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
828 {
829 return !script->CanGroupInvite(player, membername);
830 });
831
832 if (ret && *ret)
833 {
834 return false;
835 }
836
837 return true;
838}
virtual bool CanGroupInvite(Player *, std::string &)
Definition: ScriptMgr.h:1249

References PlayerScript::CanGroupInvite().

◆ CanGroupJoinBattlegroundQueue()

bool ScriptMgr::CanGroupJoinBattlegroundQueue ( Group const *  group,
Player member,
Battleground const *  bgTemplate,
uint32  MinPlayerCount,
bool  isRated,
uint32  arenaSlot 
)
72{
73 auto ret = IsValidBoolScript<GroupScript>([&](GroupScript* script)
74 {
75 return !script->CanGroupJoinBattlegroundQueue(group, member, bgTemplate, MinPlayerCount, isRated, arenaSlot);
76 });
77
78 if (ret && *ret)
79 {
80 return false;
81 }
82
83 return true;
84}
Definition: ScriptMgr.h:1532
virtual bool CanGroupJoinBattlegroundQueue(Group const *, Player *, Battleground const *, uint32, bool, uint32)
Definition: ScriptMgr.h:1554

References GroupScript::CanGroupJoinBattlegroundQueue().

◆ CanGuildSendBankList()

bool ScriptMgr::CanGuildSendBankList ( Guild const *  guild,
WorldSession session,
uint8  tabId,
bool  sendAllSlots 
)
111{
112 auto ret = IsValidBoolScript<GuildScript>([&](GuildScript* script)
113 {
114 return !script->CanGuildSendBankList(guild, session, tabId, sendAllSlots);
115 });
116
117 if (ret && *ret)
118 {
119 return false;
120 }
121
122 return true;
123}
Definition: ScriptMgr.h:1489
virtual bool CanGuildSendBankList(Guild const *, WorldSession *, uint8, bool)
Definition: ScriptMgr.h:1528

References GuildScript::CanGuildSendBankList().

◆ CanInitTrade()

bool ScriptMgr::CanInitTrade ( Player player,
Player target 
)
1361{
1362 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1363 {
1364 return !script->CanInitTrade(player, target);
1365 });
1366
1367 if (ret && *ret)
1368 {
1369 return false;
1370 }
1371
1372 return true;
1373}
virtual bool CanInitTrade(Player *, Player *)
Definition: ScriptMgr.h:1338

References PlayerScript::CanInitTrade().

◆ CanItemApplyEquipSpell()

bool ScriptMgr::CanItemApplyEquipSpell ( Player player,
Item item 
)
109{
110 auto ret = IsValidBoolScript<MiscScript>([&](MiscScript* script)
111 {
112 return !script->CanItemApplyEquipSpell(player, item);
113 });
114
115 if (ret && *ret)
116 {
117 return false;
118 }
119
120 return true;
121}
virtual bool CanItemApplyEquipSpell(Player *, Item *)
Definition: ScriptMgr.h:1897

References MiscScript::CanItemApplyEquipSpell().

◆ CanJoinInArenaQueue()

bool ScriptMgr::CanJoinInArenaQueue ( Player player,
ObjectGuid  BattlemasterGuid,
uint8  arenaslot,
BattlegroundTypeId  BGTypeID,
uint8  joinAsGroup,
uint8  IsRated,
GroupJoinBattlegroundResult err 
)
796{
797 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
798 {
799 return !script->CanJoinInArenaQueue(player, BattlemasterGuid, arenaslot, BGTypeID, joinAsGroup, IsRated, err);
800 });
801
802 if (ret && *ret)
803 {
804 return false;
805 }
806
807 return true;
808}
virtual bool CanJoinInArenaQueue(Player *, ObjectGuid, uint8, BattlegroundTypeId, uint8, uint8, GroupJoinBattlegroundResult &)
Definition: ScriptMgr.h:1245

References PlayerScript::CanJoinInArenaQueue().

◆ CanJoinInBattlegroundQueue()

bool ScriptMgr::CanJoinInBattlegroundQueue ( Player player,
ObjectGuid  BattlemasterGuid,
BattlegroundTypeId  BGTypeID,
uint8  joinAsGroup,
GroupJoinBattlegroundResult err 
)
649{
650 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
651 {
652 return !script->CanJoinInBattlegroundQueue(player, BattlemasterGuid, BGTypeID, joinAsGroup, err);
653 });
654
655 if (ret && *ret)
656 {
657 return false;
658 }
659
660 return true;
661}
virtual bool CanJoinInBattlegroundQueue(Player *, ObjectGuid, BattlegroundTypeId, uint8, GroupJoinBattlegroundResult &)
Definition: ScriptMgr.h:1230

References PlayerScript::CanJoinInBattlegroundQueue().

◆ CanJoinLfg()

bool ScriptMgr::CanJoinLfg ( Player player,
uint8  roles,
lfg::LfgDungeonSet dungeons,
const std::string &  comment 
)
1331{
1332 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1333 {
1334 return !script->CanJoinLfg(player, roles, dungeons, comment);
1335 });
1336
1337 if (ret && *ret)
1338 {
1339 return false;
1340 }
1341
1342 return true;
1343}
virtual bool CanJoinLfg(Player *, uint8, lfg::LfgDungeonSet &, const std::string &)
Definition: ScriptMgr.h:1334

References PlayerScript::CanJoinLfg().

◆ CanModAuraEffectDamageDone()

bool ScriptMgr::CanModAuraEffectDamageDone ( AuraEffect const *  auraEff,
Unit target,
AuraApplication const *  aurApp,
uint8  mode,
bool  apply 
)
30{
31 auto ret = IsValidBoolScript<SpellSC>([&](SpellSC* script)
32 {
33 return !script->CanModAuraEffectDamageDone(auraEff, target, aurApp, mode, apply);
34 });
35
36 if (ret && *ret)
37 {
38 return false;
39 }
40
41 return true;
42}
Definition: ScriptMgr.h:1707
virtual bool CanModAuraEffectDamageDone(AuraEffect const *, Unit *, AuraApplication const *, uint8, bool)
Definition: ScriptMgr.h:1717

References SpellSC::CanModAuraEffectDamageDone().

◆ CanModAuraEffectModDamagePercentDone()

bool ScriptMgr::CanModAuraEffectModDamagePercentDone ( AuraEffect const *  auraEff,
Unit target,
AuraApplication const *  aurApp,
uint8  mode,
bool  apply 
)
45{
46 auto ret = IsValidBoolScript<SpellSC>([&](SpellSC* script)
47 {
48 return !script->CanModAuraEffectModDamagePercentDone(auraEff, target, aurApp, mode, apply);
49 });
50
51 if (ret && *ret)
52 {
53 return false;
54 }
55
56 return true;
57}
virtual bool CanModAuraEffectModDamagePercentDone(AuraEffect const *, Unit *, AuraApplication const *, uint8, bool)
Definition: ScriptMgr.h:1719

References SpellSC::CanModAuraEffectModDamagePercentDone().

◆ CanPacketReceive()

bool ScriptMgr::CanPacketReceive ( WorldSession session,
WorldPacket const &  packet 
)
58{
60 return true;
61
62 WorldPacket copy(packet);
63
64 auto ret = IsValidBoolScript<ServerScript>([&](ServerScript* script)
65 {
66 return !script->CanPacketReceive(session, copy);
67 });
68
69 if (ret && *ret)
70 {
71 return false;
72 }
73
74 return true;
75}
Definition: ScriptMgr.h:157
virtual bool CanPacketReceive(WorldSession *, WorldPacket &)
Called when a (valid) packet is received by a client. The packet object is a copy of the original pac...
Definition: ScriptMgr.h:192
Definition: ScriptMgr.h:2706
Definition: WorldPacket.h:27

References ServerScript::CanPacketReceive().

◆ CanPacketSend()

bool ScriptMgr::CanPacketSend ( WorldSession session,
WorldPacket const &  packet 
)
78{
79 ASSERT(session);
80
82 return true;
83
84 WorldPacket copy(packet);
85
86 auto ret = IsValidBoolScript<ServerScript>([&](ServerScript* script)
87 {
88 return !script->CanPacketSend(session, copy);
89 });
90
91 if (ret && *ret)
92 {
93 return false;
94 }
95
96 return true;
97}
#define ASSERT
Definition: Errors.h:68
virtual bool CanPacketSend(WorldSession *, WorldPacket &)
This hook called when a packet is sent to a client. The packet object is a copy of the original packe...
Definition: ScriptMgr.h:182

References ASSERT, and ServerScript::CanPacketSend().

◆ CanPlayerUseChat() [1/5]

bool ScriptMgr::CanPlayerUseChat ( Player player,
uint32  type,
uint32  language,
std::string &  msg 
)
1424{
1425 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1426 {
1427 return !script->CanPlayerUseChat(player, type, language, msg);
1428 });
1429
1430 if (ret && *ret)
1431 {
1432 return false;
1433 }
1434
1435 return true;
1436}
virtual bool CanPlayerUseChat(Player *, uint32, uint32, std::string &)
This hook called before player sending message in default chat.
Definition: ScriptMgr.h:1359

References PlayerScript::CanPlayerUseChat().

◆ CanPlayerUseChat() [2/5]

bool ScriptMgr::CanPlayerUseChat ( Player player,
uint32  type,
uint32  language,
std::string &  msg,
Channel channel 
)
1484{
1485 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1486 {
1487 return !script->CanPlayerUseChat(player, type, language, msg, channel);
1488 });
1489
1490 if (ret && *ret)
1491 {
1492 return false;
1493 }
1494
1495 return true;
1496}

References PlayerScript::CanPlayerUseChat().

◆ CanPlayerUseChat() [3/5]

bool ScriptMgr::CanPlayerUseChat ( Player player,
uint32  type,
uint32  language,
std::string &  msg,
Group group 
)
1454{
1455 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1456 {
1457 return !script->CanPlayerUseChat(player, type, language, msg, group);
1458 });
1459
1460 if (ret && *ret)
1461 {
1462 return false;
1463 }
1464
1465 return true;
1466}

References PlayerScript::CanPlayerUseChat().

◆ CanPlayerUseChat() [4/5]

bool ScriptMgr::CanPlayerUseChat ( Player player,
uint32  type,
uint32  language,
std::string &  msg,
Guild guild 
)
1469{
1470 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1471 {
1472 return !script->CanPlayerUseChat(player, type, language, msg, guild);
1473 });
1474
1475 if (ret && *ret)
1476 {
1477 return false;
1478 }
1479
1480 return true;
1481}

References PlayerScript::CanPlayerUseChat().

◆ CanPlayerUseChat() [5/5]

bool ScriptMgr::CanPlayerUseChat ( Player player,
uint32  type,
uint32  language,
std::string &  msg,
Player receiver 
)
1439{
1440 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1441 {
1442 return !script->CanPlayerUseChat(player, type, language, msg, receiver);
1443 });
1444
1445 if (ret && *ret)
1446 {
1447 return false;
1448 }
1449
1450 return true;
1451}

References PlayerScript::CanPlayerUseChat().

◆ CanPrepare()

bool ScriptMgr::CanPrepare ( Spell spell,
SpellCastTargets const *  targets,
AuraEffect const *  triggeredByAura 
)
68{
69 auto ret = IsValidBoolScript<SpellSC>([&](SpellSC* script)
70 {
71 return !script->CanPrepare(spell, targets, triggeredByAura);
72 });
73
74 if (ret && *ret)
75 {
76 return false;
77 }
78
79 return true;
80}
virtual bool CanPrepare(Spell *, SpellCastTargets const *, AuraEffect const *)
Definition: ScriptMgr.h:1723

References SpellSC::CanPrepare().

◆ CanRepopAtGraveyard()

bool ScriptMgr::CanRepopAtGraveyard ( Player player)
933{
934 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
935 {
936 return !script->CanRepopAtGraveyard(player);
937 });
938
939 if (ret && *ret)
940 {
941 return false;
942 }
943
944 return true;
945}
virtual bool CanRepopAtGraveyard(Player *)
Definition: ScriptMgr.h:1267

References PlayerScript::CanRepopAtGraveyard().

◆ CanResetTalents()

bool ScriptMgr::CanResetTalents ( Pet pet)
68{
69 auto ret = IsValidBoolScript<PetScript>([&](PetScript* script)
70 {
71 return !script->CanResetTalents(pet);
72 });
73
74 if (ret && *ret)
75 {
76 return false;
77 }
78
79 return true;
80}
Definition: ScriptMgr.h:1823
virtual bool CanResetTalents(Pet *)
Definition: ScriptMgr.h:1840

References PetScript::CanResetTalents().

◆ CanSaveEquipNewItem()

bool ScriptMgr::CanSaveEquipNewItem ( Player player,
Item item,
uint16  pos,
bool  update 
)
1169{
1170 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1171 {
1172 return !script->CanSaveEquipNewItem(player, item, pos, update);
1173 });
1174
1175 if (ret && *ret)
1176 {
1177 return false;
1178 }
1179
1180 return true;
1181}
virtual bool CanSaveEquipNewItem(Player *, Item *, uint16, bool)
Definition: ScriptMgr.h:1305

References PlayerScript::CanSaveEquipNewItem().

◆ CanSaveToDB()

bool ScriptMgr::CanSaveToDB ( ArenaTeam team)
45{
46 auto ret = IsValidBoolScript<ArenaScript>([&](ArenaScript* script)
47 {
48 return !script->CanSaveToDB(team);
49 });
50
51 if (ret && *ret)
52 {
53 return false;
54 }
55
56 return true;
57}
virtual bool CanSaveToDB(ArenaTeam *)
Definition: ScriptMgr.h:1864

References ArenaScript::CanSaveToDB().

◆ CanScalingEverything()

bool ScriptMgr::CanScalingEverything ( Spell spell)
83{
84 auto ret = IsValidBoolScript<SpellSC>([&](SpellSC* script)
85 {
86 return script->CanScalingEverything(spell);
87 });
88
89 if (ret && *ret)
90 {
91 return true;
92 }
93
94 return false;
95}
virtual bool CanScalingEverything(Spell *)
Definition: ScriptMgr.h:1725

References SpellSC::CanScalingEverything().

◆ CanSelectSpecTalent()

bool ScriptMgr::CanSelectSpecTalent ( Spell spell)
98{
99 auto ret = IsValidBoolScript<SpellSC>([&](SpellSC* script)
100 {
101 return !script->CanSelectSpecTalent(spell);
102 });
103
104 if (ret && *ret)
105 {
106 return false;
107 }
108
109 return true;
110}
virtual bool CanSelectSpecTalent(Spell *)
Definition: ScriptMgr.h:1727

References SpellSC::CanSelectSpecTalent().

◆ CanSellItem()

bool ScriptMgr::CanSellItem ( Player player,
Item item,
Creature creature 
)
856{
857 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
858 {
859 return !script->CanSellItem(player, item, creature);
860 });
861
862 if (ret && *ret)
863 {
864 return false;
865 }
866
867 return true;
868}
virtual bool CanSellItem(Player *, Item *, Creature *)
Definition: ScriptMgr.h:1253

References PlayerScript::CanSellItem().

◆ CanSendAuctionHello()

bool ScriptMgr::CanSendAuctionHello ( WorldSession const *  session,
ObjectGuid  guid,
Creature creature 
)
124{
125 auto ret = IsValidBoolScript<MiscScript>([&](MiscScript* script)
126 {
127 return !script->CanSendAuctionHello(session, guid, creature);
128 });
129
130 if (ret && *ret)
131 {
132 return false;
133 }
134
135 return true;
136}
virtual bool CanSendAuctionHello(WorldSession const *, ObjectGuid, Creature *)
Definition: ScriptMgr.h:1899

References MiscScript::CanSendAuctionHello().

◆ CanSendMail()

bool ScriptMgr::CanSendMail ( Player player,
ObjectGuid  receiverGuid,
ObjectGuid  mailbox,
std::string &  subject,
std::string &  body,
uint32  money,
uint32  COD,
Item item 
)
871{
872 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
873 {
874 return !script->CanSendMail(player, receiverGuid, mailbox, subject, body, money, COD, item);
875 });
876
877 if (ret && *ret)
878 {
879 return false;
880 }
881
882 return true;
883}
virtual bool CanSendMail(Player *, ObjectGuid, ObjectGuid, std::string &, std::string &, uint32, uint32, Item *)
Definition: ScriptMgr.h:1255

References PlayerScript::CanSendMail().

◆ CanSendMessageBGQueue()

bool ScriptMgr::CanSendMessageBGQueue ( BattlegroundQueue queue,
Player leader,
Battleground bg,
PvPDifficultyEntry const *  bracketEntry 
)
108{
109 auto ret = IsValidBoolScript<BGScript>([&](BGScript* script)
110 {
111 return !script->CanSendMessageBGQueue(queue, leader, bg, bracketEntry);
112 });
113
114 return ReturnValidBool(ret);
115}
virtual bool CanSendMessageBGQueue(BattlegroundQueue *, Player *, Battleground *, PvPDifficultyEntry const *)
Definition: ScriptMgr.h:1645

References BGScript::CanSendMessageBGQueue(), and ReturnValidBool().

◆ CanSetPhaseMask()

bool ScriptMgr::CanSetPhaseMask ( Unit const *  unit,
uint32  newPhaseMask,
bool  update 
)
165{
166 auto ret = IsValidBoolScript<UnitScript>([&](UnitScript* script)
167 {
168 return !script->CanSetPhaseMask(unit, newPhaseMask, update);
169 });
170
171 if (ret && *ret)
172 {
173 return false;
174 }
175
176 return true;
177}
Definition: ScriptMgr.h:413
virtual bool CanSetPhaseMask(Unit const *, uint32, bool)
Definition: ScriptMgr.h:454

References UnitScript::CanSetPhaseMask().

◆ CanUnequipItem()

bool ScriptMgr::CanUnequipItem ( Player player,
uint16  pos,
bool  swap 
)
1139{
1140 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1141 {
1142 return !script->CanUnequipItem(player, pos, swap);
1143 });
1144
1145 if (ret && *ret)
1146 {
1147 return false;
1148 }
1149
1150 return true;
1151}
virtual bool CanUnequipItem(Player *, uint16, bool)
Definition: ScriptMgr.h:1301

References PlayerScript::CanUnequipItem().

◆ CanUnlearnSpellDefault()

bool ScriptMgr::CanUnlearnSpellDefault ( Pet pet,
SpellInfo const *  spellEntry 
)
53{
54 auto ret = IsValidBoolScript<PetScript>([&](PetScript* script)
55 {
56 return !script->CanUnlearnSpellDefault(pet, spellEntry);
57 });
58
59 if (ret && *ret)
60 {
61 return false;
62 }
63
64 return true;
65}
virtual bool CanUnlearnSpellDefault(Pet *, SpellInfo const *)
Definition: ScriptMgr.h:1838

References PetScript::CanUnlearnSpellDefault().

◆ CanUnlearnSpellSet()

bool ScriptMgr::CanUnlearnSpellSet ( Pet pet,
uint32  level,
uint32  spell 
)
38{
39 auto ret = IsValidBoolScript<PetScript>([&](PetScript* script)
40 {
41 return !script->CanUnlearnSpellSet(pet, level, spell);
42 });
43
44 if (ret && *ret)
45 {
46 return false;
47 }
48
49 return true;
50}
virtual bool CanUnlearnSpellSet(Pet *, uint32, uint32)
Definition: ScriptMgr.h:1836

References PetScript::CanUnlearnSpellSet().

◆ CanUseItem()

bool ScriptMgr::CanUseItem ( Player player,
ItemTemplate const *  proto,
InventoryResult result 
)
1154{
1155 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1156 {
1157 return !script->CanUseItem(player, proto, result);
1158 });
1159
1160 if (ret && *ret)
1161 {
1162 return false;
1163 }
1164
1165 return true;
1166}
virtual bool CanUseItem(Player *, ItemTemplate const *, InventoryResult &)
Definition: ScriptMgr.h:1303

References PlayerScript::CanUseItem().

◆ CheckIfScriptsInDatabaseExist()

void ScriptMgr::CheckIfScriptsInDatabaseExist ( )
159{
160 for (auto const& scriptName : sObjectMgr->GetScriptNames())
161 {
162 if (uint32 sid = sObjectMgr->GetScriptId(scriptName.c_str()))
163 {
197 {
198 LOG_ERROR("sql.sql", "Script named '{}' is assigned in the database, but has no code!", scriptName);
199 }
200 }
201 }
202}
std::uint32_t uint32
Definition: Define.h:108
#define LOG_ERROR(filterType__,...)
Definition: Log.h:159
#define sObjectMgr
Definition: ObjectMgr.h:1640

References LOG_ERROR, and sObjectMgr.

Referenced by LoadDatabase().

◆ CheckItemInSlotAtLoadInventory()

bool ScriptMgr::CheckItemInSlotAtLoadInventory ( Player player,
Item item,
uint8  slot,
uint8 err,
uint16 dest 
)
1222{
1223 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1224 {
1225 return !script->CheckItemInSlotAtLoadInventory(player, item, slot, err, dest);
1226 });
1227
1228 if (ret && *ret)
1229 {
1230 return false;
1231 }
1232
1233 return true;
1234}
virtual bool CheckItemInSlotAtLoadInventory(Player *, Item *, uint8, uint8 &, uint16 &)
Definition: ScriptMgr.h:1313

References PlayerScript::CheckItemInSlotAtLoadInventory().

◆ CreateAuraScripts()

void ScriptMgr::CreateAuraScripts ( uint32  spellId,
std::list< AuraScript * > &  scriptVector 
)
43{
44 SpellScriptsBounds bounds = sObjectMgr->GetSpellScriptsBounds(spellId);
45
46 for (SpellScriptsContainer::iterator itr = bounds.first; itr != bounds.second; ++itr)
47 {
49 if (!tempScript)
50 continue;
51
52 AuraScript* script = tempScript->GetAuraScript();
53
54 if (!script)
55 continue;
56
57 script->_Init(&tempScript->GetName(), spellId);
58
59 scriptVector.push_back(script);
60 }
61}
std::pair< SpellScriptsContainer::iterator, SpellScriptsContainer::iterator > SpellScriptsBounds
Definition: ObjectMgr.h:389
const std::string & GetName() const
Definition: ScriptMgr.h:118
Definition: ScriptMgr.h:142
virtual AuraScript * GetAuraScript() const
Definition: ScriptMgr.h:153
static TScript * GetScriptById(uint32 id)
Definition: ScriptMgr.h:2807
virtual void _Init(std::string const *scriptname, uint32 spellId)
Definition: SpellScript.cpp:59
Definition: SpellScript.h:517

References _SpellScript::_Init(), SpellScriptLoader::GetAuraScript(), ScriptObject::GetName(), ScriptRegistry< TScript >::GetScriptById(), and sObjectMgr.

◆ CreateBattleground()

Battleground * ScriptMgr::CreateBattleground ( BattlegroundTypeId  typeId)
Todo:
: Implement script-side battlegrounds.
21{
23 ABORT();
24 return nullptr;
25}
#define ABORT
Definition: Errors.h:76

References ABORT.

◆ CreateInstanceScript()

InstanceScript * ScriptMgr::CreateInstanceScript ( InstanceMap map)
21{
22 ASSERT(map);
23
25 return tempScript ? tempScript->GetInstanceScript(map) : nullptr;
26}
uint32 GetScriptId() const
Definition: Map.h:823

References ASSERT, ScriptRegistry< TScript >::GetScriptById(), and InstanceMap::GetScriptId().

◆ CreateOutdoorPvP()

OutdoorPvP * ScriptMgr::CreateOutdoorPvP ( OutdoorPvPData const *  data)
22{
23 ASSERT(data);
24
25 auto tempScript = ScriptRegistry<OutdoorPvPScript>::GetScriptById(data->ScriptId);
26 return tempScript ? tempScript->GetOutdoorPvP() : nullptr;
27}

References ASSERT, ScriptRegistry< TScript >::GetScriptById(), and OutdoorPvPData::ScriptId.

◆ CreateSpellScriptLoaders()

void ScriptMgr::CreateSpellScriptLoaders ( uint32  spellId,
std::vector< std::pair< SpellScriptLoader *, std::multimap< uint32, uint32 >::iterator > > &  scriptVector 
)
64{
65 SpellScriptsBounds bounds = sObjectMgr->GetSpellScriptsBounds(spellId);
66 scriptVector.reserve(std::distance(bounds.first, bounds.second));
67
68 for (SpellScriptsContainer::iterator itr = bounds.first; itr != bounds.second; ++itr)
69 {
71 if (!tempScript)
72 continue;
73
74 scriptVector.emplace_back(tempScript, itr);
75 }
76}

References ScriptRegistry< TScript >::GetScriptById(), and sObjectMgr.

◆ CreateSpellScripts()

void ScriptMgr::CreateSpellScripts ( uint32  spellId,
std::list< SpellScript * > &  scriptVector 
)
22{
23 SpellScriptsBounds bounds = sObjectMgr->GetSpellScriptsBounds(spellId);
24
25 for (SpellScriptsContainer::iterator itr = bounds.first; itr != bounds.second; ++itr)
26 {
28 if (!tempScript)
29 continue;
30
31 SpellScript* script = tempScript->GetSpellScript();
32
33 if (!script)
34 continue;
35
36 script->_Init(&tempScript->GetName(), spellId);
37
38 scriptVector.push_back(script);
39 }
40}
virtual SpellScript * GetSpellScript() const
Definition: ScriptMgr.h:150
Definition: SpellScript.h:182

References _SpellScript::_Init(), ScriptObject::GetName(), ScriptRegistry< TScript >::GetScriptById(), SpellScriptLoader::GetSpellScript(), and sObjectMgr.

◆ Creature_SelectLevel()

void ScriptMgr::Creature_SelectLevel ( const CreatureTemplate cinfo,
Creature creature 
)
52{
53 ExecuteScript<AllCreatureScript>([&](AllCreatureScript* script)
54 {
55 script->Creature_SelectLevel(cinfo, creature);
56 });
57}
Definition: ScriptMgr.h:550
virtual void Creature_SelectLevel(const CreatureTemplate *, Creature *)
Definition: ScriptMgr.h:559

References AllCreatureScript::Creature_SelectLevel().

◆ DealDamage()

uint32 ScriptMgr::DealDamage ( Unit AttackerUnit,
Unit pVictim,
uint32  damage,
DamageEffectType  damagetype 
)
22{
24 {
25 return damage;
26 }
27
28 for (auto const& [scriptID, script] : ScriptRegistry<UnitScript>::ScriptPointerList)
29 {
30 auto const& dmg = script->DealDamage(AttackerUnit, pVictim, damage, damagetype);
31 if (dmg != damage)
32 {
33 return damage;
34 }
35 }
36
37 return damage;
38}

◆ DecreaseScheduledScriptCount() [1/2]

uint32 ScriptMgr::DecreaseScheduledScriptCount ( )
inline
2442{ return --_scheduledScripts; }

References _scheduledScripts.

◆ DecreaseScheduledScriptCount() [2/2]

uint32 ScriptMgr::DecreaseScheduledScriptCount ( size_t  count)
inline
2443{ return _scheduledScripts -= count; }

References _scheduledScripts.

◆ FillSpellSummary()

void ScriptMgr::FillSpellSummary ( )
205{
207
208 SpellSummary = new TSpellSummary[sSpellMgr->GetSpellInfoStoreSize()];
209
210 SpellInfo const* pTempSpell;
211
212 for (uint32 i = 0; i < sSpellMgr->GetSpellInfoStoreSize(); ++i)
213 {
214 SpellSummary[i].Effects = 0;
215 SpellSummary[i].Targets = 0;
216
217 pTempSpell = sSpellMgr->GetSpellInfo(i);
218 // This spell doesn't exist.
219 if (!pTempSpell)
220 continue;
221
222 for (uint32 j = 0; j < MAX_SPELL_EFFECTS; ++j)
223 {
224 // Spell targets self.
225 if (pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_CASTER)
226 SpellSummary[i].Targets |= 1 << (SELECT_TARGET_SELF - 1);
227
228 // Spell targets a single enemy.
229 if (pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_TARGET_ENEMY ||
230 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_DEST_TARGET_ENEMY)
232
233 // Spell targets AoE at enemy.
234 if (pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_SRC_AREA_ENEMY ||
235 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_DEST_AREA_ENEMY ||
236 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_SRC_CASTER ||
237 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_DEST_DYNOBJ_ENEMY)
239
240 // Spell targets an enemy.
241 if (pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_TARGET_ENEMY ||
242 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_DEST_TARGET_ENEMY ||
243 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_SRC_AREA_ENEMY ||
244 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_DEST_AREA_ENEMY ||
245 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_SRC_CASTER ||
246 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_DEST_DYNOBJ_ENEMY)
248
249 // Spell targets a single friend (or self).
250 if (pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_CASTER ||
251 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_TARGET_ALLY ||
252 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_TARGET_PARTY)
254
255 // Spell targets AoE friends.
256 if (pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_CASTER_AREA_PARTY ||
257 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_LASTTARGET_AREA_PARTY ||
258 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_SRC_CASTER)
260
261 // Spell targets any friend (or self).
262 if (pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_CASTER ||
263 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_TARGET_ALLY ||
264 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_TARGET_PARTY ||
265 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_CASTER_AREA_PARTY ||
266 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_UNIT_LASTTARGET_AREA_PARTY ||
267 pTempSpell->Effects[j].TargetA.GetTarget() == TARGET_SRC_CASTER)
269
270 // Make sure that this spell includes a damage effect.
271 if (pTempSpell->Effects[j].Effect == SPELL_EFFECT_SCHOOL_DAMAGE ||
272 pTempSpell->Effects[j].Effect == SPELL_EFFECT_INSTAKILL ||
273 pTempSpell->Effects[j].Effect == SPELL_EFFECT_ENVIRONMENTAL_DAMAGE ||
274 pTempSpell->Effects[j].Effect == SPELL_EFFECT_HEALTH_LEECH)
276
277 // Make sure that this spell includes a healing effect (or an apply aura with a periodic heal).
278 if (pTempSpell->Effects[j].Effect == SPELL_EFFECT_HEAL ||
279 pTempSpell->Effects[j].Effect == SPELL_EFFECT_HEAL_MAX_HEALTH ||
280 pTempSpell->Effects[j].Effect == SPELL_EFFECT_HEAL_MECHANICAL ||
281 (pTempSpell->Effects[j].Effect == SPELL_EFFECT_APPLY_AURA && pTempSpell->Effects[j].ApplyAuraName == 8))
282 SpellSummary[i].Effects |= 1 << (SELECT_EFFECT_HEALING - 1);
283
284 // Make sure that this spell applies an aura.
285 if (pTempSpell->Effects[j].Effect == SPELL_EFFECT_APPLY_AURA)
286 SpellSummary[i].Effects |= 1 << (SELECT_EFFECT_AURA - 1);
287 }
288 }
289}
@ SELECT_TARGET_ANY_FRIEND
Definition: CreatureAI.h:51
@ SELECT_TARGET_AOE_FRIEND
Definition: CreatureAI.h:50
@ SELECT_TARGET_ANY_ENEMY
Definition: CreatureAI.h:47
@ SELECT_TARGET_SINGLE_FRIEND
Definition: CreatureAI.h:49
@ SELECT_TARGET_SINGLE_ENEMY
Definition: CreatureAI.h:45
@ SELECT_TARGET_SELF
Definition: CreatureAI.h:43
@ SELECT_TARGET_AOE_ENEMY
Definition: CreatureAI.h:46
@ SELECT_EFFECT_AURA
Definition: CreatureAI.h:60
@ SELECT_EFFECT_HEALING
Definition: CreatureAI.h:59
@ SELECT_EFFECT_DAMAGE
Definition: CreatureAI.h:58
struct TSpellSummary * SpellSummary
#define sSpellMgr
Definition: SpellMgr.h:818
#define MAX_SPELL_EFFECTS
Definition: DBCStructure.h:1610
@ SPELL_EFFECT_HEALTH_LEECH
Definition: SharedDefines.h:759
@ SPELL_EFFECT_HEAL
Definition: SharedDefines.h:760
@ SPELL_EFFECT_HEAL_MAX_HEALTH
Definition: SharedDefines.h:817
@ SPELL_EFFECT_HEAL_MECHANICAL
Definition: SharedDefines.h:825
@ SPELL_EFFECT_ENVIRONMENTAL_DAMAGE
Definition: SharedDefines.h:757
@ SPELL_EFFECT_SCHOOL_DAMAGE
Definition: SharedDefines.h:752
@ SPELL_EFFECT_INSTAKILL
Definition: SharedDefines.h:751
@ SPELL_EFFECT_APPLY_AURA
Definition: SharedDefines.h:756
Targets
Definition: SharedDefines.h:1381
@ TARGET_UNIT_TARGET_PARTY
Definition: SharedDefines.h:1411
@ TARGET_DEST_DYNOBJ_ENEMY
Definition: SharedDefines.h:1404
@ TARGET_UNIT_CASTER_AREA_PARTY
Definition: SharedDefines.h:1396
@ TARGET_UNIT_DEST_AREA_ENEMY
Definition: SharedDefines.h:1393
@ TARGET_UNIT_TARGET_ALLY
Definition: SharedDefines.h:1397
@ TARGET_UNIT_SRC_AREA_ENEMY
Definition: SharedDefines.h:1392
@ TARGET_DEST_TARGET_ENEMY
Definition: SharedDefines.h:1429
@ TARGET_UNIT_TARGET_ENEMY
Definition: SharedDefines.h:1387
@ TARGET_UNIT_LASTTARGET_AREA_PARTY
Definition: SharedDefines.h:1413
@ TARGET_UNIT_CASTER
Definition: SharedDefines.h:1382
@ TARGET_SRC_CASTER
Definition: SharedDefines.h:1398
static void FillAISpellInfo()
Definition: UnitAI.cpp:290
Definition: ScriptedCreature.cpp:31
uint8 Targets
Definition: ScriptedCreature.cpp:32
uint8 Effects
Definition: ScriptedCreature.cpp:33
Definition: SpellInfo.h:314
std::array< SpellEffectInfo, MAX_SPELL_EFFECTS > Effects
Definition: SpellInfo.h:391

References TSpellSummary::Effects, SpellInfo::Effects, UnitAI::FillAISpellInfo(), MAX_SPELL_EFFECTS, SELECT_EFFECT_AURA, SELECT_EFFECT_DAMAGE, SELECT_EFFECT_HEALING, SELECT_TARGET_ANY_ENEMY, SELECT_TARGET_ANY_FRIEND, SELECT_TARGET_AOE_ENEMY, SELECT_TARGET_AOE_FRIEND, SELECT_TARGET_SELF, SELECT_TARGET_SINGLE_ENEMY, SELECT_TARGET_SINGLE_FRIEND, SPELL_EFFECT_APPLY_AURA, SPELL_EFFECT_ENVIRONMENTAL_DAMAGE, SPELL_EFFECT_HEAL, SPELL_EFFECT_HEAL_MAX_HEALTH, SPELL_EFFECT_HEAL_MECHANICAL, SPELL_EFFECT_HEALTH_LEECH, SPELL_EFFECT_INSTAKILL, SPELL_EFFECT_SCHOOL_DAMAGE, SpellSummary, sSpellMgr, TARGET_DEST_DYNOBJ_ENEMY, TARGET_DEST_TARGET_ENEMY, TARGET_SRC_CASTER, TARGET_UNIT_CASTER, TARGET_UNIT_CASTER_AREA_PARTY, TARGET_UNIT_DEST_AREA_ENEMY, TARGET_UNIT_LASTTARGET_AREA_PARTY, TARGET_UNIT_SRC_AREA_ENEMY, TARGET_UNIT_TARGET_ALLY, TARGET_UNIT_TARGET_ENEMY, TARGET_UNIT_TARGET_PARTY, and TSpellSummary::Targets.

Referenced by LoadDatabase().

◆ GetChatCommands()

Acore::ChatCommands::ChatCommandTable ScriptMgr::GetChatCommands ( )
22{
24
25 for (auto const& [scriptID, script] : ScriptRegistry<CommandScript>::ScriptPointerList)
26 {
27 Acore::ChatCommands::ChatCommandTable cmds = script->GetCommands();
28 std::move(cmds.begin(), cmds.end(), std::back_inserter(table));
29 }
30
31 return table;
32}
std::vector< ChatCommandBuilder > ChatCommandTable
Definition: ChatCommand.h:50

◆ GetCreatureAI()

CreatureAI * ScriptMgr::GetCreatureAI ( Creature creature)
156{
157 ASSERT(creature);
158
159 auto retAI = GetReturnAIScript<AllCreatureScript, CreatureAI>([creature](AllCreatureScript* script)
160 {
161 return script->GetCreatureAI(creature);
162 });
163
164 if (retAI)
165 {
166 return retAI;
167 }
168
169 auto tempScript = ScriptRegistry<CreatureScript>::GetScriptById(creature->GetScriptId());
170 return tempScript ? tempScript->GetAI(creature) : nullptr;
171}
uint32 GetScriptId() const
Definition: Creature.cpp:2947
virtual CreatureAI * GetCreatureAI(Creature *) const
Definition: ScriptMgr.h:624

References ASSERT, AllCreatureScript::GetCreatureAI(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ GetCustomArenaPersonalRating()

void ScriptMgr::GetCustomArenaPersonalRating ( Player const *  player,
uint8  slot,
uint32 rating 
) const
562{
563 ExecuteScript<PlayerScript>([&](PlayerScript* script)
564 {
565 script->GetCustomArenaPersonalRating(player, slot, rating);
566 });
567}
virtual void GetCustomArenaPersonalRating(Player const *, uint8, uint32 &) const
Definition: ScriptMgr.h:1176

References PlayerScript::GetCustomArenaPersonalRating().

◆ GetCustomGetArenaTeamId()

void ScriptMgr::GetCustomGetArenaTeamId ( Player const *  player,
uint8  slot,
uint32 teamID 
) const
554{
555 ExecuteScript<PlayerScript>([&](PlayerScript* script)
556 {
557 script->GetCustomGetArenaTeamId(player, slot, teamID);
558 });
559}
virtual void GetCustomGetArenaTeamId(Player const *, uint8, uint32 &) const
Definition: ScriptMgr.h:1173

References PlayerScript::GetCustomGetArenaTeamId().

◆ GetDialogStatus() [1/3]

uint32 ScriptMgr::GetDialogStatus ( Player player,
Creature creature 
)
146{
147 ASSERT(player);
148 ASSERT(creature);
149
150 auto tempScript = ScriptRegistry<CreatureScript>::GetScriptById(creature->GetScriptId());
151 ClearGossipMenuFor(player);
152 return tempScript ? tempScript->GetDialogStatus(player, creature) : DIALOG_STATUS_SCRIPTED_NO_STATUS;
153}
void ClearGossipMenuFor(Player *player)
Definition: ScriptedGossip.cpp:22
@ DIALOG_STATUS_SCRIPTED_NO_STATUS
Definition: QuestDef.h:125

References ASSERT, ClearGossipMenuFor(), DIALOG_STATUS_SCRIPTED_NO_STATUS, ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ GetDialogStatus() [2/3]

uint32 ScriptMgr::GetDialogStatus ( Player player,
GameObject go 
)
124{
125 ASSERT(player);
126 ASSERT(go);
127
129 ClearGossipMenuFor(player);
130 return tempScript ? tempScript->GetDialogStatus(player, go) : DIALOG_STATUS_SCRIPTED_NO_STATUS;
131}
virtual uint32 GetScriptId() const
Definition: GameObject.cpp:2194

References ASSERT, ClearGossipMenuFor(), DIALOG_STATUS_SCRIPTED_NO_STATUS, ScriptRegistry< TScript >::GetScriptById(), and GameObject::GetScriptId().

◆ GetDialogStatus() [3/3]

void ScriptMgr::GetDialogStatus ( Player player,
Object questgiver 
)
179{
180 ExecuteScript<MiscScript>([&](MiscScript* script)
181 {
182 script->GetDialogStatus(player, questgiver);
183 });
184}
virtual void GetDialogStatus(Player *, Object *)
This hook called before get Quest Dialog Status.
Definition: ScriptMgr.h:1917

References MiscScript::GetDialogStatus().

◆ GetGameObjectAI()

GameObjectAI * ScriptMgr::GetGameObjectAI ( GameObject go)
209{
210 ASSERT(go);
211
212 auto retAI = GetReturnAIScript<AllGameObjectScript, GameObjectAI>([go](AllGameObjectScript* script)
213 {
214 return script->GetGameObjectAI(go);
215 });
216
217 if (retAI)
218 {
219 return retAI;
220 }
221
223 return tempScript ? tempScript->GetAI(go) : nullptr;
224}
Definition: ScriptMgr.h:656
virtual GameObjectAI * GetGameObjectAI(GameObject *) const
Definition: ScriptMgr.h:715

References ASSERT, AllGameObjectScript::GetGameObjectAI(), ScriptRegistry< TScript >::GetScriptById(), and GameObject::GetScriptId().

◆ GetScriptCount()

uint32 ScriptMgr::GetScriptCount ( ) const
inline
2059{ return _scriptCount; }

References _scriptCount.

Referenced by LoadDatabase().

◆ IfNormalReaction()

bool ScriptMgr::IfNormalReaction ( Unit const *  unit,
Unit const *  target,
ReputationRank repRank 
)
105{
106 auto ret = IsValidBoolScript<UnitScript>([&](UnitScript* script)
107 {
108 return !script->IfNormalReaction(unit, target, repRank);
109 });
110
111 if (ret && *ret)
112 {
113 return false;
114 }
115
116 return true;
117}
virtual bool IfNormalReaction(Unit const *, Unit const *, ReputationRank &)
Definition: ScriptMgr.h:446

References UnitScript::IfNormalReaction().

◆ IncreaseScheduledScriptsCount()

uint32 ScriptMgr::IncreaseScheduledScriptsCount ( )
inline
2441{ return ++_scheduledScripts; }

References _scheduledScripts.

◆ IncrementScriptCount()

void ScriptMgr::IncrementScriptCount ( )
inline
2058{ ++_scriptCount; }

References _scriptCount.

◆ Initialize()

void ScriptMgr::Initialize ( )
60{
61 LOG_INFO("server.loading", "> Loading C++ scripts");
62 LOG_INFO("server.loading", " ");
63
65
67 "Script loader callback wasn't registered!");
68
70 "Modules loader callback wasn't registered!");
71
74}
#define LOG_INFO(filterType__,...)
Definition: Log.h:167
void AddSC_SmartScripts()
Registers scripts required by the SAI scripting system.
Definition: SmartAI.cpp:1278

References _modules_loader_callback, _script_loader_callback, AddSC_SmartScripts(), ASSERT, and LOG_INFO.

◆ instance()

ScriptMgr * ScriptMgr::instance ( )
static
54{
55 static ScriptMgr instance;
56 return &instance;
57}
Definition: ScriptMgr.h:2042

References instance().

Referenced by CanEnterMap(), instance(), and OnBeforeSetBossState().

◆ IsCheckNormalMatch()

bool ScriptMgr::IsCheckNormalMatch ( BattlegroundQueue queue,
Battleground bgTemplate,
BattlegroundBracketId  bracket_id,
uint32  minPlayers,
uint32  maxPlayers 
)
90{
91 auto ret = IsValidBoolScript<BGScript>([&](BGScript* script)
92 {
93 return script->IsCheckNormalMatch(queue, bgTemplate, bracket_id, minPlayers, maxPlayers);
94 });
95
96 return ReturnValidBool(ret, true);
97}
virtual bool IsCheckNormalMatch(BattlegroundQueue *, Battleground *, BattlegroundBracketId, uint32, uint32)
Definition: ScriptMgr.h:1643

References BGScript::IsCheckNormalMatch(), and ReturnValidBool().

◆ IsCompletedCriteria()

bool ScriptMgr::IsCompletedCriteria ( AchievementMgr mgr,
AchievementCriteriaEntry const *  achievementCriteria,
AchievementEntry const *  achievement,
CriteriaProgress const *  progress 
)
30{
31 auto ret = IsValidBoolScript<AchievementScript>([&](AchievementScript* script)
32 {
33 return !script->IsCompletedCriteria(mgr, achievementCriteria, achievement, progress);
34 });
35
36 if (ret && *ret)
37 {
38 return false;
39 }
40
41 return true;
42}
virtual bool IsCompletedCriteria(AchievementMgr *, AchievementCriteriaEntry const *, AchievementEntry const *, CriteriaProgress const *)
Definition: ScriptMgr.h:1813

References AchievementScript::IsCompletedCriteria().

◆ IsCustomBuildValuesUpdate()

bool ScriptMgr::IsCustomBuildValuesUpdate ( Unit const *  unit,
uint8  updateType,
ByteBuffer fieldBuffer,
Player const *  target,
uint16  index 
)
180{
181 auto ret = IsValidBoolScript<UnitScript>([&](UnitScript* script)
182 {
183 return script->IsCustomBuildValuesUpdate(unit, updateType, fieldBuffer, target, index);
184 });
185
186 if (ret && *ret)
187 {
188 return true;
189 }
190
191 return false;
192}
virtual bool IsCustomBuildValuesUpdate(Unit const *, uint8, ByteBuffer &, Player const *, uint16)
Definition: ScriptMgr.h:456

References UnitScript::IsCustomBuildValuesUpdate().

◆ IsNeedModHealPercent()

bool ScriptMgr::IsNeedModHealPercent ( Unit const *  unit,
AuraEffect auraEff,
float &  doneTotalMod,
SpellInfo const *  spellProto 
)
150{
151 auto ret = IsValidBoolScript<UnitScript>([&](UnitScript* script)
152 {
153 return !script->IsNeedModHealPercent(unit, auraEff, doneTotalMod, spellProto);
154 });
155
156 if (ret && *ret)
157 {
158 return false;
159 }
160
161 return true;
162}
virtual bool IsNeedModHealPercent(Unit const *, AuraEffect *, float &, SpellInfo const *)
Definition: ScriptMgr.h:452

References UnitScript::IsNeedModHealPercent().

◆ IsNeedModMeleeDamagePercent()

bool ScriptMgr::IsNeedModMeleeDamagePercent ( Unit const *  unit,
AuraEffect auraEff,
float &  doneTotalMod,
SpellInfo const *  spellProto 
)
135{
136 auto ret = IsValidBoolScript<UnitScript>([&](UnitScript* script)
137 {
138 return !script->IsNeedModMeleeDamagePercent(unit, auraEff, doneTotalMod, spellProto);
139 });
140
141 if (ret && *ret)
142 {
143 return false;
144 }
145
146 return true;
147}
virtual bool IsNeedModMeleeDamagePercent(Unit const *, AuraEffect *, float &, SpellInfo const *)
Definition: ScriptMgr.h:450

References UnitScript::IsNeedModMeleeDamagePercent().

◆ IsNeedModSpellDamagePercent()

bool ScriptMgr::IsNeedModSpellDamagePercent ( Unit const *  unit,
AuraEffect auraEff,
float &  doneTotalMod,
SpellInfo const *  spellProto 
)
120{
121 auto ret = IsValidBoolScript<UnitScript>([&](UnitScript* script)
122 {
123 return !script->IsNeedModSpellDamagePercent(unit, auraEff, doneTotalMod, spellProto);
124 });
125
126 if (ret && *ret)
127 {
128 return false;
129 }
130
131 return true;
132}
virtual bool IsNeedModSpellDamagePercent(Unit const *, AuraEffect *, float &, SpellInfo const *)
Definition: ScriptMgr.h:448

References UnitScript::IsNeedModSpellDamagePercent().

◆ IsRealmCompleted()

bool ScriptMgr::IsRealmCompleted ( AchievementGlobalMgr const *  globalmgr,
AchievementEntry const *  achievement,
std::chrono::system_clock::time_point  completionTime 
)
45{
46 auto ret = IsValidBoolScript<AchievementScript>([&](AchievementScript* script)
47 {
48 return !script->IsRealmCompleted(globalmgr, achievement, completionTime);
49 });
50
51 if (ret && *ret)
52 {
53 return false;
54 }
55
56 return true;
57}
virtual bool IsRealmCompleted(AchievementGlobalMgr const *, AchievementEntry const *, SystemTimePoint)
Definition: ScriptMgr.h:1815

References AchievementScript::IsRealmCompleted().

◆ IsScriptScheduled()

bool ScriptMgr::IsScriptScheduled ( ) const
inline
2444{ return _scheduledScripts > 0; }

References _scheduledScripts.

◆ LoadDatabase()

void ScriptMgr::LoadDatabase ( )
129{
130 uint32 oldMSTime = getMSTime();
131
132 sScriptSystemMgr->LoadScriptWaypoints();
133
134 // Add all scripts that must be loaded after db/maps
149
151
153
154 LOG_INFO("server.loading", ">> Loaded {} C++ scripts in {} ms", GetScriptCount(), GetMSTimeDiffToNow(oldMSTime));
155 LOG_INFO("server.loading", " ");
156}
uint32 GetMSTimeDiffToNow(uint32 oldMSTime)
Definition: Timer.h:131
uint32 getMSTime()
Definition: Timer.h:103
#define sScriptSystemMgr
Definition: ScriptSystem.h:91
void FillSpellSummary()
Definition: ScriptMgr.cpp:204
uint32 GetScriptCount() const
Definition: ScriptMgr.h:2059
void CheckIfScriptsInDatabaseExist()
Definition: ScriptMgr.cpp:158
static void AddALScripts()
Definition: ScriptMgr.h:2741

References ScriptRegistry< TScript >::AddALScripts(), CheckIfScriptsInDatabaseExist(), FillSpellSummary(), getMSTime(), GetMSTimeDiffToNow(), GetScriptCount(), LOG_INFO, and sScriptSystemMgr.

◆ ModifyHealReceived()

void ScriptMgr::ModifyHealReceived ( Unit target,
Unit healer,
uint32 addHealth,
SpellInfo const *  spellInfo 
)
81{
82 ExecuteScript<UnitScript>([&](UnitScript* script)
83 {
84 script->ModifyHealReceived(target, healer, heal, spellInfo);
85 });
86}
virtual void ModifyHealReceived(Unit *, Unit *, uint32 &, SpellInfo const *)
Definition: ScriptMgr.h:435

References UnitScript::ModifyHealReceived().

◆ ModifyMeleeDamage()

void ScriptMgr::ModifyMeleeDamage ( Unit target,
Unit attacker,
uint32 damage 
)
65{
66 ExecuteScript<UnitScript>([&](UnitScript* script)
67 {
68 script->ModifyMeleeDamage(target, attacker, damage);
69 });
70}
virtual void ModifyMeleeDamage(Unit *, Unit *, uint32 &)
Definition: ScriptMgr.h:429

References UnitScript::ModifyMeleeDamage().

◆ ModifyPeriodicDamageAurasTick()

void ScriptMgr::ModifyPeriodicDamageAurasTick ( Unit target,
Unit attacker,
uint32 damage,
SpellInfo const *  spellInfo 
)
57{
58 ExecuteScript<UnitScript>([&](UnitScript* script)
59 {
60 script->ModifyPeriodicDamageAurasTick(target, attacker, damage, spellInfo);
61 });
62}
virtual void ModifyPeriodicDamageAurasTick(Unit *, Unit *, uint32 &, SpellInfo const *)
Definition: ScriptMgr.h:426

References UnitScript::ModifyPeriodicDamageAurasTick().

◆ ModifySpellDamageTaken()

void ScriptMgr::ModifySpellDamageTaken ( Unit target,
Unit attacker,
int32 damage,
SpellInfo const *  spellInfo 
)
73{
74 ExecuteScript<UnitScript>([&](UnitScript* script)
75 {
76 script->ModifySpellDamageTaken(target, attacker, damage, spellInfo);
77 });
78}
virtual void ModifySpellDamageTaken(Unit *, Unit *, int32 &, SpellInfo const *)
Definition: ScriptMgr.h:432

References UnitScript::ModifySpellDamageTaken().

◆ NotAvoidSatisfy()

bool ScriptMgr::NotAvoidSatisfy ( Player player,
DungeonProgressionRequirements const *  ar,
uint32  target_map,
bool  report 
)
1237{
1238 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1239 {
1240 return !script->NotAvoidSatisfy(player, ar, target_map, report);
1241 });
1242
1243 if (ret && *ret)
1244 {
1245 return false;
1246 }
1247
1248 return true;
1249}
virtual bool NotAvoidSatisfy(Player *, DungeonProgressionRequirements const *, uint32, bool)
Definition: ScriptMgr.h:1315

References PlayerScript::NotAvoidSatisfy().

◆ NotSetArenaTeamInfoField()

bool ScriptMgr::NotSetArenaTeamInfoField ( Player player,
uint8  slot,
ArenaTeamInfoType  type,
uint32  value 
)
1316{
1317 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1318 {
1319 return !script->NotSetArenaTeamInfoField(player, slot, type, value);
1320 });
1321
1322 if (ret && *ret)
1323 {
1324 return false;
1325 }
1326
1327 return true;
1328}
virtual bool NotSetArenaTeamInfoField(Player *, uint8, ArenaTeamInfoType, uint32)
Definition: ScriptMgr.h:1332

References PlayerScript::NotSetArenaTeamInfoField().

◆ NotVisibleGloballyFor()

bool ScriptMgr::NotVisibleGloballyFor ( Player player,
Player const *  u 
)
1252{
1253 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1254 {
1255 return !script->NotVisibleGloballyFor(player, u);
1256 });
1257
1258 if (ret && *ret)
1259 {
1260 return false;
1261 }
1262
1263 return true;
1264}
virtual bool NotVisibleGloballyFor(Player *, Player const *)
Definition: ScriptMgr.h:1317

References PlayerScript::NotVisibleGloballyFor().

◆ OnAccountLogin()

void ScriptMgr::OnAccountLogin ( uint32  accountId)
22{
23 ExecuteScript<AccountScript>([&](AccountScript* script)
24 {
25 script->OnAccountLogin(accountId);
26 });
27}
virtual void OnAccountLogin(uint32)
Definition: ScriptMgr.h:1464

References AccountScript::OnAccountLogin().

◆ OnAchievementComplete()

void ScriptMgr::OnAchievementComplete ( Player player,
AchievementEntry const *  achievement 
)
459{
460 ExecuteScript<PlayerScript>([&](PlayerScript* script)
461 {
462 script->OnAchiComplete(player, achievement);
463 });
464}
virtual void OnAchiComplete(Player *, AchievementEntry const *)
Definition: ScriptMgr.h:1131

References PlayerScript::OnAchiComplete().

◆ OnAchievementSave()

void ScriptMgr::OnAchievementSave ( CharacterDatabaseTransaction  trans,
Player player,
uint16  achiId,
CompletedAchievementData  achiData 
)
490{
491 ExecuteScript<PlayerScript>([&](PlayerScript* script)
492 {
493 script->OnAchiSave(trans, player, achiId, achiData);
494 });
495}
virtual void OnAchiSave(CharacterDatabaseTransaction, Player *, uint16, CompletedAchievementData)
Definition: ScriptMgr.h:1143

References PlayerScript::OnAchiSave().

◆ OnAddCreaturePassenger()

void ScriptMgr::OnAddCreaturePassenger ( Transport transport,
Creature creature 
)
33{
34 ASSERT(transport);
35 ASSERT(creature);
36
37 if (auto tempScript = ScriptRegistry<TransportScript>::GetScriptById(transport->GetScriptId()))
38 {
39 tempScript->OnAddCreaturePassenger(transport, creature);
40 }
41}

References ASSERT, and GameObject::GetScriptId().

◆ OnAddGroup()

void ScriptMgr::OnAddGroup ( BattlegroundQueue queue,
GroupQueueInfo ginfo,
uint32 index,
Player leader,
Group group,
BattlegroundTypeId  bgTypeId,
PvPDifficultyEntry const *  bracketEntry,
uint8  arenaType,
bool  isRated,
bool  isPremade,
uint32  arenaRating,
uint32  matchmakerRating,
uint32  arenaTeamId,
uint32  opponentsArenaTeamId 
)
71{
72 ExecuteScript<BGScript>([&](BGScript* script)
73 {
74 script->OnAddGroup(queue, ginfo, index, leader, group, bgTypeId, bracketEntry,
75 arenaType, isRated, isPremade, arenaRating, matchmakerRating, arenaTeamId, opponentsArenaTeamId);
76 });
77}
virtual void OnAddGroup(BattlegroundQueue *, GroupQueueInfo *, uint32 &, Player *, Group *, BattlegroundTypeId, PvPDifficultyEntry const *, uint8, bool, bool, uint32, uint32, uint32, uint32)
Definition: ScriptMgr.h:1638

References BGScript::OnAddGroup().

◆ OnAddPassenger() [1/2]

void ScriptMgr::OnAddPassenger ( Transport transport,
Player player 
)
22{
23 ASSERT(transport);
24 ASSERT(player);
25
26 if (auto tempScript = ScriptRegistry<TransportScript>::GetScriptById(transport->GetScriptId()))
27 {
28 tempScript->OnAddPassenger(transport, player);
29 }
30}

References ASSERT, and GameObject::GetScriptId().

◆ OnAddPassenger() [2/2]

void ScriptMgr::OnAddPassenger ( Vehicle veh,
Unit passenger,
int8  seatId 
)
67{
68 ASSERT(veh);
69 ASSERT(veh->GetBase()->GetTypeId() == TYPEID_UNIT);
70 ASSERT(passenger);
71
73 {
74 tempScript->OnAddPassenger(veh, passenger, seatId);
75 }
76}
@ TYPEID_UNIT
Definition: ObjectGuid.h:37
TypeID GetTypeId() const
Definition: Object.h:121
Creature * ToCreature()
Definition: Object.h:197
Unit * GetBase() const
May be called from scripts.
Definition: Vehicle.h:39

References ASSERT, Vehicle::GetBase(), Creature::GetScriptId(), Object::GetTypeId(), Object::ToCreature(), and TYPEID_UNIT.

◆ OnAfterArenaRatingCalculation()

void ScriptMgr::OnAfterArenaRatingCalculation ( Battleground *const  bg,
int32 winnerMatchmakerChange,
int32 loserMatchmakerChange,
int32 winnerChange,
int32 loserChange 
)
81{
82 ExecuteScript<FormulaScript>([&](FormulaScript* script)
83 {
84 script->OnAfterArenaRatingCalculation(bg, winnerMatchmakerChange, loserMatchmakerChange, winnerChange, loserChange);
85 });
86}
Definition: ScriptMgr.h:250
virtual void OnAfterArenaRatingCalculation(Battleground *const, int32 &, int32 &, int32 &, int32 &)
Definition: ScriptMgr.h:277

References FormulaScript::OnAfterArenaRatingCalculation().

◆ OnAfterConfigLoad()

void ScriptMgr::OnAfterConfigLoad ( bool  reload)
46{
47 ExecuteScript<WorldScript>([&](WorldScript* script)
48 {
49 script->OnAfterConfigLoad(reload);
50 });
51}
Definition: ScriptMgr.h:196
virtual void OnAfterConfigLoad(bool)
Definition: ScriptMgr.h:205

References WorldScript::OnAfterConfigLoad().

◆ OnAfterDatabasesLoaded()

void ScriptMgr::OnAfterDatabasesLoaded ( uint32  updateFlags)
22{
23 ExecuteScript<DatabaseScript>([&](DatabaseScript* script)
24 {
25 script->OnAfterDatabasesLoaded(updateFlags);
26 });
27}
Definition: ScriptMgr.h:1942
virtual void OnAfterDatabasesLoaded(uint32)
Definition: ScriptMgr.h:1951

References DatabaseScript::OnAfterDatabasesLoaded().

◆ OnAfterGuardianInitStatsForLevel()

void ScriptMgr::OnAfterGuardianInitStatsForLevel ( Player player,
Guardian guardian 
)
695{
696 ExecuteScript<PlayerScript>([&](PlayerScript* script)
697 {
698 script->OnAfterGuardianInitStatsForLevel(player, guardian);
699 });
700}
virtual void OnAfterGuardianInitStatsForLevel(Player *, Guardian *)
Definition: ScriptMgr.h:1240

References PlayerScript::OnAfterGuardianInitStatsForLevel().

◆ OnAfterInitializeLockedDungeons()

void ScriptMgr::OnAfterInitializeLockedDungeons ( Player player)
105{
106 ExecuteScript<GlobalScript>([&](GlobalScript* script)
107 {
108 script->OnAfterInitializeLockedDungeons(player);
109 });
110}
Definition: ScriptMgr.h:1561
virtual void OnAfterInitializeLockedDungeons(Player *)
Definition: ScriptMgr.h:1576

References GlobalScript::OnAfterInitializeLockedDungeons().

◆ OnAfterLootTemplateProcess()

void ScriptMgr::OnAfterLootTemplateProcess ( Loot loot,
LootTemplate const *  tab,
LootStore const &  store,
Player lootOwner,
bool  personal,
bool  noEmptyError,
uint16  lootMode 
)
155{
156 ExecuteScript<MiscScript>([&](MiscScript* script)
157 {
158 script->OnAfterLootTemplateProcess(loot, tab, store, lootOwner, personal, noEmptyError, lootMode);
159 });
160}
virtual void OnAfterLootTemplateProcess(Loot *, LootTemplate const *, LootStore const &, Player *, bool, bool, uint16)
Definition: ScriptMgr.h:1905

References MiscScript::OnAfterLootTemplateProcess().

◆ OnAfterPlayerMoveItemFromInventory()

void ScriptMgr::OnAfterPlayerMoveItemFromInventory ( Player player,
Item it,
uint8  bag,
uint8  slot,
bool  update 
)
522{
523 ExecuteScript<PlayerScript>([&](PlayerScript* script)
524 {
525 script->OnAfterMoveItemFromInventory(player, it, bag, slot, update);
526 });
527}
virtual void OnAfterMoveItemFromInventory(Player *, Item *, uint8, uint8, bool)
Definition: ScriptMgr.h:1161

References PlayerScript::OnAfterMoveItemFromInventory().

◆ OnAfterPlayerSetVisibleItemSlot()

void ScriptMgr::OnAfterPlayerSetVisibleItemSlot ( Player player,
uint8  slot,
Item item 
)
514{
515 ExecuteScript<PlayerScript>([&](PlayerScript* script)
516 {
517 script->OnAfterSetVisibleItemSlot(player, slot, item);
518 });
519}
virtual void OnAfterSetVisibleItemSlot(Player *, uint8, Item *)
Definition: ScriptMgr.h:1158

References PlayerScript::OnAfterSetVisibleItemSlot().

◆ OnAfterRefCount()

void ScriptMgr::OnAfterRefCount ( Player const *  player,
Loot loot,
bool  canRate,
uint16  lootMode,
LootStoreItem LootStoreItem,
uint32 maxcount,
LootStore const &  store 
)
51{
52 ExecuteScript<GlobalScript>([&](GlobalScript* script)
53 {
54 script->OnAfterRefCount(player, LootStoreItem, loot, canRate, lootMode, maxcount, store);
55 });
56}
Definition: LootMgr.h:129
virtual void OnAfterRefCount(Player const *, LootStoreItem *, Loot &, bool, uint16, uint32 &, LootStore const &)
Definition: ScriptMgr.h:1571

References GlobalScript::OnAfterRefCount().

◆ OnAfterStoreOrEquipNewItem()

void ScriptMgr::OnAfterStoreOrEquipNewItem ( Player player,
uint32  vendorslot,
Item item,
uint8  count,
uint8  bag,
uint8  slot,
ItemTemplate const *  pProto,
Creature pVendor,
VendorItem const *  crItem,
bool  bStore 
)
719{
720 ExecuteScript<PlayerScript>([&](PlayerScript* script)
721 {
722 script->OnAfterStoreOrEquipNewItem(player, vendorslot, item, count, bag, slot, pProto, pVendor, crItem, bStore);
723 });
724}
virtual void OnAfterStoreOrEquipNewItem(Player *, uint32, Item *, uint8, uint8, uint8, ItemTemplate const *, Creature *, VendorItem const *, bool)
Definition: ScriptMgr.h:1215

References PlayerScript::OnAfterStoreOrEquipNewItem().

◆ OnAfterUnloadAllMaps()

void ScriptMgr::OnAfterUnloadAllMaps ( )
118{
119 ExecuteScript<WorldScript>([](WorldScript* script)
120 {
121 script->OnAfterUnloadAllMaps();
122 });
123}
virtual void OnAfterUnloadAllMaps()
Called after all maps are unloaded from core.
Definition: ScriptMgr.h:234

References WorldScript::OnAfterUnloadAllMaps().

◆ OnAfterUpdateAttackPowerAndDamage()

void ScriptMgr::OnAfterUpdateAttackPowerAndDamage ( Player player,
float &  level,
float &  base_attPower,
float &  attPowerMod,
float &  attPowerMultiplier,
bool  ranged 
)
751{
752 ExecuteScript<PlayerScript>([&](PlayerScript* script)
753 {
754 script->OnAfterUpdateAttackPowerAndDamage(player, level, base_attPower, attPowerMod, attPowerMultiplier, ranged);
755 });
756}
virtual void OnAfterUpdateAttackPowerAndDamage(Player *, float &, float &, float &, float &, bool)
Definition: ScriptMgr.h:1222

References PlayerScript::OnAfterUpdateAttackPowerAndDamage().

◆ OnAfterUpdateEncounterState()

void ScriptMgr::OnAfterUpdateEncounterState ( Map map,
EncounterCreditType  type,
uint32  creditEntry,
Unit source,
Difficulty  difficulty_fixed,
DungeonEncounterList const *  encounters,
uint32  dungeonCompleted,
bool  updated 
)
113{
114 ExecuteScript<GlobalScript>([&](GlobalScript* script)
115 {
116 script->OnAfterUpdateEncounterState(map, type, creditEntry, source, difficulty_fixed, encounters, dungeonCompleted, updated);
117 });
118}
virtual void OnAfterUpdateEncounterState(Map *, EncounterCreditType, uint32, Unit *, Difficulty, DungeonEncounterList const *, uint32, bool)
Definition: ScriptMgr.h:1582

References GlobalScript::OnAfterUpdateEncounterState().

◆ OnAfterUpdateMaxHealth()

void ScriptMgr::OnAfterUpdateMaxHealth ( Player player,
float &  value 
)
735{
736 ExecuteScript<PlayerScript>([&](PlayerScript* script)
737 {
738 script->OnAfterUpdateMaxHealth(player, value);
739 });
740}
virtual void OnAfterUpdateMaxHealth(Player *, float &)
Definition: ScriptMgr.h:1219

References PlayerScript::OnAfterUpdateMaxHealth().

◆ OnAfterUpdateMaxPower()

void ScriptMgr::OnAfterUpdateMaxPower ( Player player,
Powers power,
float &  value 
)
727{
728 ExecuteScript<PlayerScript>([&](PlayerScript* script)
729 {
730 script->OnAfterUpdateMaxPower(player, power, value);
731 });
732}
virtual void OnAfterUpdateMaxPower(Player *, Powers &, float &)
Definition: ScriptMgr.h:1217

References PlayerScript::OnAfterUpdateMaxPower().

◆ OnAllowedForPlayerLootCheck()

bool ScriptMgr::OnAllowedForPlayerLootCheck ( Player const *  player,
ObjectGuid  source 
)
167{
168 auto ret = IsValidBoolScript<GlobalScript>([&](GlobalScript* script)
169 {
170 return script->OnAllowedForPlayerLootCheck(player, source);
171 });
172
173 if (ret && *ret)
174 {
175 return false;
176 }
177
178 return true;
179}
virtual bool OnAllowedForPlayerLootCheck(Player const *, ObjectGuid)
Definition: ScriptMgr.h:1597

References GlobalScript::OnAllowedForPlayerLootCheck().

◆ OnApplyAmmoBonuses()

void ScriptMgr::OnApplyAmmoBonuses ( Player player,
ItemTemplate const *  proto,
float &  currentAmmoDPS 
)
1116{
1117 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1118 {
1119 script->OnApplyAmmoBonuses(player, proto, currentAmmoDPS);
1120 });
1121}
virtual void OnApplyAmmoBonuses(Player *, ItemTemplate const *, float &)
Definition: ScriptMgr.h:1297

References PlayerScript::OnApplyAmmoBonuses().

◆ OnAreaTrigger()

bool ScriptMgr::OnAreaTrigger ( Player player,
AreaTrigger const *  trigger 
)
22{
23 ASSERT(player);
24 ASSERT(trigger);
25
26 auto ret = IsValidBoolScript<ElunaScript>([&](ElunaScript* script)
27 {
28 return script->CanAreaTrigger(player, trigger);
29 });
30
31 if (ret && *ret)
32 {
33 return false;
34 }
35
36 auto tempScript = ScriptRegistry<AreaTriggerScript>::GetScriptById(sObjectMgr->GetAreaTriggerScriptId(trigger->entry));
37 return tempScript ? tempScript->OnTrigger(player, trigger) : false;
38}
Definition: ScriptMgr.h:2021
virtual bool CanAreaTrigger(Player *, AreaTrigger const *)
Definition: ScriptMgr.h:2037

References ASSERT, ElunaScript::CanAreaTrigger(), AreaTrigger::entry, ScriptRegistry< TScript >::GetScriptById(), and sObjectMgr.

◆ OnArenaQueueIdToArenaType()

void ScriptMgr::OnArenaQueueIdToArenaType ( const BattlegroundQueueTypeId  bgQueueTypeId,
uint8 ArenaType 
)
46{
47 ExecuteScript<ArenaTeamScript>([&](ArenaTeamScript* script)
48 {
49 script->OnQueueIdToArenaType(bgQueueTypeId, ArenaType);
50 });
51}
ArenaType
Definition: Battleground.h:211
Definition: ScriptMgr.h:1692
virtual void OnQueueIdToArenaType(const BattlegroundQueueTypeId, uint8 &)
Definition: ScriptMgr.h:1702

References ArenaTeamScript::OnQueueIdToArenaType().

◆ OnArenaTypeIDToQueueID()

void ScriptMgr::OnArenaTypeIDToQueueID ( const BattlegroundTypeId  bgTypeId,
const uint8  arenaType,
uint32 queueTypeID 
)
38{
39 ExecuteScript<ArenaTeamScript>([&](ArenaTeamScript* script)
40 {
41 script->OnTypeIDToQueueID(bgTypeId, arenaType, queueTypeID);
42 });
43}
virtual void OnTypeIDToQueueID(const BattlegroundTypeId, const uint8, uint32 &)
Definition: ScriptMgr.h:1701

References ArenaTeamScript::OnTypeIDToQueueID().

◆ OnAuctionAdd()

void ScriptMgr::OnAuctionAdd ( AuctionHouseObject ah,
AuctionEntry entry 
)
22{
23 ASSERT(ah);
24 ASSERT(entry);
25
26 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
27 {
28 script->OnAuctionAdd(ah, entry);
29 });
30}
Definition: ScriptMgr.h:872
virtual void OnAuctionAdd(AuctionHouseObject *, AuctionEntry *)
Definition: ScriptMgr.h:878

References ASSERT, and AuctionHouseScript::OnAuctionAdd().

◆ OnAuctionExpire()

void ScriptMgr::OnAuctionExpire ( AuctionHouseObject ah,
AuctionEntry entry 
)
55{
56 ASSERT(ah);
57 ASSERT(entry);
58
59 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
60 {
61 script->OnAuctionExpire(ah, entry);
62 });
63}
virtual void OnAuctionExpire(AuctionHouseObject *, AuctionEntry *)
Definition: ScriptMgr.h:887

References ASSERT, and AuctionHouseScript::OnAuctionExpire().

◆ OnAuctionRemove()

void ScriptMgr::OnAuctionRemove ( AuctionHouseObject ah,
AuctionEntry entry 
)
33{
34 ASSERT(ah);
35 ASSERT(entry);
36
37 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
38 {
39 script->OnAuctionRemove(ah, entry);
40 });
41}
virtual void OnAuctionRemove(AuctionHouseObject *, AuctionEntry *)
Definition: ScriptMgr.h:881

References ASSERT, and AuctionHouseScript::OnAuctionRemove().

◆ OnAuctionSuccessful()

void ScriptMgr::OnAuctionSuccessful ( AuctionHouseObject ah,
AuctionEntry entry 
)
44{
45 ASSERT(ah);
46 ASSERT(entry);
47
48 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
49 {
50 script->OnAuctionSuccessful(ah, entry);
51 });
52}
virtual void OnAuctionSuccessful(AuctionHouseObject *, AuctionEntry *)
Definition: ScriptMgr.h:884

References ASSERT, and AuctionHouseScript::OnAuctionSuccessful().

◆ OnAuraApply()

void ScriptMgr::OnAuraApply ( Unit unit,
Aura aura 
)
247{
248 ExecuteScript<UnitScript>([&](UnitScript* script)
249 {
250 script->OnAuraApply(unit, aura);
251 });
252}
virtual void OnAuraApply(Unit *, Aura *)
Definition: ScriptMgr.h:442

References UnitScript::OnAuraApply().

◆ OnAuraRemove()

void ScriptMgr::OnAuraRemove ( Unit unit,
AuraApplication aurApp,
AuraRemoveMode  mode 
)
97{
98 ExecuteScript<UnitScript>([&](UnitScript* script)
99 {
100 script->OnAuraRemove(unit, aurApp, mode);
101 });
102}
virtual void OnAuraRemove(Unit *, AuraApplication *, AuraRemoveMode)
Definition: ScriptMgr.h:444

References UnitScript::OnAuraRemove().

◆ OnBaseGainCalculation()

void ScriptMgr::OnBaseGainCalculation ( uint32 gain,
uint8  playerLevel,
uint8  mobLevel,
ContentLevels  content 
)
54{
55 ExecuteScript<FormulaScript>([&](FormulaScript* script)
56 {
57 script->OnBaseGainCalculation(gain, playerLevel, mobLevel, content);
58 });
59}
virtual void OnBaseGainCalculation(uint32 &, uint8, uint8, ContentLevels)
Definition: ScriptMgr.h:268

References FormulaScript::OnBaseGainCalculation().

◆ OnBattlegroundAddPlayer()

void ScriptMgr::OnBattlegroundAddPlayer ( Battleground bg,
Player player 
)
46{
47 ExecuteScript<BGScript>([&](BGScript* script)
48 {
49 script->OnBattlegroundAddPlayer(bg, player);
50 });
51}
virtual void OnBattlegroundAddPlayer(Battleground *, Player *)
Definition: ScriptMgr.h:1628

References BGScript::OnBattlegroundAddPlayer().

◆ OnBattlegroundBeforeAddPlayer()

void ScriptMgr::OnBattlegroundBeforeAddPlayer ( Battleground bg,
Player player 
)
54{
55 ExecuteScript<BGScript>([&](BGScript* script)
56 {
57 script->OnBattlegroundBeforeAddPlayer(bg, player);
58 });
59}
virtual void OnBattlegroundBeforeAddPlayer(Battleground *, Player *)
Definition: ScriptMgr.h:1631

References BGScript::OnBattlegroundBeforeAddPlayer().

◆ OnBattlegroundCreate()

void ScriptMgr::OnBattlegroundCreate ( Battleground bg)
154{
155 ExecuteScript<BGScript>([&](BGScript* script)
156 {
157 script->OnBattlegroundCreate(bg);
158 });
159}
virtual void OnBattlegroundCreate(Battleground *)
This hook runs after Battleground create.
Definition: ScriptMgr.h:1688

References BGScript::OnBattlegroundCreate().

◆ OnBattlegroundDesertion()

void ScriptMgr::OnBattlegroundDesertion ( Player player,
BattlegroundDesertionType const  desertionType 
)
62{
63 ExecuteScript<PlayerScript>([&](PlayerScript* script)
64 {
65 script->OnBattlegroundDesertion(player, desertionType);
66 });
67}
virtual void OnBattlegroundDesertion(Player *, BattlegroundDesertionType const)
Definition: ScriptMgr.h:998

References PlayerScript::OnBattlegroundDesertion().

◆ OnBattlegroundDestroy()

void ScriptMgr::OnBattlegroundDestroy ( Battleground bg)
146{
147 ExecuteScript<BGScript>([&](BGScript* script)
148 {
149 script->OnBattlegroundDestroy(bg);
150 });
151}
virtual void OnBattlegroundDestroy(Battleground *)
This hook runs before Battleground destroy.
Definition: ScriptMgr.h:1681

References BGScript::OnBattlegroundDestroy().

◆ OnBattlegroundEnd()

void ScriptMgr::OnBattlegroundEnd ( Battleground bg,
TeamId  winnerTeamId 
)
138{
139 ExecuteScript<BGScript>([&](BGScript* script)
140 {
141 script->OnBattlegroundEnd(bg, winnerTeam);
142 });
143}
virtual void OnBattlegroundEnd(Battleground *, TeamId)
This hook runs after end Battleground.
Definition: ScriptMgr.h:1674

References BGScript::OnBattlegroundEnd().

◆ OnBattlegroundEndReward()

void ScriptMgr::OnBattlegroundEndReward ( Battleground bg,
Player player,
TeamId  winnerTeamId 
)
30{
31 ExecuteScript<BGScript>([&](BGScript* script)
32 {
33 script->OnBattlegroundEndReward(bg, player, winnerTeamId);
34 });
35}
virtual void OnBattlegroundEndReward(Battleground *, Player *, TeamId)
Definition: ScriptMgr.h:1622

References BGScript::OnBattlegroundEndReward().

◆ OnBattlegroundRemovePlayerAtLeave()

void ScriptMgr::OnBattlegroundRemovePlayerAtLeave ( Battleground bg,
Player player 
)
62{
63 ExecuteScript<BGScript>([&](BGScript* script)
64 {
65 script->OnBattlegroundRemovePlayerAtLeave(bg, player);
66 });
67}
virtual void OnBattlegroundRemovePlayerAtLeave(Battleground *, Player *)
Definition: ScriptMgr.h:1634

References BGScript::OnBattlegroundRemovePlayerAtLeave().

◆ OnBattlegroundStart()

void ScriptMgr::OnBattlegroundStart ( Battleground bg)
22{
23 ExecuteScript<BGScript>([&](BGScript* script)
24 {
25 script->OnBattlegroundStart(bg);
26 });
27}
virtual void OnBattlegroundStart(Battleground *)
This hook runs before start Battleground.
Definition: ScriptMgr.h:1619

References BGScript::OnBattlegroundStart().

◆ OnBattlegroundUpdate()

void ScriptMgr::OnBattlegroundUpdate ( Battleground bg,
uint32  diff 
)
38{
39 ExecuteScript<BGScript>([&](BGScript* script)
40 {
41 script->OnBattlegroundUpdate(bg, diff);
42 });
43}
virtual void OnBattlegroundUpdate(Battleground *, uint32)
Definition: ScriptMgr.h:1625

References BGScript::OnBattlegroundUpdate().

◆ OnBeforeAchievementComplete()

bool ScriptMgr::OnBeforeAchievementComplete ( Player player,
AchievementEntry const *  achievement 
)
444{
445 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
446 {
447 return !script->OnBeforeAchiComplete(player, achievement);
448 });
449
450 if (ret && *ret)
451 {
452 return false;
453 }
454
455 return true;
456}
virtual bool OnBeforeAchiComplete(Player *, AchievementEntry const *)
Definition: ScriptMgr.h:1134

References PlayerScript::OnBeforeAchiComplete().

◆ OnBeforeAuctionHouseMgrSendAuctionCancelledToBidderMail()

void ScriptMgr::OnBeforeAuctionHouseMgrSendAuctionCancelledToBidderMail ( AuctionHouseMgr auctionHouseMgr,
AuctionEntry auction,
Player bidder,
uint32 bidder_accId,
bool &  sendMail 
)
106{
107 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
108 {
109 script->OnBeforeAuctionHouseMgrSendAuctionCancelledToBidderMail(auctionHouseMgr, auction, bidder, bidder_accId, sendMail);
110 });
111}
virtual void OnBeforeAuctionHouseMgrSendAuctionCancelledToBidderMail(AuctionHouseMgr *, AuctionEntry *, Player *, uint32 &, bool &)
Definition: ScriptMgr.h:905

References AuctionHouseScript::OnBeforeAuctionHouseMgrSendAuctionCancelledToBidderMail().

◆ OnBeforeAuctionHouseMgrSendAuctionExpiredMail()

void ScriptMgr::OnBeforeAuctionHouseMgrSendAuctionExpiredMail ( AuctionHouseMgr auctionHouseMgr,
AuctionEntry auction,
Player owner,
uint32 owner_accId,
bool &  sendNotification,
bool &  sendMail 
)
90{
91 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
92 {
93 script->OnBeforeAuctionHouseMgrSendAuctionExpiredMail(auctionHouseMgr, auction, owner, owner_accId, sendNotification, sendMail);
94 });
95}
virtual void OnBeforeAuctionHouseMgrSendAuctionExpiredMail(AuctionHouseMgr *, AuctionEntry *, Player *, uint32 &, bool &, bool &)
Definition: ScriptMgr.h:899

References AuctionHouseScript::OnBeforeAuctionHouseMgrSendAuctionExpiredMail().

◆ OnBeforeAuctionHouseMgrSendAuctionOutbiddedMail()

void ScriptMgr::OnBeforeAuctionHouseMgrSendAuctionOutbiddedMail ( AuctionHouseMgr auctionHouseMgr,
AuctionEntry auction,
Player oldBidder,
uint32 oldBidder_accId,
Player newBidder,
uint32 newPrice,
bool &  sendNotification,
bool &  sendMail 
)
98{
99 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
100 {
101 script->OnBeforeAuctionHouseMgrSendAuctionOutbiddedMail(auctionHouseMgr, auction, oldBidder, oldBidder_accId, newBidder, newPrice, sendNotification, sendMail);
102 });
103}
virtual void OnBeforeAuctionHouseMgrSendAuctionOutbiddedMail(AuctionHouseMgr *, AuctionEntry *, Player *, uint32 &, Player *, uint32 &, bool &, bool &)
Definition: ScriptMgr.h:902

References AuctionHouseScript::OnBeforeAuctionHouseMgrSendAuctionOutbiddedMail().

◆ OnBeforeAuctionHouseMgrSendAuctionSalePendingMail()

void ScriptMgr::OnBeforeAuctionHouseMgrSendAuctionSalePendingMail ( AuctionHouseMgr auctionHouseMgr,
AuctionEntry auction,
Player owner,
uint32 owner_accId,
bool &  sendMail 
)
74{
75 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
76 {
77 script->OnBeforeAuctionHouseMgrSendAuctionSalePendingMail(auctionHouseMgr, auction, owner, owner_accId, sendMail);
78 });
79}
virtual void OnBeforeAuctionHouseMgrSendAuctionSalePendingMail(AuctionHouseMgr *, AuctionEntry *, Player *, uint32 &, bool &)
Definition: ScriptMgr.h:893

References AuctionHouseScript::OnBeforeAuctionHouseMgrSendAuctionSalePendingMail().

◆ OnBeforeAuctionHouseMgrSendAuctionSuccessfulMail()

void ScriptMgr::OnBeforeAuctionHouseMgrSendAuctionSuccessfulMail ( AuctionHouseMgr auctionHouseMgr,
AuctionEntry auction,
Player owner,
uint32 owner_accId,
uint32 profit,
bool &  sendNotification,
bool &  updateAchievementCriteria,
bool &  sendMail 
)
82{
83 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
84 {
85 script->OnBeforeAuctionHouseMgrSendAuctionSuccessfulMail(auctionHouseMgr, auction, owner, owner_accId, profit, sendNotification, updateAchievementCriteria, sendMail);
86 });
87}
virtual void OnBeforeAuctionHouseMgrSendAuctionSuccessfulMail(AuctionHouseMgr *, AuctionEntry *, Player *, uint32 &, uint32 &, bool &, bool &, bool &)
Definition: ScriptMgr.h:896

References AuctionHouseScript::OnBeforeAuctionHouseMgrSendAuctionSuccessfulMail().

◆ OnBeforeAuctionHouseMgrSendAuctionWonMail()

void ScriptMgr::OnBeforeAuctionHouseMgrSendAuctionWonMail ( AuctionHouseMgr auctionHouseMgr,
AuctionEntry auction,
Player bidder,
uint32 bidder_accId,
bool &  sendNotification,
bool &  updateAchievementCriteria,
bool &  sendMail 
)
66{
67 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
68 {
69 script->OnBeforeAuctionHouseMgrSendAuctionWonMail(auctionHouseMgr, auction, bidder, bidder_accId, sendNotification, updateAchievementCriteria, sendMail);
70 });
71}
virtual void OnBeforeAuctionHouseMgrSendAuctionWonMail(AuctionHouseMgr *, AuctionEntry *, Player *, uint32 &, bool &, bool &, bool &)
Definition: ScriptMgr.h:890

References AuctionHouseScript::OnBeforeAuctionHouseMgrSendAuctionWonMail().

◆ OnBeforeAuctionHouseMgrUpdate()

void ScriptMgr::OnBeforeAuctionHouseMgrUpdate ( )
114{
115 ExecuteScript<AuctionHouseScript>([&](AuctionHouseScript* script)
116 {
118 });
119}
virtual void OnBeforeAuctionHouseMgrUpdate()
Definition: ScriptMgr.h:908

References AuctionHouseScript::OnBeforeAuctionHouseMgrUpdate().

◆ OnBeforeAuraRankForLevel()

void ScriptMgr::OnBeforeAuraRankForLevel ( SpellInfo const *  spellInfo,
SpellInfo const *  latestSpellInfo,
uint8  level 
)
129{
130 ExecuteScript<SpellSC>([&](SpellSC* script)
131 {
132 script->OnBeforeAuraRankForLevel(spellInfo, latestSpellInfo, level);
133 });
134}
virtual void OnBeforeAuraRankForLevel(SpellInfo const *, SpellInfo const *, uint8)
Definition: ScriptMgr.h:1733

References SpellSC::OnBeforeAuraRankForLevel().

◆ OnBeforeBuyItemFromVendor()

void ScriptMgr::OnBeforeBuyItemFromVendor ( Player player,
ObjectGuid  vendorguid,
uint32  vendorslot,
uint32 item,
uint8  count,
uint8  bag,
uint8  slot 
)
711{
712 ExecuteScript<PlayerScript>([&](PlayerScript* script)
713 {
714 script->OnBeforeBuyItemFromVendor(player, vendorguid, vendorslot, item, count, bag, slot);
715 });
716}
virtual void OnBeforeBuyItemFromVendor(Player *, ObjectGuid, uint32, uint32 &, uint8, uint8, uint8)
Definition: ScriptMgr.h:1209

References PlayerScript::OnBeforeBuyItemFromVendor().

◆ OnBeforeCheckCriteria()

void ScriptMgr::OnBeforeCheckCriteria ( AchievementMgr mgr,
AchievementCriteriaEntryList const *  achievementCriteriaList 
)
60{
61 ExecuteScript<AchievementScript>([&](AchievementScript* script)
62 {
63 script->OnBeforeCheckCriteria(mgr, achievementCriteriaList);
64 });
65}
virtual void OnBeforeCheckCriteria(AchievementMgr *, AchievementCriteriaEntryList const *)
Definition: ScriptMgr.h:1817

References AchievementScript::OnBeforeCheckCriteria().

◆ OnBeforeChooseGraveyard()

void ScriptMgr::OnBeforeChooseGraveyard ( Player player,
TeamId  teamId,
bool  nearCorpse,
uint32 graveyardOverride 
)
1416{
1417 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1418 {
1419 script->OnBeforeChooseGraveyard(player, teamId, nearCorpse, graveyardOverride);
1420 });
1421}
virtual void OnBeforeChooseGraveyard(Player *, TeamId, bool, uint32 &)
Definition: ScriptMgr.h:1347

References PlayerScript::OnBeforeChooseGraveyard().

◆ OnBeforeConfigLoad()

void ScriptMgr::OnBeforeConfigLoad ( bool  reload)
38{
39 ExecuteScript<WorldScript>([&](WorldScript* script)
40 {
41 script->OnBeforeConfigLoad(reload);
42 });
43}
virtual void OnBeforeConfigLoad(bool)
Definition: ScriptMgr.h:211

References WorldScript::OnBeforeConfigLoad().

◆ OnBeforeCreateInstanceScript()

void ScriptMgr::OnBeforeCreateInstanceScript ( InstanceMap instanceMap,
InstanceScript instanceData,
bool  load,
std::string  data,
uint32  completedEncounterMask 
)
340{
341 ExecuteScript<AllMapScript>([&](AllMapScript* script)
342 {
343 script->OnBeforeCreateInstanceScript(instanceMap, instanceData, load, data, completedEncounterMask);
344 });
345}
Definition: ScriptMgr.h:486
virtual void OnBeforeCreateInstanceScript(InstanceMap *, InstanceScript *, bool, std::string, uint32)
This hook called before create instance script.
Definition: ScriptMgr.h:516

References AllMapScript::OnBeforeCreateInstanceScript().

◆ OnBeforeCriteriaProgress()

bool ScriptMgr::OnBeforeCriteriaProgress ( Player player,
AchievementCriteriaEntry const *  criteria 
)
467{
468 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
469 {
470 return !script->OnBeforeCriteriaProgress(player, criteria);
471 });
472
473 if (ret && *ret)
474 {
475 return false;
476 }
477
478 return true;
479}
virtual bool OnBeforeCriteriaProgress(Player *, AchievementCriteriaEntry const *)
Definition: ScriptMgr.h:1140

References PlayerScript::OnBeforeCriteriaProgress().

◆ OnBeforeDropAddItem()

void ScriptMgr::OnBeforeDropAddItem ( Player const *  player,
Loot loot,
bool  canRate,
uint16  lootMode,
LootStoreItem LootStoreItem,
LootStore const &  store 
)
59{
60 ExecuteScript<GlobalScript>([&](GlobalScript* script)
61 {
62 script->OnBeforeDropAddItem(player, loot, canRate, lootMode, LootStoreItem, store);
63 });
64}
virtual void OnBeforeDropAddItem(Player const *, Loot &, bool, uint16, LootStoreItem *, LootStore const &)
Definition: ScriptMgr.h:1572

References GlobalScript::OnBeforeDropAddItem().

◆ OnBeforeFinalizePlayerWorldSession()

void ScriptMgr::OnBeforeFinalizePlayerWorldSession ( uint32 cacheVersion)
54{
55 ExecuteScript<WorldScript>([&](WorldScript* script)
56 {
57 script->OnBeforeFinalizePlayerWorldSession(cacheVersion);
58 });
59}
virtual void OnBeforeFinalizePlayerWorldSession(uint32 &)
This hook runs before finalizing the player world session. Can be also used to mutate the cache versi...
Definition: ScriptMgr.h:241

References WorldScript::OnBeforeFinalizePlayerWorldSession().

◆ OnBeforeGuardianInitStatsForLevel()

void ScriptMgr::OnBeforeGuardianInitStatsForLevel ( Player player,
Guardian guardian,
CreatureTemplate const *  cinfo,
PetType petType 
)
687{
688 ExecuteScript<PlayerScript>([&](PlayerScript* script)
689 {
690 script->OnBeforeGuardianInitStatsForLevel(player, guardian, cinfo, petType);
691 });
692}
virtual void OnBeforeGuardianInitStatsForLevel(Player *, Guardian *, CreatureTemplate const *, PetType &)
Definition: ScriptMgr.h:1237

References PlayerScript::OnBeforeGuardianInitStatsForLevel().

◆ OnBeforeInitTalentForLevel()

void ScriptMgr::OnBeforeInitTalentForLevel ( Player player,
uint8 level,
uint32 talentPointsForLevel 
)
759{
760 ExecuteScript<PlayerScript>([&](PlayerScript* script)
761 {
762 script->OnBeforeInitTalentForLevel(player, level, talentPointsForLevel);
763 });
764}
virtual void OnBeforeInitTalentForLevel(Player *, uint8 &, uint32 &)
Definition: ScriptMgr.h:1224

References PlayerScript::OnBeforeInitTalentForLevel().

◆ OnBeforeLoadPetFromDB()

void ScriptMgr::OnBeforeLoadPetFromDB ( Player player,
uint32 petentry,
uint32 petnumber,
bool &  current,
bool &  forceLoadFromDB 
)
703{
704 ExecuteScript<PlayerScript>([&](PlayerScript* script)
705 {
706 script->OnBeforeLoadPetFromDB(player, petentry, petnumber, current, forceLoadFromDB);
707 });
708}
virtual void OnBeforeLoadPetFromDB(Player *, uint32 &, uint32 &, bool &, bool &)
Definition: ScriptMgr.h:1243

References PlayerScript::OnBeforeLoadPetFromDB().

◆ OnBeforeLootEqualChanced()

bool ScriptMgr::OnBeforeLootEqualChanced ( Player const *  player,
LootStoreItemList  EqualChanced,
Loot loot,
LootStore const &  store 
)
82{
83 auto ret = IsValidBoolScript<GlobalScript>([&](GlobalScript* script)
84 {
85 return !script->OnBeforeLootEqualChanced(player, EqualChanced, loot, store);
86 });
87
88 if (ret && *ret)
89 {
90 return false;
91 }
92
93 return true;
94}
virtual bool OnBeforeLootEqualChanced(Player const *, LootStoreItemList, Loot &, LootStore const &)
Definition: ScriptMgr.h:1574

References GlobalScript::OnBeforeLootEqualChanced().

◆ OnBeforeLootMoney()

void ScriptMgr::OnBeforeLootMoney ( Player player,
Loot loot 
)
150{
151 ExecuteScript<PlayerScript>([&](PlayerScript* script)
152 {
153 script->OnBeforeLootMoney(player, loot);
154 });
155}
virtual void OnBeforeLootMoney(Player *, Loot *)
Definition: ScriptMgr.h:1035

References PlayerScript::OnBeforeLootMoney().

◆ OnBeforeMailDraftSendMailTo()

void ScriptMgr::OnBeforeMailDraftSendMailTo ( MailDraft mailDraft,
MailReceiver const &  receiver,
MailSender const &  sender,
MailCheckMask checked,
uint32 deliver_delay,
uint32 custom_expiration,
bool &  deleteMailItemsFromDB,
bool &  sendMail 
)
22{
23 ExecuteScript<MailScript>([&](MailScript* script)
24 {
25 script->OnBeforeMailDraftSendMailTo(mailDraft, receiver, sender, checked, deliver_delay, custom_expiration, deleteMailItemsFromDB, sendMail);\
26 });
27}
Definition: ScriptMgr.h:1791
virtual void OnBeforeMailDraftSendMailTo(MailDraft *, MailReceiver const &, MailSender const &, MailCheckMask &, uint32 &, uint32 &, bool &, bool &)
Definition: ScriptMgr.h:1797

References MailScript::OnBeforeMailDraftSendMailTo().

◆ OnBeforeOpenItem()

bool ScriptMgr::OnBeforeOpenItem ( Player player,
Item item 
)
618{
619 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
620 {
621 return !script->OnBeforeOpenItem(player, item);
622 });
623
624 if (ret && *ret)
625 {
626 return false;
627 }
628
629 return true;
630}
virtual bool OnBeforeOpenItem(Player *, Item *)
Definition: ScriptMgr.h:1197

References PlayerScript::OnBeforeOpenItem().

◆ OnBeforePlayerDurabilityRepair()

void ScriptMgr::OnBeforePlayerDurabilityRepair ( Player player,
ObjectGuid  npcGUID,
ObjectGuid  itemGUID,
float &  discountMod,
uint8  guildBank 
)
22{
23 ExecuteScript<PlayerScript>([&](PlayerScript* script)
24 {
25 script->OnBeforeDurabilityRepair(player, npcGUID, itemGUID, discountMod, guildBank);
26 });
27}
virtual void OnBeforeDurabilityRepair(Player *, ObjectGuid, ObjectGuid, float &, uint8)
Definition: ScriptMgr.h:1206

References PlayerScript::OnBeforeDurabilityRepair().

◆ OnBeforePlayerQuestComplete()

bool ScriptMgr::OnBeforePlayerQuestComplete ( Player player,
uint32  quest_id 
)
766{
767 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
768 {
769 return !script->OnBeforeQuestComplete(player, quest_id);
770 });
771
772 if (ret && *ret)
773 {
774 return false;
775 }
776
777 return true;
778}
virtual bool OnBeforeQuestComplete(Player *, uint32)
Definition: ScriptMgr.h:1200

References PlayerScript::OnBeforeQuestComplete().

◆ OnBeforePlayerTeleport()

bool ScriptMgr::OnBeforePlayerTeleport ( Player player,
uint32  mapid,
float  x,
float  y,
float  z,
float  orientation,
uint32  options,
Unit target 
)
397{
398 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
399 {
400 return !script->OnBeforeTeleport(player, mapid, x, y, z, orientation, options, target);
401 });
402
403 if (ret && *ret)
404 {
405 return false;
406 }
407
408 return true;
409}
virtual bool OnBeforeTeleport(Player *, uint32, float, float, float, float, uint32, Unit *)
Definition: ScriptMgr.h:1116

References PlayerScript::OnBeforeTeleport().

◆ OnBeforePlayerUpdate()

void ScriptMgr::OnBeforePlayerUpdate ( Player player,
uint32  p_time 
)
301{
302 ExecuteScript<PlayerScript>([&](PlayerScript* script)
303 {
304 script->OnBeforeUpdate(player, p_time);
305 });
306}
virtual void OnBeforeUpdate(Player *, uint32)
Definition: ScriptMgr.h:1028

References PlayerScript::OnBeforeUpdate().

◆ OnBeforeRollMeleeOutcomeAgainst()

void ScriptMgr::OnBeforeRollMeleeOutcomeAgainst ( Unit const *  attacker,
Unit const *  victim,
WeaponAttackType  attType,
int32 attackerMaxSkillValueForLevel,
int32 victimMaxSkillValueForLevel,
int32 attackerWeaponSkill,
int32 victimDefenseSkill,
int32 crit_chance,
int32 miss_chance,
int32 dodge_chance,
int32 parry_chance,
int32 block_chance 
)
89{
90 ExecuteScript<UnitScript>([&](UnitScript* script)
91 {
92 script->OnBeforeRollMeleeOutcomeAgainst(attacker, victim, attType, attackerMaxSkillValueForLevel, victimMaxSkillValueForLevel, attackerWeaponSkill, victimDefenseSkill, crit_chance, miss_chance, dodge_chance, parry_chance, block_chance);
93 });
94}
virtual void OnBeforeRollMeleeOutcomeAgainst(Unit const *, Unit const *, WeaponAttackType, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &)
Definition: ScriptMgr.h:440

References UnitScript::OnBeforeRollMeleeOutcomeAgainst().

◆ OnBeforeSendChatMessage()

void ScriptMgr::OnBeforeSendChatMessage ( Player player,
uint32 type,
uint32 lang,
std::string &  msg 
)
237{
238 ExecuteScript<PlayerScript>([&](PlayerScript* script)
239 {
240 script->OnBeforeSendChatMessage(player, type, lang, msg);
241 });
242}
virtual void OnBeforeSendChatMessage(Player *, uint32 &, uint32 &, std::string &)
Definition: ScriptMgr.h:1064

References PlayerScript::OnBeforeSendChatMessage().

◆ OnBeforeSendExitMessageArenaQueue()

bool ScriptMgr::OnBeforeSendExitMessageArenaQueue ( BattlegroundQueue queue,
GroupQueueInfo ginfo 
)
128{
129 auto ret = IsValidBoolScript<BGScript>([&](BGScript* script)
130 {
131 return !script->OnBeforeSendExitMessageArenaQueue(queue, ginfo);
132 });
133
134 return ReturnValidBool(ret);
135}
virtual bool OnBeforeSendExitMessageArenaQueue(BattlegroundQueue *, GroupQueueInfo *)
This hook runs before sending the exit message during the arena queue, allowing you to run extra oper...
Definition: ScriptMgr.h:1666

References BGScript::OnBeforeSendExitMessageArenaQueue(), and ReturnValidBool().

◆ OnBeforeSendJoinMessageArenaQueue()

bool ScriptMgr::OnBeforeSendJoinMessageArenaQueue ( BattlegroundQueue queue,
Player leader,
GroupQueueInfo ginfo,
PvPDifficultyEntry const *  bracketEntry,
bool  isRated 
)
118{
119 auto ret = IsValidBoolScript<BGScript>([&](BGScript* script)
120 {
121 return !script->OnBeforeSendJoinMessageArenaQueue(queue, leader, ginfo, bracketEntry, isRated);
122 });
123
124 return ReturnValidBool(ret);
125}
virtual bool OnBeforeSendJoinMessageArenaQueue(BattlegroundQueue *, Player *, GroupQueueInfo *, PvPDifficultyEntry const *, bool)
This hook runs before sending the join message during the arena queue, allowing you to run extra oper...
Definition: ScriptMgr.h:1657

References BGScript::OnBeforeSendJoinMessageArenaQueue(), and ReturnValidBool().

◆ OnBeforeSetBossState()

void ScriptMgr::OnBeforeSetBossState ( uint32  id,
EncounterState  newState,
EncounterState  oldState,
Map instance 
)

Called when any raid boss has their state updated (e.g. pull, reset, kill).

Careful checks for old- and newState are required, since it can fire multiple times and not only when combat starts/ends.

Parameters
idThe id of the boss in the [instance]
newStateThe new boss state to be applied to this boss
oldStateThe previously assigned state of this boss
instanceA pointer to the [map] object of the instance
204{
205 ExecuteScript<GlobalScript>([&](GlobalScript* script)
206 {
207 script->OnBeforeSetBossState(id, newState, oldState, instance);
208 });
209}
virtual void OnBeforeSetBossState(uint32, EncounterState, EncounterState, Map *)
Definition: ScriptMgr.h:1603

References instance(), and GlobalScript::OnBeforeSetBossState().

◆ OnBeforeStoreOrEquipNewItem()

void ScriptMgr::OnBeforeStoreOrEquipNewItem ( Player player,
uint32  vendorslot,
uint32 item,
uint8  count,
uint8  bag,
uint8  slot,
ItemTemplate const *  pProto,
Creature pVendor,
VendorItem const *  crItem,
bool  bStore 
)
788{
789 ExecuteScript<PlayerScript>([&](PlayerScript* script)
790 {
791 script->OnBeforeStoreOrEquipNewItem(player, vendorslot, item, count, bag, slot, pProto, pVendor, crItem, bStore);
792 });
793}
virtual void OnBeforeStoreOrEquipNewItem(Player *, uint32, uint32 &, uint8, uint8, uint8, ItemTemplate const *, Creature *, VendorItem const *, bool)
Definition: ScriptMgr.h:1212

References PlayerScript::OnBeforeStoreOrEquipNewItem().

◆ OnBeforeTempSummonInitStats()

void ScriptMgr::OnBeforeTempSummonInitStats ( Player player,
TempSummon tempSummon,
uint32 duration 
)
679{
680 ExecuteScript<PlayerScript>([&](PlayerScript* script)
681 {
682 script->OnBeforeTempSummonInitStats(player, tempSummon, duration);
683 });
684}
virtual void OnBeforeTempSummonInitStats(Player *, TempSummon *, uint32 &)
Definition: ScriptMgr.h:1234

References PlayerScript::OnBeforeTempSummonInitStats().

◆ OnBeforeUpdateArenaPoints()

void ScriptMgr::OnBeforeUpdateArenaPoints ( ArenaTeam at,
std::map< ObjectGuid, uint32 > &  ap 
)
43{
44 ExecuteScript<GlobalScript>([&](GlobalScript* script)
45 {
46 script->OnBeforeUpdateArenaPoints(at, ap);
47 });
48}
virtual void OnBeforeUpdateArenaPoints(ArenaTeam *, std::map< ObjectGuid, uint32 > &)
Definition: ScriptMgr.h:1579

References GlobalScript::OnBeforeUpdateArenaPoints().

◆ OnBeforeUpdateAttackPowerAndDamage()

void ScriptMgr::OnBeforeUpdateAttackPowerAndDamage ( Player player,
float &  level,
float &  val2,
bool  ranged 
)
743{
744 ExecuteScript<PlayerScript>([&](PlayerScript* script)
745 {
746 script->OnBeforeUpdateAttackPowerAndDamage(player, level, val2, ranged);
747 });
748}
virtual void OnBeforeUpdateAttackPowerAndDamage(Player *, float &, float &, bool)
Definition: ScriptMgr.h:1221

References PlayerScript::OnBeforeUpdateAttackPowerAndDamage().

◆ OnBeforeUpdatingPersonalRating()

void ScriptMgr::OnBeforeUpdatingPersonalRating ( int32 mod,
uint32  type 
)
89{
90 ExecuteScript<FormulaScript>([&](FormulaScript* script)
91 {
92 script->OnBeforeUpdatingPersonalRating(mod, type);
93 });
94}
virtual void OnBeforeUpdatingPersonalRating(int32 &, uint32)
Definition: ScriptMgr.h:280

References FormulaScript::OnBeforeUpdatingPersonalRating().

◆ OnBeforeWorldInitialized()

void ScriptMgr::OnBeforeWorldInitialized ( )
110{
111 ExecuteScript<WorldScript>([&](WorldScript* script)
112 {
113 script->OnBeforeWorldInitialized();
114 });
115}
virtual void OnBeforeWorldInitialized()
This hook runs after all scripts loading and before itialized.
Definition: ScriptMgr.h:246

References WorldScript::OnBeforeWorldInitialized().

◆ OnBeforeWorldObjectSetPhaseMask()

void ScriptMgr::OnBeforeWorldObjectSetPhaseMask ( WorldObject const *  worldObject,
uint32 oldPhaseMask,
uint32 newPhaseMask,
bool &  useCombinedPhases,
bool &  update 
)
121{
122 ExecuteScript<GlobalScript>([&](GlobalScript* script)
123 {
124 script->OnBeforeWorldObjectSetPhaseMask(worldObject, oldPhaseMask, newPhaseMask, useCombinedPhases, update);
125 });
126}
virtual void OnBeforeWorldObjectSetPhaseMask(WorldObject const *, uint32 &, uint32 &, bool &, bool &)
Definition: ScriptMgr.h:1585

References GlobalScript::OnBeforeWorldObjectSetPhaseMask().

◆ OnBuildValuesUpdate()

bool ScriptMgr::OnBuildValuesUpdate ( Unit const *  unit,
uint8  updateType,
ByteBuffer fieldBuffer,
Player target,
uint16  index 
)
195{
196 auto ret = IsValidBoolScript<UnitScript>([&](UnitScript* script) { return script->OnBuildValuesUpdate(unit, updateType, fieldBuffer, target, index); });
197
198 if (ret && *ret)
199 {
200 return true;
201 }
202
203 return false;
204}
virtual bool OnBuildValuesUpdate(Unit const *, uint8, ByteBuffer &, Player *, uint16)
Definition: ScriptMgr.h:458

References UnitScript::OnBuildValuesUpdate().

◆ OnCalcMaxDuration()

void ScriptMgr::OnCalcMaxDuration ( Aura const *  aura,
int32 maxDuration 
)
22{
23 ExecuteScript<SpellSC>([&](SpellSC* script)
24 {
25 script->OnCalcMaxDuration(aura, maxDuration);
26 });
27}
virtual void OnCalcMaxDuration(Aura const *, int32 &)
Definition: ScriptMgr.h:1715

References SpellSC::OnCalcMaxDuration().

◆ OnCalculateMaxTalentPointsForLevel()

void ScriptMgr::OnCalculateMaxTalentPointsForLevel ( Pet pet,
uint8  level,
uint8 points 
)
30{
31 ExecuteScript<PetScript>([&](PetScript* script)
32 {
33 script->OnCalculateMaxTalentPointsForLevel(pet, level, points);
34 });
35}
virtual void OnCalculateMaxTalentPointsForLevel(Pet *, uint8, uint8 &)
Definition: ScriptMgr.h:1834

References PetScript::OnCalculateMaxTalentPointsForLevel().

◆ OnCastItemCombatSpell()

bool ScriptMgr::OnCastItemCombatSpell ( Player player,
Unit victim,
SpellInfo const *  spellInfo,
Item item 
)
101{
102 ASSERT(player);
103 ASSERT(victim);
104 ASSERT(spellInfo);
105 ASSERT(item);
106
108 return tempScript ? tempScript->OnCastItemCombatSpell(player, victim, spellInfo, item) : true;
109}
uint32 GetScriptId() const
Definition: Item.h:355

References ASSERT, ScriptRegistry< TScript >::GetScriptById(), and Item::GetScriptId().

◆ OnColorCodeCalculation()

void ScriptMgr::OnColorCodeCalculation ( XPColorChar color,
uint8  playerLevel,
uint8  mobLevel 
)
38{
39 ExecuteScript<FormulaScript>([&](FormulaScript* script)
40 {
41 script->OnColorCodeCalculation(color, playerLevel, mobLevel);
42 });
43}
virtual void OnColorCodeCalculation(XPColorChar &, uint8, uint8)
Definition: ScriptMgr.h:262

References FormulaScript::OnColorCodeCalculation().

◆ OnConditionCheck()

bool ScriptMgr::OnConditionCheck ( Condition condition,
ConditionSourceInfo sourceInfo 
)
21{
22 ASSERT(condition);
23
24 auto tempScript = ScriptRegistry<ConditionScript>::GetScriptById(condition->ScriptId);
25 return tempScript ? tempScript->OnConditionCheck(condition, sourceInfo) : true;
26}
uint32 ScriptId
Definition: ConditionMgr.h:207

References ASSERT, ScriptRegistry< TScript >::GetScriptById(), and Condition::ScriptId.

◆ OnConstructGroup()

void ScriptMgr::OnConstructGroup ( Group origin)
77{
78 ExecuteScript<MiscScript>([&](MiscScript* script)
79 {
80 script->OnConstructGroup(origin);
81 });
82}
virtual void OnConstructGroup(Group *)
Definition: ScriptMgr.h:1885

References MiscScript::OnConstructGroup().

◆ OnConstructInstanceSave()

void ScriptMgr::OnConstructInstanceSave ( InstanceSave origin)
93{
94 ExecuteScript<MiscScript>([&](MiscScript* script)
95 {
96 script->OnConstructInstanceSave(origin);
97 });
98}
virtual void OnConstructInstanceSave(InstanceSave *)
Definition: ScriptMgr.h:1889

References MiscScript::OnConstructInstanceSave().

◆ OnConstructObject()

void ScriptMgr::OnConstructObject ( Object origin)
45{
46 ExecuteScript<MiscScript>([&](MiscScript* script)
47 {
48 script->OnConstructObject(origin);
49 });
50}
virtual void OnConstructObject(Object *)
Definition: ScriptMgr.h:1877

References MiscScript::OnConstructObject().

◆ OnConstructPlayer()

void ScriptMgr::OnConstructPlayer ( Player origin)
61{
62 ExecuteScript<MiscScript>([&](MiscScript* script)
63 {
64 script->OnConstructPlayer(origin);
65 });
66}
virtual void OnConstructPlayer(Player *)
Definition: ScriptMgr.h:1881

References MiscScript::OnConstructPlayer().

◆ OnCreate()

void ScriptMgr::OnCreate ( Group group,
Player leader 
)
87{
88 ExecuteScript<GroupScript>([&](GroupScript* script)
89 {
90 script->OnCreate(group, leader);
91 });
92}
virtual void OnCreate(Group *, Player *)
Definition: ScriptMgr.h:1556

References GroupScript::OnCreate().

◆ OnCreateItem()

void ScriptMgr::OnCreateItem ( Player player,
Item item,
uint32  count 
)
594{
595 ExecuteScript<PlayerScript>([&](PlayerScript* script)
596 {
597 script->OnCreateItem(player, item, count);
598 });
599}
virtual void OnCreateItem(Player *, Item *, uint32)
Definition: ScriptMgr.h:1188

References PlayerScript::OnCreateItem().

◆ OnCreateMap()

void ScriptMgr::OnCreateMap ( Map map)
145{
146 ASSERT(map);
147
148 ExecuteScript<AllMapScript>([&](AllMapScript* script)
149 {
150 script->OnCreateMap(map);
151 });
152
153 ForeachMaps<WorldMapScript>(map,
154 [&](WorldMapScript* script)
155 {
156 script->OnCreate(map);
157 });
158
159 ForeachMaps<InstanceMapScript>(map,
160 [&](InstanceMapScript* script)
161 {
162 script->OnCreate((InstanceMap*)map);
163 });
164
165 ForeachMaps<BattlegroundMapScript>(map,
166 [&](BattlegroundMapScript* script)
167 {
168 script->OnCreate((BattlegroundMap*)map);
169 });
170}
Definition: Map.h:813
Definition: Map.h:847
virtual void OnCreate(TMap *)
Definition: ScriptMgr.h:307
Definition: ScriptMgr.h:329
Definition: ScriptMgr.h:346
Definition: ScriptMgr.h:366
virtual void OnCreateMap(Map *)
This hook called before creating map.
Definition: ScriptMgr.h:531

References ASSERT, and AllMapScript::OnCreateMap().

◆ OnCreatureAddWorld()

void ScriptMgr::OnCreatureAddWorld ( Creature creature)
22{
23 ASSERT(creature);
24
25 ExecuteScript<AllCreatureScript>([&](AllCreatureScript* script)
26 {
27 script->OnCreatureAddWorld(creature);
28 });
29}
virtual void OnCreatureAddWorld(Creature *)
This hook runs after add creature in world.
Definition: ScriptMgr.h:566

References ASSERT, and AllCreatureScript::OnCreatureAddWorld().

◆ OnCreatureKill()

void ScriptMgr::OnCreatureKill ( Player killer,
Creature killed 
)
94{
95 ExecuteScript<PlayerScript>([&](PlayerScript* script)
96 {
97 script->OnCreatureKill(killer, killed);
98 });
99}
virtual void OnCreatureKill(Player *, Creature *)
Definition: ScriptMgr.h:1010

References PlayerScript::OnCreatureKill().

◆ OnCreatureKilledByPet()

void ScriptMgr::OnCreatureKilledByPet ( Player petOwner,
Creature killed 
)
102{
103 ExecuteScript<PlayerScript>([&](PlayerScript* script)
104 {
105 script->OnCreatureKilledByPet(petOwner, killed);
106 });
107}
virtual void OnCreatureKilledByPet(Player *, Creature *)
Definition: ScriptMgr.h:1013

References PlayerScript::OnCreatureKilledByPet().

◆ OnCreatureRemoveWorld()

void ScriptMgr::OnCreatureRemoveWorld ( Creature creature)
32{
33 ASSERT(creature);
34
35 ExecuteScript<AllCreatureScript>([&](AllCreatureScript* script)
36 {
37 script->OnCreatureRemoveWorld(creature);
38 });
39}
virtual void OnCreatureRemoveWorld(Creature *)
This hook runs after remove creature in world.
Definition: ScriptMgr.h:573

References ASSERT, and AllCreatureScript::OnCreatureRemoveWorld().

◆ OnCreatureSaveToDB()

void ScriptMgr::OnCreatureSaveToDB ( Creature creature)
42{
43 ASSERT(creature);
44
45 ExecuteScript<AllCreatureScript>([&](AllCreatureScript* script)
46 {
47 script->OnCreatureSaveToDB(creature);
48 });
49}
virtual void OnCreatureSaveToDB(Creature *)
This hook runs after creature has been saved to DB.
Definition: ScriptMgr.h:580

References ASSERT, and AllCreatureScript::OnCreatureSaveToDB().

◆ OnCreatureUpdate()

void ScriptMgr::OnCreatureUpdate ( Creature creature,
uint32  diff 
)
183{
184 ASSERT(creature);
185
186 ExecuteScript<AllCreatureScript>([&](AllCreatureScript* script)
187 {
188 script->OnAllCreatureUpdate(creature, diff);
189 });
190
191 if (auto tempScript = ScriptRegistry<CreatureScript>::GetScriptById(creature->GetScriptId()))
192 {
193 tempScript->OnUpdate(creature, diff);
194 }
195}
virtual void OnAllCreatureUpdate(Creature *, uint32)
Definition: ScriptMgr.h:556

References ASSERT, Creature::GetScriptId(), and AllCreatureScript::OnAllCreatureUpdate().

◆ OnCriteriaCheck()

bool ScriptMgr::OnCriteriaCheck ( uint32  scriptId,
Player source,
Unit target,
uint32  criteria_id 
)
21{
22 ASSERT(source);
23 // target can be nullptr.
24
26 return tempScript ? tempScript->OnCheck(source, target, criteria_id) : false;
27}

References ASSERT, and ScriptRegistry< TScript >::GetScriptById().

◆ OnCriteriaProgress()

void ScriptMgr::OnCriteriaProgress ( Player player,
AchievementCriteriaEntry const *  criteria 
)
482{
483 ExecuteScript<PlayerScript>([&](PlayerScript* script)
484 {
485 script->OnCriteriaProgress(player, criteria);
486 });
487}
virtual void OnCriteriaProgress(Player *, AchievementCriteriaEntry const *)
Definition: ScriptMgr.h:1137

References PlayerScript::OnCriteriaProgress().

◆ OnCriteriaSave()

void ScriptMgr::OnCriteriaSave ( CharacterDatabaseTransaction  trans,
Player player,
uint16  critId,
CriteriaProgress  criteriaData 
)
498{
499 ExecuteScript<PlayerScript>([&](PlayerScript* script)
500 {
501 script->OnCriteriaSave(trans, player, critId, criteriaData);
502 });
503}
virtual void OnCriteriaSave(CharacterDatabaseTransaction, Player *, uint16, CriteriaProgress)
Definition: ScriptMgr.h:1146

References PlayerScript::OnCriteriaSave().

◆ OnCustomScalingStatValue()

void ScriptMgr::OnCustomScalingStatValue ( Player player,
ItemTemplate const *  proto,
uint32 statType,
int32 val,
uint8  itemProtoStatNumber,
uint32  ScalingStatValue,
ScalingStatValuesEntry const *  ssv 
)
1010{
1011 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1012 {
1013 script->OnCustomScalingStatValue(player, proto, statType, val, itemProtoStatNumber, ScalingStatValue, ssv);
1014 });
1015}
virtual void OnCustomScalingStatValue(Player *, ItemTemplate const *, uint32 &, int32 &, uint8, uint32, ScalingStatValuesEntry const *)
Definition: ScriptMgr.h:1281

References PlayerScript::OnCustomScalingStatValue().

◆ OnCustomScalingStatValueBefore()

void ScriptMgr::OnCustomScalingStatValueBefore ( Player player,
ItemTemplate const *  proto,
uint8  slot,
bool  apply,
uint32 CustomScalingStatValue 
)
1002{
1003 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1004 {
1005 script->OnCustomScalingStatValueBefore(player, proto, slot, apply, CustomScalingStatValue);
1006 });
1007}
virtual void OnCustomScalingStatValueBefore(Player *, ItemTemplate const *, uint8, bool, uint32 &)
Definition: ScriptMgr.h:1279

References PlayerScript::OnCustomScalingStatValueBefore().

◆ OnDamage()

void ScriptMgr::OnDamage ( Unit attacker,
Unit victim,
uint32 damage 
)
49{
50 ExecuteScript<UnitScript>([&](UnitScript* script)
51 {
52 script->OnDamage(attacker, victim, damage);
53 });
54}
virtual void OnDamage(Unit *, Unit *, uint32 &)
Definition: ScriptMgr.h:422

References UnitScript::OnDamage().

◆ OnDeleteFromDB()

void ScriptMgr::OnDeleteFromDB ( CharacterDatabaseTransaction  trans,
uint32  guid 
)
925{
926 ExecuteScript<PlayerScript>([&](PlayerScript* script)
927 {
928 script->OnDeleteFromDB(trans, guid);
929 });
930}
virtual void OnDeleteFromDB(CharacterDatabaseTransaction, uint32)
Definition: ScriptMgr.h:1265

References PlayerScript::OnDeleteFromDB().

◆ OnDestroyInstance()

void ScriptMgr::OnDestroyInstance ( MapInstanced mapInstanced,
Map map 
)
348{
349 ExecuteScript<AllMapScript>([&](AllMapScript* script)
350 {
351 script->OnDestroyInstance(mapInstanced, map);
352 });
353}
virtual void OnDestroyInstance(MapInstanced *, Map *)
This hook called before destroy instance.
Definition: ScriptMgr.h:524

References AllMapScript::OnDestroyInstance().

◆ OnDestroyMap()

void ScriptMgr::OnDestroyMap ( Map map)
173{
174 ASSERT(map);
175
176 ExecuteScript<AllMapScript>([&](AllMapScript* script)
177 {
178 script->OnDestroyMap(map);
179 });
180
181 ForeachMaps<WorldMapScript>(map,
182 [&](WorldMapScript* script)
183 {
184 script->OnDestroy(map);
185 });
186
187 ForeachMaps<InstanceMapScript>(map,
188 [&](InstanceMapScript* script)
189 {
190 script->OnDestroy((InstanceMap*)map);
191 });
192
193 ForeachMaps<BattlegroundMapScript>(map,
194 [&](BattlegroundMapScript* script)
195 {
196 script->OnDestroy((BattlegroundMap*)map);
197 });
198}
virtual void OnDestroy(TMap *)
Definition: ScriptMgr.h:310
virtual void OnDestroyMap(Map *)
This hook called before destroing map.
Definition: ScriptMgr.h:538

References ASSERT, and AllMapScript::OnDestroyMap().

◆ OnDestructGroup()

void ScriptMgr::OnDestructGroup ( Group origin)
85{
86 ExecuteScript<MiscScript>([&](MiscScript* script)
87 {
88 script->OnDestructGroup(origin);
89 });
90}
virtual void OnDestructGroup(Group *)
Definition: ScriptMgr.h:1887

References MiscScript::OnDestructGroup().

◆ OnDestructInstanceSave()

void ScriptMgr::OnDestructInstanceSave ( InstanceSave origin)
101{
102 ExecuteScript<MiscScript>([&](MiscScript* script)
103 {
104 script->OnDestructInstanceSave(origin);
105 });
106}
virtual void OnDestructInstanceSave(InstanceSave *)
Definition: ScriptMgr.h:1891

References MiscScript::OnDestructInstanceSave().

◆ OnDestructObject()

void ScriptMgr::OnDestructObject ( Object origin)
53{
54 ExecuteScript<MiscScript>([&](MiscScript* script)
55 {
56 script->OnDestructObject(origin);
57 });
58}
virtual void OnDestructObject(Object *)
Definition: ScriptMgr.h:1879

References MiscScript::OnDestructObject().

◆ OnDestructPlayer()

void ScriptMgr::OnDestructPlayer ( Player origin)
69{
70 ExecuteScript<MiscScript>([&](MiscScript* script)
71 {
72 script->OnDestructPlayer(origin);
73 });
74}
virtual void OnDestructPlayer(Player *)
Definition: ScriptMgr.h:1883

References MiscScript::OnDestructPlayer().

◆ OnDisplayIdChange()

void ScriptMgr::OnDisplayIdChange ( Unit unit,
uint32  displayId 
)
215{
216 ExecuteScript<UnitScript>([&](UnitScript* script)
217 {
218 script->OnDisplayIdChange(unit, displayId);
219 });
220}
virtual void OnDisplayIdChange(Unit *, uint32)
Definition: ScriptMgr.h:468

References UnitScript::OnDisplayIdChange().

◆ OnDummyEffect() [1/3]

void ScriptMgr::OnDummyEffect ( WorldObject caster,
uint32  spellID,
SpellEffIndex  effIndex,
Creature creatureTarget 
)
145{
146 ExecuteScript<SpellSC>([&](SpellSC* script)
147 {
148 script->OnDummyEffect(caster, spellID, effIndex, creatureTarget);
149 });
150}
virtual void OnDummyEffect(WorldObject *, uint32, SpellEffIndex, GameObject *)
This hook called after spell dummy effect.
Definition: ScriptMgr.h:1743

References SpellSC::OnDummyEffect().

◆ OnDummyEffect() [2/3]

void ScriptMgr::OnDummyEffect ( WorldObject caster,
uint32  spellID,
SpellEffIndex  effIndex,
GameObject gameObjTarget 
)
137{
138 ExecuteScript<SpellSC>([&](SpellSC* script)
139 {
140 script->OnDummyEffect(caster, spellID, effIndex, gameObjTarget);
141 });
142}

References SpellSC::OnDummyEffect().

◆ OnDummyEffect() [3/3]

void ScriptMgr::OnDummyEffect ( WorldObject caster,
uint32  spellID,
SpellEffIndex  effIndex,
Item itemTarget 
)
153{
154 ExecuteScript<SpellSC>([&](SpellSC* script)
155 {
156 script->OnDummyEffect(caster, spellID, effIndex, itemTarget);
157 });
158}

References SpellSC::OnDummyEffect().

◆ OnDynamicObjectUpdate()

void ScriptMgr::OnDynamicObjectUpdate ( DynamicObject dynobj,
uint32  diff 
)
21{
22 ASSERT(dynobj);
23
24 for (auto const& [scriptID, script] : ScriptRegistry<DynamicObjectScript>::ScriptPointerList)
25 {
26 script->OnUpdate(dynobj, diff);
27 }
28}

References ASSERT.

◆ OnEmailChange()

void ScriptMgr::OnEmailChange ( uint32  accountId)
54{
55 ExecuteScript<AccountScript>([&](AccountScript* script)
56 {
57 script->OnEmailChange(accountId);
58 });
59}
virtual void OnEmailChange(uint32)
Definition: ScriptMgr.h:1473

References AccountScript::OnEmailChange().

◆ OnEquip()

void ScriptMgr::OnEquip ( Player player,
Item it,
uint8  bag,
uint8  slot,
bool  update 
)
530{
531 ExecuteScript<PlayerScript>([&](PlayerScript* script)
532 {
533 script->OnEquip(player, it, bag, slot, update);
534 });
535}
virtual void OnEquip(Player *, Item *, uint8, uint8, bool)
Definition: ScriptMgr.h:1164

References PlayerScript::OnEquip().

◆ OnFailedAccountLogin()

void ScriptMgr::OnFailedAccountLogin ( uint32  accountId)
46{
47 ExecuteScript<AccountScript>([&](AccountScript* script)
48 {
49 script->OnFailedAccountLogin(accountId);
50 });
51}
virtual void OnFailedAccountLogin(uint32)
Definition: ScriptMgr.h:1470

References AccountScript::OnFailedAccountLogin().

◆ OnFailedEmailChange()

void ScriptMgr::OnFailedEmailChange ( uint32  accountId)
62{
63 ExecuteScript<AccountScript>([&](AccountScript* script)
64 {
65 script->OnFailedEmailChange(accountId);
66 });
67}
virtual void OnFailedEmailChange(uint32)
Definition: ScriptMgr.h:1476

References AccountScript::OnFailedEmailChange().

◆ OnFailedPasswordChange()

void ScriptMgr::OnFailedPasswordChange ( uint32  accountId)
78{
79 ExecuteScript<AccountScript>([&](AccountScript* script)
80 {
81 script->OnFailedPasswordChange(accountId);
82 });
83}
virtual void OnFailedPasswordChange(uint32)
Definition: ScriptMgr.h:1482

References AccountScript::OnFailedPasswordChange().

◆ OnFfaPvpStateUpdate() [1/2]

void ScriptMgr::OnFfaPvpStateUpdate ( Creature creature,
bool  InPvp 
)
175{
176 ExecuteScript<AllCreatureScript>([&](AllCreatureScript* script)
177 {
178 script->OnFfaPvpStateUpdate(creature, InPvp);
179 });
180}
virtual void OnFfaPvpStateUpdate(Creature *, bool)
Definition: ScriptMgr.h:627

References AllCreatureScript::OnFfaPvpStateUpdate().

◆ OnFfaPvpStateUpdate() [2/2]

void ScriptMgr::OnFfaPvpStateUpdate ( Player player,
bool  result 
)
1292{
1293 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1294 {
1295 script->OnFfaPvpStateUpdate(player, result);
1296 });
1297}
virtual void OnFfaPvpStateUpdate(Player *, bool)
Definition: ScriptMgr.h:1326

References PlayerScript::OnFfaPvpStateUpdate().

◆ OnFirstLogin()

void ScriptMgr::OnFirstLogin ( Player player)
633{
634 ExecuteScript<PlayerScript>([&](PlayerScript* script)
635 {
636 script->OnFirstLogin(player);
637 });
638}
virtual void OnFirstLogin(Player *)
Definition: ScriptMgr.h:1226

References PlayerScript::OnFirstLogin().

◆ OnGainCalculation()

void ScriptMgr::OnGainCalculation ( uint32 gain,
Player player,
Unit unit 
)
62{
63 ASSERT(player);
64 ASSERT(unit);
65
66 ExecuteScript<FormulaScript>([&](FormulaScript* script)
67 {
68 script->OnGainCalculation(gain, player, unit);
69 });
70}
virtual void OnGainCalculation(uint32 &, Player *, Unit *)
Definition: ScriptMgr.h:271

References ASSERT, and FormulaScript::OnGainCalculation().

◆ OnGameEventCheck()

void ScriptMgr::OnGameEventCheck ( uint16  EventID)
38{
39 ExecuteScript<GameEventScript>([&](GameEventScript* script)
40 {
41 script->OnEventCheck(EventID);
42 });
43}
Definition: ScriptMgr.h:1775
virtual void OnEventCheck(uint16)
Definition: ScriptMgr.h:1787

References GameEventScript::OnEventCheck().

◆ OnGameEventStart()

void ScriptMgr::OnGameEventStart ( uint16  EventID)
22{
23 ExecuteScript<GameEventScript>([&](GameEventScript* script)
24 {
25 script->OnStart(EventID);
26 });
27}
virtual void OnStart(uint16)
Definition: ScriptMgr.h:1781

References GameEventScript::OnStart().

◆ OnGameEventStop()

void ScriptMgr::OnGameEventStop ( uint16  EventID)
30{
31 ExecuteScript<GameEventScript>([&](GameEventScript* script)
32 {
33 script->OnStop(EventID);
34 });
35}
virtual void OnStop(uint16)
Definition: ScriptMgr.h:1784

References GameEventScript::OnStop().

◆ OnGameObjectAddWorld()

void ScriptMgr::OnGameObjectAddWorld ( GameObject go)
22{
23 ASSERT(go);
24
25 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
26 {
27 script->OnGameObjectAddWorld(go);
28 });
29}
virtual void OnGameObjectAddWorld(GameObject *)
This hook runs after add game object in world.
Definition: ScriptMgr.h:666

References ASSERT, and AllGameObjectScript::OnGameObjectAddWorld().

◆ OnGameObjectDamaged()

void ScriptMgr::OnGameObjectDamaged ( GameObject go,
Player player 
)
149{
150 ASSERT(go);
151
152 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
153 {
154 script->OnGameObjectDamaged(go, player);
155 });
156
158 {
159 tempScript->OnDamaged(go, player);
160 }
161}
virtual void OnGameObjectDamaged(GameObject *, Player *)
Definition: ScriptMgr.h:706

References ASSERT, GameObject::GetScriptId(), and AllGameObjectScript::OnGameObjectDamaged().

◆ OnGameObjectDestroyed()

void ScriptMgr::OnGameObjectDestroyed ( GameObject go,
Player player 
)
134{
135 ASSERT(go);
136
137 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
138 {
139 script->OnGameObjectDestroyed(go, player);
140 });
141
143 {
144 tempScript->OnDestroyed(go, player);
145 }
146}
virtual void OnGameObjectDestroyed(GameObject *, Player *)
Definition: ScriptMgr.h:703

References ASSERT, GameObject::GetScriptId(), and AllGameObjectScript::OnGameObjectDestroyed().

◆ OnGameObjectLootStateChanged()

void ScriptMgr::OnGameObjectLootStateChanged ( GameObject go,
uint32  state,
Unit unit 
)
164{
165 ASSERT(go);
166
167 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
168 {
169 script->OnGameObjectLootStateChanged(go, state, unit);
170 });
171
173 {
174 tempScript->OnLootStateChanged(go, state, unit);
175 }
176}
virtual void OnGameObjectLootStateChanged(GameObject *, uint32, Unit *)
Definition: ScriptMgr.h:709

References ASSERT, GameObject::GetScriptId(), and AllGameObjectScript::OnGameObjectLootStateChanged().

◆ OnGameObjectRemoveWorld()

void ScriptMgr::OnGameObjectRemoveWorld ( GameObject go)
32{
33 ASSERT(go);
34
35 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
36 {
37 script->OnGameObjectRemoveWorld(go);
38 });
39}
virtual void OnGameObjectRemoveWorld(GameObject *)
This hook runs after remove game object in world.
Definition: ScriptMgr.h:678

References ASSERT, and AllGameObjectScript::OnGameObjectRemoveWorld().

◆ OnGameObjectSaveToDB()

void ScriptMgr::OnGameObjectSaveToDB ( GameObject go)
42{
43 ASSERT(go);
44
45 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
46 {
47 script->OnGameObjectSaveToDB(go);
48 });
49}
virtual void OnGameObjectSaveToDB(GameObject *)
This hook runs after the game object iis saved to the database.
Definition: ScriptMgr.h:672

References ASSERT, and AllGameObjectScript::OnGameObjectSaveToDB().

◆ OnGameObjectStateChanged()

void ScriptMgr::OnGameObjectStateChanged ( GameObject go,
uint32  state 
)
179{
180 ASSERT(go);
181
182 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
183 {
184 script->OnGameObjectStateChanged(go, state);
185 });
186
188 {
189 tempScript->OnGameObjectStateChanged(go, state);
190 }
191}
virtual void OnGameObjectStateChanged(GameObject *, uint32)
Definition: ScriptMgr.h:712

References ASSERT, GameObject::GetScriptId(), and AllGameObjectScript::OnGameObjectStateChanged().

◆ OnGameObjectUpdate()

void ScriptMgr::OnGameObjectUpdate ( GameObject go,
uint32  diff 
)
194{
195 ASSERT(go);
196
197 ExecuteScript<AllGameObjectScript>([&](AllGameObjectScript* script)
198 {
199 script->OnGameObjectUpdate(go, diff);
200 });
201
203 {
204 tempScript->OnUpdate(go, diff);
205 }
206}
virtual void OnGameObjectUpdate(GameObject *, uint32)
This hook runs after remove game object in world.
Definition: ScriptMgr.h:685

References ASSERT, GameObject::GetScriptId(), and AllGameObjectScript::OnGameObjectUpdate().

◆ OnGetArenaPersonalRating()

void ScriptMgr::OnGetArenaPersonalRating ( Player player,
uint8  slot,
uint32 result 
)
1267{
1268 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1269 {
1270 script->OnGetArenaPersonalRating(player, slot, result);
1271 });
1272}
virtual void OnGetArenaPersonalRating(Player *, uint8, uint32 &)
Definition: ScriptMgr.h:1319

References PlayerScript::OnGetArenaPersonalRating().

◆ OnGetArenaPoints()

void ScriptMgr::OnGetArenaPoints ( ArenaTeam at,
float &  points 
)
30{
31 ExecuteScript<ArenaTeamScript>([&](ArenaTeamScript* script)
32 {
33 script->OnGetArenaPoints(at, points);
34 });
35}
virtual void OnGetArenaPoints(ArenaTeam *, float &)
Definition: ScriptMgr.h:1700

References ArenaTeamScript::OnGetArenaPoints().

◆ OnGetArenaTeamId()

void ScriptMgr::OnGetArenaTeamId ( Player player,
uint8  slot,
uint32 result 
)
1275{
1276 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1277 {
1278 script->OnGetArenaTeamId(player, slot, result);
1279 });
1280}
virtual void OnGetArenaTeamId(Player *, uint8, uint32 &)
Definition: ScriptMgr.h:1321

References PlayerScript::OnGetArenaTeamId().

◆ OnGetFeralApBonus()

void ScriptMgr::OnGetFeralApBonus ( Player player,
int32 feral_bonus,
int32  dpsMod,
ItemTemplate const *  proto,
ScalingStatValuesEntry const *  ssv 
)
1033{
1034 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1035 {
1036 script->OnGetFeralApBonus(player, feral_bonus, dpsMod, proto, ssv);
1037 });
1038}
virtual void OnGetFeralApBonus(Player *, int32 &, int32, ItemTemplate const *, ScalingStatValuesEntry const *)
Definition: ScriptMgr.h:1285

References PlayerScript::OnGetFeralApBonus().

◆ OnGetMaxPersonalArenaRatingRequirement()

void ScriptMgr::OnGetMaxPersonalArenaRatingRequirement ( Player const *  player,
uint32  minSlot,
uint32 maxArenaRating 
) const
570{
571 ExecuteScript<PlayerScript>([&](PlayerScript* script)
572 {
573 script->OnGetMaxPersonalArenaRatingRequirement(player, minSlot, maxArenaRating);
574 });
575}
virtual void OnGetMaxPersonalArenaRatingRequirement(Player const *, uint32, uint32 &) const
Definition: ScriptMgr.h:1179

References PlayerScript::OnGetMaxPersonalArenaRatingRequirement().

◆ OnGetMaxSkillValue()

void ScriptMgr::OnGetMaxSkillValue ( Player player,
uint32  skill,
int32 result,
bool  IsPure 
)
948{
949 ExecuteScript<PlayerScript>([&](PlayerScript* script)
950 {
951 script->OnGetMaxSkillValue(player, skill, result, IsPure);
952 });
953}
virtual void OnGetMaxSkillValue(Player *, uint32, int32 &, bool)
Definition: ScriptMgr.h:1269

References PlayerScript::OnGetMaxSkillValue().

◆ OnGetMaxSkillValueForLevel()

void ScriptMgr::OnGetMaxSkillValueForLevel ( Player player,
uint16 result 
)
1308{
1309 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1310 {
1311 script->OnGetMaxSkillValueForLevel(player, result);
1312 });
1313}
virtual void OnGetMaxSkillValueForLevel(Player *, uint16 &)
Definition: ScriptMgr.h:1330

References PlayerScript::OnGetMaxSkillValueForLevel().

◆ OnGetPoints()

void ScriptMgr::OnGetPoints ( ArenaTeam team,
uint32  memberRating,
float &  points 
)
37{
38 ExecuteScript<ArenaScript>([&](ArenaScript* script)
39 {
40 script->OnGetPoints(team, memberRating, points);
41 });
42}
virtual void OnGetPoints(ArenaTeam *, uint32, float &)
Definition: ScriptMgr.h:1862

References ArenaScript::OnGetPoints().

◆ OnGetQuestRate()

void ScriptMgr::OnGetQuestRate ( Player player,
float &  result 
)
1199{
1200 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1201 {
1202 script->OnGetQuestRate(player, result);
1203 });
1204}
virtual void OnGetQuestRate(Player *, float &)
Definition: ScriptMgr.h:1309

References PlayerScript::OnGetQuestRate().

◆ OnGetSlotByType()

void ScriptMgr::OnGetSlotByType ( const uint32  type,
uint8 slot 
)
22{
23 ExecuteScript<ArenaTeamScript>([&](ArenaTeamScript* script)
24 {
25 script->OnGetSlotByType(type, slot);
26 });
27}
virtual void OnGetSlotByType(const uint32, uint8 &)
Definition: ScriptMgr.h:1699

References ArenaTeamScript::OnGetSlotByType().

◆ OnGivePlayerXP()

void ScriptMgr::OnGivePlayerXP ( Player player,
uint32 amount,
Unit victim 
)
158{
159 ExecuteScript<PlayerScript>([&](PlayerScript* script)
160 {
161 script->OnGiveXP(player, amount, victim);
162 });
163}
virtual void OnGiveXP(Player *, uint32 &, Unit *)
Definition: ScriptMgr.h:1038

References PlayerScript::OnGiveXP().

◆ OnGlobalItemDelFromDB()

void ScriptMgr::OnGlobalItemDelFromDB ( CharacterDatabaseTransaction  trans,
ObjectGuid::LowType  itemGuid 
)
24{
25 ASSERT(trans);
26 ASSERT(itemGuid);
27
28 ExecuteScript<GlobalScript>([&](GlobalScript* script)
29 {
30 script->OnItemDelFromDB(trans, itemGuid);
31 });
32}
virtual void OnItemDelFromDB(CharacterDatabaseTransaction, ObjectGuid::LowType)
Definition: ScriptMgr.h:1567

References ASSERT, and GlobalScript::OnItemDelFromDB().

◆ OnGlobalMirrorImageDisplayItem()

void ScriptMgr::OnGlobalMirrorImageDisplayItem ( Item const *  item,
uint32 display 
)
35{
36 ExecuteScript<GlobalScript>([&](GlobalScript* script)
37 {
38 script->OnMirrorImageDisplayItem(item, display);
39 });
40}
virtual void OnMirrorImageDisplayItem(Item const *, uint32 &)
Definition: ScriptMgr.h:1568

References GlobalScript::OnMirrorImageDisplayItem().

◆ OnGossipHello() [1/2]

bool ScriptMgr::OnGossipHello ( Player player,
Creature creature 
)
23{
24 ASSERT(player);
25 ASSERT(creature);
26
27 auto ret = IsValidBoolScript<AllCreatureScript>([&](AllCreatureScript* script)
28 {
29 return script->CanCreatureGossipHello(player, creature);
30 });
31
32 if (ret && *ret)
33 {
34 return true;
35 }
36
38 ClearGossipMenuFor(player);
39 return tempScript ? tempScript->OnGossipHello(player, creature) : false;
40}
virtual bool CanCreatureGossipHello(Player *, Creature *)
This hook called when a player opens a gossip dialog with the creature.
Definition: ScriptMgr.h:590

References ASSERT, AllCreatureScript::CanCreatureGossipHello(), ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ OnGossipHello() [2/2]

bool ScriptMgr::OnGossipHello ( Player player,
GameObject go 
)
23{
24 ASSERT(player);
25 ASSERT(go);
26
27 auto ret = IsValidBoolScript<AllGameObjectScript>([&](AllGameObjectScript* script)
28 {
29 return script->CanGameObjectGossipHello(player, go);
30 });
31
32 if (ret && *ret)
33 {
34 return true;
35 }
36
38 ClearGossipMenuFor(player);
39 return tempScript ? tempScript->OnGossipHello(player, go) : false;
40}
virtual bool CanGameObjectGossipHello(Player *, GameObject *)
Definition: ScriptMgr.h:688

References ASSERT, AllGameObjectScript::CanGameObjectGossipHello(), ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and GameObject::GetScriptId().

◆ OnGossipSelect() [1/4]

bool ScriptMgr::OnGossipSelect ( Player player,
Creature creature,
uint32  sender,
uint32  action 
)
43{
44 ASSERT(player);
45 ASSERT(creature);
46
47 auto ret = IsValidBoolScript<AllCreatureScript>([&](AllCreatureScript* script)
48 {
49 return script->CanCreatureGossipSelect(player, creature, sender, action);
50 });
51
52 if (ret && *ret)
53 {
54 return true;
55 }
56
58 return tempScript ? tempScript->OnGossipSelect(player, creature, sender, action) : false;
59}
virtual bool CanCreatureGossipSelect(Player *, Creature *, uint32, uint32)
This hook called when a player selects a gossip item in the creature's gossip menu.
Definition: ScriptMgr.h:602

References ASSERT, AllCreatureScript::CanCreatureGossipSelect(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ OnGossipSelect() [2/4]

bool ScriptMgr::OnGossipSelect ( Player player,
GameObject go,
uint32  sender,
uint32  action 
)
43{
44 ASSERT(player);
45 ASSERT(go);
46
47 auto ret = IsValidBoolScript<AllGameObjectScript>([&](AllGameObjectScript* script)
48 {
49 return script->CanGameObjectGossipSelect(player, go, sender, action);
50 });
51
52 if (ret && *ret)
53 {
54 return true;
55 }
56
58 return tempScript ? tempScript->OnGossipSelect(player, go, sender, action) : false;
59}
virtual bool CanGameObjectGossipSelect(Player *, GameObject *, uint32, uint32)
Definition: ScriptMgr.h:691

References ASSERT, AllGameObjectScript::CanGameObjectGossipSelect(), ScriptRegistry< TScript >::GetScriptById(), and GameObject::GetScriptId().

◆ OnGossipSelect() [3/4]

void ScriptMgr::OnGossipSelect ( Player player,
Item item,
uint32  sender,
uint32  action 
)
112{
113 ASSERT(player);
114 ASSERT(item);
115
116 ExecuteScript<AllItemScript>([&](AllItemScript* script)
117 {
118 script->OnItemGossipSelect(player, item, sender, action);
119 });
120
121 if (auto tempScript = ScriptRegistry<ItemScript>::GetScriptById(item->GetScriptId()))
122 {
123 tempScript->OnGossipSelect(player, item, sender, action);
124 }
125}
Definition: ScriptMgr.h:631
virtual void OnItemGossipSelect(Player *, Item *, uint32, uint32)
Definition: ScriptMgr.h:649

References ASSERT, Item::GetScriptId(), and AllItemScript::OnItemGossipSelect().

◆ OnGossipSelect() [4/4]

void ScriptMgr::OnGossipSelect ( Player player,
uint32  menu_id,
uint32  sender,
uint32  action 
)
30{
31 ExecuteScript<PlayerScript>([&](PlayerScript* script)
32 {
33 script->OnGossipSelect(player, menu_id, sender, action);
34 });
35}
virtual void OnGossipSelect(Player *, uint32, uint32, uint32)
Definition: ScriptMgr.h:1149

References PlayerScript::OnGossipSelect().

◆ OnGossipSelectCode() [1/4]

bool ScriptMgr::OnGossipSelectCode ( Player player,
Creature creature,
uint32  sender,
uint32  action,
const char *  code 
)
62{
63 ASSERT(player);
64 ASSERT(creature);
65 ASSERT(code);
66
67 auto ret = IsValidBoolScript<AllCreatureScript>([&](AllCreatureScript* script)
68 {
69 return script->CanCreatureGossipSelectCode(player, creature, sender, action, code);
70 });
71
72 if (ret && *ret)
73 {
74 return true;
75 }
76
78 return tempScript ? tempScript->OnGossipSelectCode(player, creature, sender, action, code) : false;
79}
virtual bool CanCreatureGossipSelectCode(Player *, Creature *, uint32, uint32, const char *)
This hook called when a player selects a gossip with a code in the creature's gossip menu.
Definition: ScriptMgr.h:615

References ASSERT, AllCreatureScript::CanCreatureGossipSelectCode(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ OnGossipSelectCode() [2/4]

bool ScriptMgr::OnGossipSelectCode ( Player player,
GameObject go,
uint32  sender,
uint32  action,
const char *  code 
)
62{
63 ASSERT(player);
64 ASSERT(go);
65 ASSERT(code);
66
67 auto ret = IsValidBoolScript<AllGameObjectScript>([&](AllGameObjectScript* script)
68 {
69 return script->CanGameObjectGossipSelectCode(player, go, sender, action, code);
70 });
71
72 if (ret && *ret)
73 {
74 return true;
75 }
76
78 return tempScript ? tempScript->OnGossipSelectCode(player, go, sender, action, code) : false;
79}
virtual bool CanGameObjectGossipSelectCode(Player *, GameObject *, uint32, uint32, const char *)
Definition: ScriptMgr.h:694

References ASSERT, AllGameObjectScript::CanGameObjectGossipSelectCode(), ScriptRegistry< TScript >::GetScriptById(), and GameObject::GetScriptId().

◆ OnGossipSelectCode() [3/4]

void ScriptMgr::OnGossipSelectCode ( Player player,
Item item,
uint32  sender,
uint32  action,
const char *  code 
)
128{
129 ASSERT(player);
130 ASSERT(item);
131
132 ExecuteScript<AllItemScript>([&](AllItemScript* script)
133 {
134 script->OnItemGossipSelectCode(player, item, sender, action, code);
135 });
136
137 if (auto tempScript = ScriptRegistry<ItemScript>::GetScriptById(item->GetScriptId()))
138 {
139 tempScript->OnGossipSelectCode(player, item, sender, action, code);
140 }
141}
virtual void OnItemGossipSelectCode(Player *, Item *, uint32, uint32, const char *)
Definition: ScriptMgr.h:652

References ASSERT, Item::GetScriptId(), and AllItemScript::OnItemGossipSelectCode().

◆ OnGossipSelectCode() [4/4]

void ScriptMgr::OnGossipSelectCode ( Player player,
uint32  menu_id,
uint32  sender,
uint32  action,
const char *  code 
)
38{
39 ExecuteScript<PlayerScript>([&](PlayerScript* script)
40 {
41 script->OnGossipSelectCode(player, menu_id, sender, action, code);
42 });
43}
virtual void OnGossipSelectCode(Player *, uint32, uint32, uint32, const char *)
Definition: ScriptMgr.h:1152

References PlayerScript::OnGossipSelectCode().

◆ OnGrayLevelCalculation()

void ScriptMgr::OnGrayLevelCalculation ( uint8 grayLevel,
uint8  playerLevel 
)
30{
31 ExecuteScript<FormulaScript>([&](FormulaScript* script)
32 {
33 script->OnGrayLevelCalculation(grayLevel, playerLevel);
34 });
35}
virtual void OnGrayLevelCalculation(uint8 &, uint8)
Definition: ScriptMgr.h:259

References FormulaScript::OnGrayLevelCalculation().

◆ OnGroupAddMember()

void ScriptMgr::OnGroupAddMember ( Group group,
ObjectGuid  guid 
)
22{
23 ASSERT(group);
24
25 ExecuteScript<GroupScript>([&](GroupScript* script)
26 {
27 script->OnAddMember(group, guid);
28 });
29}
virtual void OnAddMember(Group *, ObjectGuid)
Definition: ScriptMgr.h:1540

References ASSERT, and GroupScript::OnAddMember().

◆ OnGroupChangeLeader()

void ScriptMgr::OnGroupChangeLeader ( Group group,
ObjectGuid  newLeaderGuid,
ObjectGuid  oldLeaderGuid 
)
52{
53 ASSERT(group);
54
55 ExecuteScript<GroupScript>([&](GroupScript* script)
56 {
57 script->OnChangeLeader(group, newLeaderGuid, oldLeaderGuid);
58 });
59}
virtual void OnChangeLeader(Group *, ObjectGuid, ObjectGuid)
Definition: ScriptMgr.h:1549

References ASSERT, and GroupScript::OnChangeLeader().

◆ OnGroupDisband()

void ScriptMgr::OnGroupDisband ( Group group)
62{
63 ASSERT(group);
64
65 ExecuteScript<GroupScript>([&](GroupScript* script)
66 {
67 script->OnDisband(group);
68 });
69}
virtual void OnDisband(Group *)
Definition: ScriptMgr.h:1552

References ASSERT, and GroupScript::OnDisband().

◆ OnGroupInviteMember()

void ScriptMgr::OnGroupInviteMember ( Group group,
ObjectGuid  guid 
)
32{
33 ASSERT(group);
34
35 ExecuteScript<GroupScript>([&](GroupScript* script)
36 {
37 script->OnInviteMember(group, guid);
38 });
39}
virtual void OnInviteMember(Group *, ObjectGuid)
Definition: ScriptMgr.h:1543

References ASSERT, and GroupScript::OnInviteMember().

◆ OnGroupRateCalculation()

void ScriptMgr::OnGroupRateCalculation ( float &  rate,
uint32  count,
bool  isRaid 
)
73{
74 ExecuteScript<FormulaScript>([&](FormulaScript* script)
75 {
76 script->OnGroupRateCalculation(rate, count, isRaid);
77 });
78}
virtual void OnGroupRateCalculation(float &, uint32, bool)
Definition: ScriptMgr.h:274

References FormulaScript::OnGroupRateCalculation().

◆ OnGroupRemoveMember()

void ScriptMgr::OnGroupRemoveMember ( Group group,
ObjectGuid  guid,
RemoveMethod  method,
ObjectGuid  kicker,
const char *  reason 
)
42{
43 ASSERT(group);
44
45 ExecuteScript<GroupScript>([&](GroupScript* script)
46 {
47 script->OnRemoveMember(group, guid, method, kicker, reason);
48 });
49}
virtual void OnRemoveMember(Group *, ObjectGuid, RemoveMethod, ObjectGuid, const char *)
Definition: ScriptMgr.h:1546

References ASSERT, and GroupScript::OnRemoveMember().

◆ OnGroupRollRewardItem()

void ScriptMgr::OnGroupRollRewardItem ( Player player,
Item item,
uint32  count,
RollVote  voteType,
Roll roll 
)
610{
611 ExecuteScript<PlayerScript>([&](PlayerScript* script)
612 {
613 script->OnGroupRollRewardItem(player, item, count, voteType, roll);
614 });
615}
virtual void OnGroupRollRewardItem(Player *, Item *, uint32, RollVote, Roll *)
Definition: ScriptMgr.h:1194

References PlayerScript::OnGroupRollRewardItem().

◆ OnGuildAddMember()

void ScriptMgr::OnGuildAddMember ( Guild guild,
Player player,
uint8 plRank 
)
22{
23 ExecuteScript<GuildScript>([&](GuildScript* script)
24 {
25 script->OnAddMember(guild, player, plRank);
26 });
27}
virtual void OnAddMember(Guild *, Player *, uint8 &)
Definition: ScriptMgr.h:1497

References GuildScript::OnAddMember().

◆ OnGuildBankEvent()

void ScriptMgr::OnGuildBankEvent ( Guild guild,
uint8  eventType,
uint8  tabId,
ObjectGuid::LowType  playerGuid,
uint32  itemOrMoney,
uint16  itemStackCount,
uint8  destTabId 
)
103{
104 ExecuteScript<GuildScript>([&](GuildScript* script)
105 {
106 script->OnBankEvent(guild, eventType, tabId, playerGuid, itemOrMoney, itemStackCount, destTabId);
107 });
108}
virtual void OnBankEvent(Guild *, uint8, uint8, ObjectGuid::LowType, uint32, uint16, uint8)
Definition: ScriptMgr.h:1526

References GuildScript::OnBankEvent().

◆ OnGuildCreate()

void ScriptMgr::OnGuildCreate ( Guild guild,
Player leader,
const std::string &  name 
)
54{
55 ExecuteScript<GuildScript>([&](GuildScript* script)
56 {
57 script->OnCreate(guild, leader, name);
58 });
59}
virtual void OnCreate(Guild *, Player *, const std::string &)
Definition: ScriptMgr.h:1509

References GuildScript::OnCreate().

◆ OnGuildDisband()

void ScriptMgr::OnGuildDisband ( Guild guild)
62{
63 ExecuteScript<GuildScript>([&](GuildScript* script)
64 {
65 script->OnDisband(guild);
66 });
67}
virtual void OnDisband(Guild *)
Definition: ScriptMgr.h:1512

References GuildScript::OnDisband().

◆ OnGuildEvent()

void ScriptMgr::OnGuildEvent ( Guild guild,
uint8  eventType,
ObjectGuid::LowType  playerGuid1,
ObjectGuid::LowType  playerGuid2,
uint8  newRank 
)
95{
96 ExecuteScript<GuildScript>([&](GuildScript* script)
97 {
98 script->OnEvent(guild, eventType, playerGuid1, playerGuid2, newRank);
99 });
100}
virtual void OnEvent(Guild *, uint8, ObjectGuid::LowType, ObjectGuid::LowType, uint8)
Definition: ScriptMgr.h:1524

References GuildScript::OnEvent().

◆ OnGuildInfoChanged()

void ScriptMgr::OnGuildInfoChanged ( Guild guild,
const std::string &  newInfo 
)
46{
47 ExecuteScript<GuildScript>([&](GuildScript* script)
48 {
49 script->OnInfoChanged(guild, newInfo);
50 });
51}
virtual void OnInfoChanged(Guild *, const std::string &)
Definition: ScriptMgr.h:1506

References GuildScript::OnInfoChanged().

◆ OnGuildItemMove()

void ScriptMgr::OnGuildItemMove ( Guild guild,
Player player,
Item pItem,
bool  isSrcBank,
uint8  srcContainer,
uint8  srcSlotId,
bool  isDestBank,
uint8  destContainer,
uint8  destSlotId 
)
87{
88 ExecuteScript<GuildScript>([&](GuildScript* script)
89 {
90 script->OnItemMove(guild, player, pItem, isSrcBank, srcContainer, srcSlotId, isDestBank, destContainer, destSlotId);
91 });
92}
virtual void OnItemMove(Guild *, Player *, Item *, bool, uint8, uint8, bool, uint8, uint8)
Definition: ScriptMgr.h:1521

References GuildScript::OnItemMove().

◆ OnGuildMemberDepositMoney()

void ScriptMgr::OnGuildMemberDepositMoney ( Guild guild,
Player player,
uint32 amount 
)
78{
79 ExecuteScript<GuildScript>([&](GuildScript* script)
80 {
81 script->OnMemberDepositMoney(guild, player, amount);
82 });
83}
virtual void OnMemberDepositMoney(Guild *, Player *, uint32 &)
Definition: ScriptMgr.h:1518

References GuildScript::OnMemberDepositMoney().

◆ OnGuildMemberWitdrawMoney()

void ScriptMgr::OnGuildMemberWitdrawMoney ( Guild guild,
Player player,
uint32 amount,
bool  isRepair 
)
70{
71 ExecuteScript<GuildScript>([&](GuildScript* script)
72 {
73 script->OnMemberWitdrawMoney(guild, player, amount, isRepair);
74 });
75}
virtual void OnMemberWitdrawMoney(Guild *, Player *, uint32 &, bool)
Definition: ScriptMgr.h:1515

References GuildScript::OnMemberWitdrawMoney().

◆ OnGuildMOTDChanged()

void ScriptMgr::OnGuildMOTDChanged ( Guild guild,
const std::string &  newMotd 
)
38{
39 ExecuteScript<GuildScript>([&](GuildScript* script)
40 {
41 script->OnMOTDChanged(guild, newMotd);
42 });
43}
virtual void OnMOTDChanged(Guild *, const std::string &)
Definition: ScriptMgr.h:1503

References GuildScript::OnMOTDChanged().

◆ OnGuildRemoveMember()

void ScriptMgr::OnGuildRemoveMember ( Guild guild,
Player player,
bool  isDisbanding,
bool  isKicked 
)
30{
31 ExecuteScript<GuildScript>([&](GuildScript* script)
32 {
33 script->OnRemoveMember(guild, player, isDisbanding, isKicked);
34 });
35}
virtual void OnRemoveMember(Guild *, Player *, bool, bool)
Definition: ScriptMgr.h:1500

References GuildScript::OnRemoveMember().

◆ OnHandleDevCommand()

void ScriptMgr::OnHandleDevCommand ( Player player,
bool &  enable 
)
22{
23 ExecuteScript<CommandSC>([&](CommandSC* script)
24 {
25 script->OnHandleDevCommand(player, enable);
26 });
27}
virtual void OnHandleDevCommand(Player *, bool &)
Definition: ScriptMgr.h:1930

References CommandSC::OnHandleDevCommand().

◆ OnHeal()

void ScriptMgr::OnHeal ( Unit healer,
Unit reciever,
uint32 gain 
)
41{
42 ExecuteScript<UnitScript>([&](UnitScript* script)
43 {
44 script->OnHeal(healer, reciever, gain);
45 });
46}
virtual void OnHeal(Unit *, Unit *, uint32 &)
Definition: ScriptMgr.h:419

References UnitScript::OnHeal().

◆ OnHonorCalculation()

void ScriptMgr::OnHonorCalculation ( float &  honor,
uint8  level,
float  multiplier 
)
22{
23 ExecuteScript<FormulaScript>([&](FormulaScript* script)
24 {
25 script->OnHonorCalculation(honor, level, multiplier);
26 });
27}
virtual void OnHonorCalculation(float &, uint8, float)
Definition: ScriptMgr.h:256

References FormulaScript::OnHonorCalculation().

◆ OnInitializeLockedDungeons()

void ScriptMgr::OnInitializeLockedDungeons ( Player player,
uint8 level,
uint32 lockData,
lfg::LFGDungeonData const *  dungeon 
)
97{
98 ExecuteScript<GlobalScript>([&](GlobalScript* script)
99 {
100 script->OnInitializeLockedDungeons(player, level, lockData, dungeon);
101 });
102}
virtual void OnInitializeLockedDungeons(Player *, uint8 &, uint32 &, lfg::LFGDungeonData const *)
Definition: ScriptMgr.h:1575

References GlobalScript::OnInitializeLockedDungeons().

◆ OnInitStatsForLevel()

void ScriptMgr::OnInitStatsForLevel ( Guardian guardian,
uint8  petlevel 
)
22{
23 ExecuteScript<PetScript>([&](PetScript* script)
24 {
25 script->OnInitStatsForLevel(guardian, petlevel);
26 });
27}
virtual void OnInitStatsForLevel(Guardian *, uint8)
Definition: ScriptMgr.h:1832

References PetScript::OnInitStatsForLevel().

◆ OnInstall()

void ScriptMgr::OnInstall ( Vehicle veh)
22{
23 ASSERT(veh);
24 ASSERT(veh->GetBase()->GetTypeId() == TYPEID_UNIT);
25
27 {
28 tempScript->OnInstall(veh);
29 }
30}

References ASSERT, Vehicle::GetBase(), Creature::GetScriptId(), Object::GetTypeId(), Object::ToCreature(), and TYPEID_UNIT.

◆ OnInstallAccessory()

void ScriptMgr::OnInstallAccessory ( Vehicle veh,
Creature accessory 
)
55{
56 ASSERT(veh);
57 ASSERT(veh->GetBase()->GetTypeId() == TYPEID_UNIT);
58 ASSERT(accessory);
59
61 {
62 tempScript->OnInstallAccessory(veh, accessory);
63 }
64}

References ASSERT, Vehicle::GetBase(), Creature::GetScriptId(), Object::GetTypeId(), Object::ToCreature(), and TYPEID_UNIT.

◆ OnInstanceIdRemoved()

void ScriptMgr::OnInstanceIdRemoved ( uint32  instanceId)

Called when an instance Id is deleted, usually because it expired or no players are bound to it anymore.

Parameters
instanceIdThe unique id of the instance
187{
188 ExecuteScript<GlobalScript>([&](GlobalScript* script)
189 {
190 script->OnInstanceIdRemoved(instanceId);
191 });
192}
virtual void OnInstanceIdRemoved(uint32)
Definition: ScriptMgr.h:1600

References GlobalScript::OnInstanceIdRemoved().

◆ OnInstanceSave()

void ScriptMgr::OnInstanceSave ( InstanceSave instanceSave)
163{
164 ExecuteScript<MiscScript>([&](MiscScript* script)
165 {
166 script->OnInstanceSave(instanceSave);
167 });
168}
virtual void OnInstanceSave(InstanceSave *)
Definition: ScriptMgr.h:1909

References MiscScript::OnInstanceSave().

◆ OnIsAffectedBySpellModCheck()

bool ScriptMgr::OnIsAffectedBySpellModCheck ( SpellInfo const *  affectSpell,
SpellInfo const *  checkSpell,
SpellModifier const *  mod 
)
129{
130 auto ret = IsValidBoolScript<GlobalScript>([&](GlobalScript* script)
131 {
132 return !script->OnIsAffectedBySpellModCheck(affectSpell, checkSpell, mod);
133 });
134
135 if (ret && *ret)
136 {
137 return false;
138 }
139
140 return true;
141}
virtual bool OnIsAffectedBySpellModCheck(SpellInfo const *, SpellInfo const *, SpellModifier const *)
Definition: ScriptMgr.h:1588

References GlobalScript::OnIsAffectedBySpellModCheck().

◆ OnIsFFAPvP()

void ScriptMgr::OnIsFFAPvP ( Player player,
bool &  result 
)
1284{
1285 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1286 {
1287 script->OnIsFFAPvP(player, result);
1288 });
1289}
virtual void OnIsFFAPvP(Player *, bool &)
Definition: ScriptMgr.h:1323

References PlayerScript::OnIsFFAPvP().

◆ OnIsPvP()

void ScriptMgr::OnIsPvP ( Player player,
bool &  result 
)
1300{
1301 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1302 {
1303 script->OnIsPvP(player, result);
1304 });
1305}
virtual void OnIsPvP(Player *, bool &)
Definition: ScriptMgr.h:1328

References PlayerScript::OnIsPvP().

◆ OnItemCreate()

void ScriptMgr::OnItemCreate ( Item item,
ItemTemplate const *  itemProto,
Player const *  owner 
)
22{
23 ExecuteScript<MiscScript>([&](MiscScript* script)
24 {
25 script->OnItemCreate(item, itemProto, owner);
26 });
27}
virtual void OnItemCreate(Item *, ItemTemplate const *, Player const *)
Definition: ScriptMgr.h:1893

References MiscScript::OnItemCreate().

◆ OnItemExpire()

bool ScriptMgr::OnItemExpire ( Player player,
ItemTemplate const *  proto 
)
63{
64 ASSERT(player);
65 ASSERT(proto);
66
67 auto ret = IsValidBoolScript<AllItemScript>([&](AllItemScript* script)
68 {
69 return !script->CanItemExpire(player, proto);
70 });
71
72 if (ret && *ret)
73 {
74 return false;
75 }
76
77 auto tempScript = ScriptRegistry<ItemScript>::GetScriptById(proto->ScriptId);
78 return tempScript ? tempScript->OnExpire(player, proto) : false;
79}
virtual bool CanItemExpire(Player *, ItemTemplate const *)
Definition: ScriptMgr.h:646

References ASSERT, AllItemScript::CanItemExpire(), ScriptRegistry< TScript >::GetScriptById(), and ItemTemplate::ScriptId.

◆ OnItemRemove()

bool ScriptMgr::OnItemRemove ( Player player,
Item item 
)
82{
83 ASSERT(player);
84 ASSERT(item);
85
86 auto ret = IsValidBoolScript<AllItemScript>([&](AllItemScript* script)
87 {
88 return !script->CanItemRemove(player, item);
89 });
90
91 if (ret && *ret)
92 {
93 return false;
94 }
95
97 return tempScript ? tempScript->OnRemove(player, item) : false;
98}
virtual bool CanItemRemove(Player *, Item *)
Definition: ScriptMgr.h:643

References ASSERT, AllItemScript::CanItemRemove(), ScriptRegistry< TScript >::GetScriptById(), and Item::GetScriptId().

◆ OnItemRoll()

bool ScriptMgr::OnItemRoll ( Player const *  player,
LootStoreItem const *  LootStoreItem,
float &  chance,
Loot loot,
LootStore const &  store 
)
67{
68 auto ret = IsValidBoolScript<GlobalScript>([&](GlobalScript* script)
69 {
70 return !script->OnItemRoll(player, lootStoreItem, chance, loot, store);
71 });
72
73 if (ret && *ret)
74 {
75 return false;
76 }
77
78 return true;
79}
virtual bool OnItemRoll(Player const *, LootStoreItem const *, float &, Loot &, LootStore const &)
Definition: ScriptMgr.h:1573

References GlobalScript::OnItemRoll().

◆ OnItemUse()

bool ScriptMgr::OnItemUse ( Player player,
Item item,
SpellCastTargets const &  targets 
)
44{
45 ASSERT(player);
46 ASSERT(item);
47
48 auto ret = IsValidBoolScript<AllItemScript>([&](AllItemScript* script)
49 {
50 return script->CanItemUse(player, item, targets);
51 });
52
53 if (ret && *ret)
54 {
55 return true;
56 }
57
59 return tempScript ? tempScript->OnUse(player, item, targets) : false;
60}
virtual bool CanItemUse(Player *, Item *, SpellCastTargets const &)
Definition: ScriptMgr.h:640

References ASSERT, AllItemScript::CanItemUse(), ScriptRegistry< TScript >::GetScriptById(), and Item::GetScriptId().

◆ OnLastIpUpdate()

void ScriptMgr::OnLastIpUpdate ( uint32  accountId,
std::string  ip 
)
38{
39 ExecuteScript<AccountScript>([&](AccountScript* script)
40 {
41 script->OnLastIpUpdate(accountId, ip);
42 });
43}
virtual void OnLastIpUpdate(uint32, std::string)
Definition: ScriptMgr.h:1467

References AccountScript::OnLastIpUpdate().

◆ OnLoadCustomDatabaseTable()

void ScriptMgr::OnLoadCustomDatabaseTable ( )
30{
31 ExecuteScript<WorldScript>([&](WorldScript* script)
32 {
34 });
35}
virtual void OnLoadCustomDatabaseTable()
Definition: ScriptMgr.h:208

References WorldScript::OnLoadCustomDatabaseTable().

◆ OnLoadGridMap()

void ScriptMgr::OnLoadGridMap ( Map map,
GridMap gmap,
uint32  gx,
uint32  gy 
)
201{
202 ASSERT(map);
203 ASSERT(gmap);
204
205 ForeachMaps<WorldMapScript>(map,
206 [&](WorldMapScript* script)
207 {
208 script->OnLoadGridMap(map, gmap, gx, gy);
209 });
210
211 ForeachMaps<InstanceMapScript>(map,
212 [&](InstanceMapScript* script)
213 {
214 script->OnLoadGridMap((InstanceMap*)map, gmap, gx, gy);
215 });
216
217 ForeachMaps<BattlegroundMapScript>(map,
218 [&](BattlegroundMapScript* script)
219 {
220 script->OnLoadGridMap((BattlegroundMap*)map, gmap, gx, gy);
221 });
222}
virtual void OnLoadGridMap(TMap *, GridMap *, uint32, uint32)
Definition: ScriptMgr.h:313

References ASSERT, and MapScript< TMap >::OnLoadGridMap().

◆ OnLoadSpellCustomAttr()

void ScriptMgr::OnLoadSpellCustomAttr ( SpellInfo spell)
159{
160 ExecuteScript<GlobalScript>([&](GlobalScript* script)
161 {
162 script->OnLoadSpellCustomAttr(spell);
163 });
164}
virtual void OnLoadSpellCustomAttr(SpellInfo *)
Definition: ScriptMgr.h:1594

References GlobalScript::OnLoadSpellCustomAttr().

◆ OnLootItem()

void ScriptMgr::OnLootItem ( Player player,
Item item,
uint32  count,
ObjectGuid  lootguid 
)
578{
579 ExecuteScript<PlayerScript>([&](PlayerScript* script)
580 {
581 script->OnLootItem(player, item, count, lootguid);
582 });
583}
virtual void OnLootItem(Player *, Item *, uint32, ObjectGuid)
Definition: ScriptMgr.h:1182

References PlayerScript::OnLootItem().

◆ OnLootMoney()

void ScriptMgr::OnLootMoney ( Player player,
uint32  gold 
)
22{
23 ASSERT(player);
24
25 ExecuteScript<LootScript>([&](LootScript* script)
26 {
27 script->OnLootMoney(player, gold);
28 });
29}
Definition: ScriptMgr.h:2002
virtual void OnLootMoney(Player *, uint32)
This hook called before money loot.
Definition: ScriptMgr.h:2017

References ASSERT, and LootScript::OnLootMoney().

◆ OnMapUpdate()

void ScriptMgr::OnMapUpdate ( Map map,
uint32  diff 
)
312{
313 ASSERT(map);
314
315 ExecuteScript<AllMapScript>([&](AllMapScript* script)
316 {
317 script->OnMapUpdate(map, diff);
318 });
319
320 ForeachMaps<WorldMapScript>(map,
321 [&](WorldMapScript* script)
322 {
323 script->OnUpdate(map, diff);
324 });
325
326 ForeachMaps<InstanceMapScript>(map,
327 [&](InstanceMapScript* script)
328 {
329 script->OnUpdate((InstanceMap*)map, diff);
330 });
331
332 ForeachMaps<BattlegroundMapScript>(map,
333 [&](BattlegroundMapScript* script)
334 {
335 script->OnUpdate((BattlegroundMap*)map, diff);
336 });
337}
void OnUpdate(TMap *, uint32) override
Definition: ScriptMgr.h:325
virtual void OnMapUpdate(Map *, uint32)
This hook called before updating map.
Definition: ScriptMgr.h:546

References ASSERT, and AllMapScript::OnMapUpdate().

◆ OnMotdChange()

void ScriptMgr::OnMotdChange ( std::string &  newMotd)
62{
63 ExecuteScript<WorldScript>([&](WorldScript* script)
64 {
65 script->OnMotdChange(newMotd);
66 });
67}
virtual void OnMotdChange(std::string &)
Definition: ScriptMgr.h:214

References WorldScript::OnMotdChange().

◆ OnNetworkStart()

void ScriptMgr::OnNetworkStart ( )
22{
23 ExecuteScript<ServerScript>([&](ServerScript* script)
24 {
25 script->OnNetworkStart();
26 });
27}
virtual void OnNetworkStart()
Definition: ScriptMgr.h:163

References ServerScript::OnNetworkStart().

◆ OnNetworkStop()

void ScriptMgr::OnNetworkStop ( )
30{
31 ExecuteScript<ServerScript>([&](ServerScript* script)
32 {
33 script->OnNetworkStop();
34 });
35}
virtual void OnNetworkStop()
Definition: ScriptMgr.h:166

References ServerScript::OnNetworkStop().

◆ OnOpenStateChange()

void ScriptMgr::OnOpenStateChange ( bool  open)
22{
23 ExecuteScript<WorldScript>([&](WorldScript* script)
24 {
25 script->OnOpenStateChange(open);
26 });
27}
virtual void OnOpenStateChange(bool)
Definition: ScriptMgr.h:202

References WorldScript::OnOpenStateChange().

◆ OnPasswordChange()

void ScriptMgr::OnPasswordChange ( uint32  accountId)
70{
71 ExecuteScript<AccountScript>([&](AccountScript* script)
72 {
73 script->OnPasswordChange(accountId);
74 });
75}
virtual void OnPasswordChange(uint32)
Definition: ScriptMgr.h:1479

References AccountScript::OnPasswordChange().

◆ OnPetAddToWorld()

void ScriptMgr::OnPetAddToWorld ( Pet pet)
83{
84 ASSERT(pet);
85
86 ExecuteScript<PetScript>([&](PetScript* script)
87 {
88 script->OnPetAddToWorld(pet);
89 });
90}
virtual void OnPetAddToWorld(Pet *)
This hook called after add pet in world.
Definition: ScriptMgr.h:1847

References ASSERT, and PetScript::OnPetAddToWorld().

◆ OnPlayerAddToBattleground()

void ScriptMgr::OnPlayerAddToBattleground ( Player player,
Battleground bg 
)
420{
421 ExecuteScript<PlayerScript>([&](PlayerScript* script)
422 {
423 script->OnAddToBattleground(player, bg);
424 });
425}
virtual void OnAddToBattleground(Player *, Battleground *)
Definition: ScriptMgr.h:1122

References PlayerScript::OnAddToBattleground().

◆ OnPlayerBeingCharmed()

void ScriptMgr::OnPlayerBeingCharmed ( Player player,
Unit charmer,
uint32  oldFactionId,
uint32  newFactionId 
)
506{
507 ExecuteScript<PlayerScript>([&](PlayerScript* script)
508 {
509 script->OnBeingCharmed(player, charmer, oldFactionId, newFactionId);
510 });
511}
virtual void OnBeingCharmed(Player *, Unit *, uint32, uint32)
Definition: ScriptMgr.h:1155

References PlayerScript::OnBeingCharmed().

◆ OnPlayerBindToInstance()

void ScriptMgr::OnPlayerBindToInstance ( Player player,
Difficulty  difficulty,
uint32  mapid,
bool  permanent 
)
373{
374 ExecuteScript<PlayerScript>([&](PlayerScript* script)
375 {
376 script->OnBindToInstance(player, difficulty, mapid, permanent);
377 });
378}
virtual void OnBindToInstance(Player *, Difficulty, uint32, bool)
Definition: ScriptMgr.h:1104

References PlayerScript::OnBindToInstance().

◆ OnPlayerChat() [1/5]

void ScriptMgr::OnPlayerChat ( Player player,
uint32  type,
uint32  lang,
std::string &  msg 
)
229{
230 ExecuteScript<PlayerScript>([&](PlayerScript* script)
231 {
232 script->OnChat(player, type, lang, msg);
233 });
234}
virtual void OnChat(Player *, uint32, uint32, std::string &)
Definition: ScriptMgr.h:1062

References PlayerScript::OnChat().

◆ OnPlayerChat() [2/5]

void ScriptMgr::OnPlayerChat ( Player player,
uint32  type,
uint32  lang,
std::string &  msg,
Channel channel 
)
269{
270 ExecuteScript<PlayerScript>([&](PlayerScript* script)
271 {
272 script->OnChat(player, type, lang, msg, channel);
273 });
274}

References PlayerScript::OnChat().

◆ OnPlayerChat() [3/5]

void ScriptMgr::OnPlayerChat ( Player player,
uint32  type,
uint32  lang,
std::string &  msg,
Group group 
)
253{
254 ExecuteScript<PlayerScript>([&](PlayerScript* script)
255 {
256 script->OnChat(player, type, lang, msg, group);
257 });
258}

References PlayerScript::OnChat().

◆ OnPlayerChat() [4/5]

void ScriptMgr::OnPlayerChat ( Player player,
uint32  type,
uint32  lang,
std::string &  msg,
Guild guild 
)
261{
262 ExecuteScript<PlayerScript>([&](PlayerScript* script)
263 {
264 script->OnChat(player, type, lang, msg, guild);
265 });
266}

References PlayerScript::OnChat().

◆ OnPlayerChat() [5/5]

void ScriptMgr::OnPlayerChat ( Player player,
uint32  type,
uint32  lang,
std::string &  msg,
Player receiver 
)
245{
246 ExecuteScript<PlayerScript>([&](PlayerScript* script)
247 {
248 script->OnChat(player, type, lang, msg, receiver);
249 });
250}

References PlayerScript::OnChat().

◆ OnPlayerCompleteQuest()

void ScriptMgr::OnPlayerCompleteQuest ( Player player,
Quest const *  quest 
)
46{
47 ExecuteScript<PlayerScript>([&](PlayerScript* script)
48 {
49 script->OnPlayerCompleteQuest(player, quest);
50 });
51}
virtual void OnPlayerCompleteQuest(Player *, Quest const *)
Definition: ScriptMgr.h:1001

References PlayerScript::OnPlayerCompleteQuest().

◆ OnPlayerCreate()

void ScriptMgr::OnPlayerCreate ( Player player)
341{
342 ExecuteScript<PlayerScript>([&](PlayerScript* script)
343 {
344 script->OnCreate(player);
345 });
346}
virtual void OnCreate(Player *)
Definition: ScriptMgr.h:1092

References PlayerScript::OnCreate().

◆ OnPlayerDelete()

void ScriptMgr::OnPlayerDelete ( ObjectGuid  guid,
uint32  accountId 
)
357{
358 ExecuteScript<PlayerScript>([&](PlayerScript* script)
359 {
360 script->OnDelete(guid, accountId);
361 });
362}
virtual void OnDelete(ObjectGuid, uint32)
Definition: ScriptMgr.h:1095

References PlayerScript::OnDelete().

◆ OnPlayerDuelEnd()

void ScriptMgr::OnPlayerDuelEnd ( Player winner,
Player loser,
DuelCompleteType  type 
)
221{
222 ExecuteScript<PlayerScript>([&](PlayerScript* script)
223 {
224 script->OnDuelEnd(winner, loser, type);
225 });
226}
virtual void OnDuelEnd(Player *, Player *, DuelCompleteType)
Definition: ScriptMgr.h:1059

References PlayerScript::OnDuelEnd().

◆ OnPlayerDuelRequest()

void ScriptMgr::OnPlayerDuelRequest ( Player target,
Player challenger 
)
205{
206 ExecuteScript<PlayerScript>([&](PlayerScript* script)
207 {
208 script->OnDuelRequest(target, challenger);
209 });
210}
virtual void OnDuelRequest(Player *, Player *)
Definition: ScriptMgr.h:1053

References PlayerScript::OnDuelRequest().

◆ OnPlayerDuelStart()

void ScriptMgr::OnPlayerDuelStart ( Player player1,
Player player2 
)
213{
214 ExecuteScript<PlayerScript>([&](PlayerScript* script)
215 {
216 script->OnDuelStart(player1, player2);
217 });
218}
virtual void OnDuelStart(Player *, Player *)
Definition: ScriptMgr.h:1056

References PlayerScript::OnDuelStart().

◆ OnPlayerEmote()

void ScriptMgr::OnPlayerEmote ( Player player,
uint32  emote 
)
277{
278 ExecuteScript<PlayerScript>([&](PlayerScript* script)
279 {
280 script->OnEmote(player, emote);
281 });
282}
virtual void OnEmote(Player *, uint32)
Definition: ScriptMgr.h:1075

References PlayerScript::OnEmote().

◆ OnPlayerEnterCombat()

void ScriptMgr::OnPlayerEnterCombat ( Player player,
Unit enemy 
)
1507{
1508 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1509 {
1510 script->OnPlayerEnterCombat(player, enemy);
1511 });
1512}
virtual void OnPlayerEnterCombat(Player *, Unit *)
This hook called after player entering combat.
Definition: ScriptMgr.h:1429

References PlayerScript::OnPlayerEnterCombat().

◆ OnPlayerEnterMap()

void ScriptMgr::OnPlayerEnterMap ( Map map,
Player player 
)
249{
250 ASSERT(map);
251 ASSERT(player);
252
253 ExecuteScript<AllMapScript>([&](AllMapScript* script)
254 {
255 script->OnPlayerEnterAll(map, player);
256 });
257
258 ExecuteScript<PlayerScript>([&](PlayerScript* script)
259 {
260 script->OnMapChanged(player);
261 });
262
263 ForeachMaps<WorldMapScript>(map,
264 [&](WorldMapScript* script)
265 {
266 script->OnPlayerEnter(map, player);
267 });
268
269 ForeachMaps<InstanceMapScript>(map,
270 [&](InstanceMapScript* script)
271 {
272 script->OnPlayerEnter((InstanceMap*)map, player);
273 });
274
275 ForeachMaps<BattlegroundMapScript>(map,
276 [&](BattlegroundMapScript* script)
277 {
278 script->OnPlayerEnter((BattlegroundMap*)map, player);
279 });
280}
virtual void OnPlayerEnter(TMap *, Player *)
Definition: ScriptMgr.h:319
virtual void OnPlayerEnterAll(Map *, Player *)
This hook called when a player enters any Map.
Definition: ScriptMgr.h:497
virtual void OnMapChanged(Player *)
Definition: ScriptMgr.h:1113

References ASSERT, and AllMapScript::OnPlayerEnterAll().

◆ OnPlayerFailedDelete()

void ScriptMgr::OnPlayerFailedDelete ( ObjectGuid  guid,
uint32  accountId 
)
365{
366 ExecuteScript<PlayerScript>([&](PlayerScript* script)
367 {
368 script->OnFailedDelete(guid, accountId);
369 });
370}
virtual void OnFailedDelete(ObjectGuid, uint32)
Definition: ScriptMgr.h:1098

References PlayerScript::OnFailedDelete().

◆ OnPlayerForgotSpell()

void ScriptMgr::OnPlayerForgotSpell ( Player player,
uint32  spellID 
)
197{
198 ExecuteScript<PlayerScript>([&](PlayerScript* script)
199 {
200 script->OnForgotSpell(player, spellID);
201 });
202}
virtual void OnForgotSpell(Player *, uint32)
Definition: ScriptMgr.h:1050

References PlayerScript::OnForgotSpell().

◆ OnPlayerFreeTalentPointsChanged()

void ScriptMgr::OnPlayerFreeTalentPointsChanged ( Player player,
uint32  newPoints 
)
126{
127 ExecuteScript<PlayerScript>([&](PlayerScript* script)
128 {
129 script->OnFreeTalentPointsChanged(player, points);
130 });
131}
virtual void OnFreeTalentPointsChanged(Player *, uint32)
Definition: ScriptMgr.h:1022

References PlayerScript::OnFreeTalentPointsChanged().

◆ OnPlayerJoinArena()

void ScriptMgr::OnPlayerJoinArena ( Player player)
546{
547 ExecuteScript<PlayerScript>([&](PlayerScript* script)
548 {
549 script->OnPlayerJoinArena(player);
550 });
551}
virtual void OnPlayerJoinArena(Player *)
Definition: ScriptMgr.h:1170

References PlayerScript::OnPlayerJoinArena().

◆ OnPlayerJoinBG()

void ScriptMgr::OnPlayerJoinBG ( Player player)
538{
539 ExecuteScript<PlayerScript>([&](PlayerScript* script)
540 {
541 script->OnPlayerJoinBG(player);
542 });
543}
virtual void OnPlayerJoinBG(Player *)
Definition: ScriptMgr.h:1167

References PlayerScript::OnPlayerJoinBG().

◆ OnPlayerKilledByCreature()

void ScriptMgr::OnPlayerKilledByCreature ( Creature killer,
Player killed 
)
110{
111 ExecuteScript<PlayerScript>([&](PlayerScript* script)
112 {
113 script->OnPlayerKilledByCreature(killer, killed);
114 });
115}
virtual void OnPlayerKilledByCreature(Creature *, Player *)
Definition: ScriptMgr.h:1016

References PlayerScript::OnPlayerKilledByCreature().

◆ OnPlayerLearnSpell()

void ScriptMgr::OnPlayerLearnSpell ( Player player,
uint32  spellID 
)
189{
190 ExecuteScript<PlayerScript>([&](PlayerScript* script)
191 {
192 script->OnLearnSpell(player, spellID);
193 });
194}
virtual void OnLearnSpell(Player *, uint32)
Definition: ScriptMgr.h:1047

References PlayerScript::OnLearnSpell().

◆ OnPlayerLearnTalents()

void ScriptMgr::OnPlayerLearnTalents ( Player player,
uint32  talentId,
uint32  talentRank,
uint32  spellid 
)
1499{
1500 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1501 {
1502 script->OnPlayerLearnTalents(player, talentId, talentRank, spellid);
1503 });
1504}
virtual void OnPlayerLearnTalents(Player *, uint32, uint32, uint32)
This hook called after player learning talents.
Definition: ScriptMgr.h:1421

References PlayerScript::OnPlayerLearnTalents().

◆ OnPlayerLeaveCombat()

void ScriptMgr::OnPlayerLeaveCombat ( Player player)
1515{
1516 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1517 {
1518 script->OnPlayerLeaveCombat(player);
1519 });
1520}
virtual void OnPlayerLeaveCombat(Player *)
This hook called after player leave combat.
Definition: ScriptMgr.h:1436

References PlayerScript::OnPlayerLeaveCombat().

◆ OnPlayerLeaveMap()

void ScriptMgr::OnPlayerLeaveMap ( Map map,
Player player 
)
283{
284 ASSERT(map);
285 ASSERT(player);
286
287 ExecuteScript<AllMapScript>([&](AllMapScript* script)
288 {
289 script->OnPlayerLeaveAll(map, player);
290 });
291
292 ForeachMaps<WorldMapScript>(map,
293 [&](WorldMapScript* script)
294 {
295 script->OnPlayerLeave(map, player);
296 });
297
298 ForeachMaps<InstanceMapScript>(map,
299 [&](InstanceMapScript* script)
300 {
301 script->OnPlayerLeave((InstanceMap*)map, player);
302 });
303
304 ForeachMaps<BattlegroundMapScript>(map,
305 [&](BattlegroundMapScript* script)
306 {
307 script->OnPlayerLeave((BattlegroundMap*)map, player);
308 });
309}
virtual void OnPlayerLeave(TMap *, Player *)
Definition: ScriptMgr.h:322
virtual void OnPlayerLeaveAll(Map *, Player *)
This hook called when a player leave any Map.
Definition: ScriptMgr.h:505

References ASSERT, and AllMapScript::OnPlayerLeaveAll().

◆ OnPlayerLevelChanged()

void ScriptMgr::OnPlayerLevelChanged ( Player player,
uint8  oldLevel 
)
118{
119 ExecuteScript<PlayerScript>([&](PlayerScript* script)
120 {
121 script->OnLevelChanged(player, oldLevel);
122 });
123}
virtual void OnLevelChanged(Player *, uint8)
Definition: ScriptMgr.h:1019

References PlayerScript::OnLevelChanged().

◆ OnPlayerLoadFromDB()

void ScriptMgr::OnPlayerLoadFromDB ( Player player)
325{
326 ExecuteScript<PlayerScript>([&](PlayerScript* script)
327 {
328 script->OnLoadFromDB(player);
329 });
330}
virtual void OnLoadFromDB(Player *)
Definition: ScriptMgr.h:1083

References PlayerScript::OnLoadFromDB().

◆ OnPlayerLogin()

void ScriptMgr::OnPlayerLogin ( Player player)
317{
318 ExecuteScript<PlayerScript>([&](PlayerScript* script)
319 {
320 script->OnLogin(player);
321 });
322}
virtual void OnLogin(Player *)
Definition: ScriptMgr.h:1086

References PlayerScript::OnLogin().

◆ OnPlayerLogout()

void ScriptMgr::OnPlayerLogout ( Player player)
333{
334 ExecuteScript<PlayerScript>([&](PlayerScript* script)
335 {
336 script->OnLogout(player);
337 });
338}
virtual void OnLogout(Player *)
Definition: ScriptMgr.h:1089

References PlayerScript::OnLogout().

◆ OnPlayerMoneyChanged()

void ScriptMgr::OnPlayerMoneyChanged ( Player player,
int32 amount 
)
142{
143 ExecuteScript<PlayerScript>([&](PlayerScript* script)
144 {
145 script->OnMoneyChanged(player, amount);
146 });
147}
virtual void OnMoneyChanged(Player *, int32 &)
Definition: ScriptMgr.h:1032

References PlayerScript::OnMoneyChanged().

◆ OnPlayerMove()

void ScriptMgr::OnPlayerMove ( Player player,
MovementInfo  movementInfo,
uint32  opcode 
)
22{
23 ExecuteScript<MovementHandlerScript>([&](MovementHandlerScript* script)
24 {
25 script->OnPlayerMove(player, movementInfo, opcode);
26 });
27}
Definition: ScriptMgr.h:476
virtual void OnPlayerMove(Player *, MovementInfo, uint32)
Definition: ScriptMgr.h:482

References MovementHandlerScript::OnPlayerMove().

◆ OnPlayerPVPFlagChange()

void ScriptMgr::OnPlayerPVPFlagChange ( Player player,
bool  state 
)
86{
87 ExecuteScript<PlayerScript>([&](PlayerScript* script)
88 {
89 script->OnPlayerPVPFlagChange(player, state);
90 });
91}
virtual void OnPlayerPVPFlagChange(Player *, bool)
Definition: ScriptMgr.h:1007

References PlayerScript::OnPlayerPVPFlagChange().

◆ OnPlayerQueueRandomDungeon()

void ScriptMgr::OnPlayerQueueRandomDungeon ( Player player,
uint32 rDungeonId 
)
428{
429 ExecuteScript<PlayerScript>([&](PlayerScript* script)
430 {
431 script->OnQueueRandomDungeon(player, rDungeonId);
432 });
433}
virtual void OnQueueRandomDungeon(Player *, uint32 &)
Definition: ScriptMgr.h:1125

References PlayerScript::OnQueueRandomDungeon().

◆ OnPlayerReleasedGhost()

void ScriptMgr::OnPlayerReleasedGhost ( Player player)
70{
71 ExecuteScript<PlayerScript>([&](PlayerScript* script)
72 {
73 script->OnPlayerReleasedGhost(player);
74 });
75}
virtual void OnPlayerReleasedGhost(Player *)
Definition: ScriptMgr.h:992

References PlayerScript::OnPlayerReleasedGhost().

◆ OnPlayerRemoveFromBattleground()

void ScriptMgr::OnPlayerRemoveFromBattleground ( Player player,
Battleground bg 
)
436{
437 ExecuteScript<PlayerScript>([&](PlayerScript* script)
438 {
439 script->OnRemoveFromBattleground(player, bg);
440 });
441}
virtual void OnRemoveFromBattleground(Player *, Battleground *)
Definition: ScriptMgr.h:1128

References PlayerScript::OnRemoveFromBattleground().

◆ OnPlayerReputationChange()

bool ScriptMgr::OnPlayerReputationChange ( Player player,
uint32  factionID,
int32 standing,
bool  incremental 
)
166{
167 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
168 {
169 return !script->OnReputationChange(player, factionID, standing, incremental);
170 });
171
172 if (ret && *ret)
173 {
174 return false;
175 }
176
177 return true;
178}
virtual bool OnReputationChange(Player *, uint32, int32 &, bool)
Definition: ScriptMgr.h:1041

References PlayerScript::OnReputationChange().

◆ OnPlayerReputationRankChange()

void ScriptMgr::OnPlayerReputationRankChange ( Player player,
uint32  factionID,
ReputationRank  newRank,
ReputationRank  oldRank,
bool  increased 
)
181{
182 ExecuteScript<PlayerScript>([&](PlayerScript* script)
183 {
184 script->OnReputationRankChange(player, factionID, newRank, oldRank, increased);
185 });
186}
virtual void OnReputationRankChange(Player *, uint32, ReputationRank, ReputationRank, bool)
Definition: ScriptMgr.h:1044

References PlayerScript::OnReputationRankChange().

◆ OnPlayerResurrect()

void ScriptMgr::OnPlayerResurrect ( Player player,
float  restore_percent,
bool  applySickness 
)
1408{
1409 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1410 {
1411 script->OnPlayerResurrect(player, restore_percent, applySickness);
1412 });
1413}
virtual void OnPlayerResurrect(Player *, float, bool)
Definition: ScriptMgr.h:1344

References PlayerScript::OnPlayerResurrect().

◆ OnPlayerSave()

void ScriptMgr::OnPlayerSave ( Player player)
349{
350 ExecuteScript<PlayerScript>([&](PlayerScript* script)
351 {
352 script->OnSave(player);
353 });
354}
virtual void OnSave(Player *)
Definition: ScriptMgr.h:1101

References PlayerScript::OnSave().

◆ OnPlayerSetPhase()

void ScriptMgr::OnPlayerSetPhase ( const AuraEffect auraEff,
AuraApplication const *  aurApp,
uint8  mode,
bool  apply,
uint32 newPhase 
)
171{
172 ExecuteScript<MiscScript>([&](MiscScript* script)
173 {
174 script->OnPlayerSetPhase(auraEff, aurApp, mode, apply, newPhase);
175 });
176}
virtual void OnPlayerSetPhase(const AuraEffect *, AuraApplication const *, uint8, bool, uint32 &)
Definition: ScriptMgr.h:1907

References MiscScript::OnPlayerSetPhase().

◆ OnPlayerSpellCast()

void ScriptMgr::OnPlayerSpellCast ( Player player,
Spell spell,
bool  skipCheck 
)
293{
294 ExecuteScript<PlayerScript>([&](PlayerScript* script)
295 {
296 script->OnSpellCast(player, spell, skipCheck);
297 });
298}
virtual void OnSpellCast(Player *, Spell *, bool)
Definition: ScriptMgr.h:1080

References PlayerScript::OnSpellCast().

◆ OnPlayerTalentsReset()

void ScriptMgr::OnPlayerTalentsReset ( Player player,
bool  noCost 
)
134{
135 ExecuteScript<PlayerScript>([&](PlayerScript* script)
136 {
137 script->OnTalentsReset(player, noCost);
138 });
139}
virtual void OnTalentsReset(Player *, bool)
Definition: ScriptMgr.h:1025

References PlayerScript::OnTalentsReset().

◆ OnPlayerTextEmote()

void ScriptMgr::OnPlayerTextEmote ( Player player,
uint32  textEmote,
uint32  emoteNum,
ObjectGuid  guid 
)
285{
286 ExecuteScript<PlayerScript>([&](PlayerScript* script)
287 {
288 script->OnTextEmote(player, textEmote, emoteNum, guid);
289 });
290}
virtual void OnTextEmote(Player *, uint32, uint32, ObjectGuid)
Definition: ScriptMgr.h:1077

References PlayerScript::OnTextEmote().

◆ OnPlayerUpdate()

void ScriptMgr::OnPlayerUpdate ( Player player,
uint32  p_time 
)
309{
310 ExecuteScript<PlayerScript>([&](PlayerScript* script)
311 {
312 script->OnUpdate(player, p_time);
313 });
314}
virtual void OnUpdate(Player *, uint32)
Definition: ScriptMgr.h:1029

References PlayerScript::OnUpdate().

◆ OnPlayerUpdateArea()

void ScriptMgr::OnPlayerUpdateArea ( Player player,
uint32  oldArea,
uint32  newArea 
)
389{
390 ExecuteScript<PlayerScript>([&](PlayerScript* script)
391 {
392 script->OnUpdateArea(player, oldArea, newArea);
393 });
394}
virtual void OnUpdateArea(Player *, uint32, uint32)
Definition: ScriptMgr.h:1110

References PlayerScript::OnUpdateArea().

◆ OnPlayerUpdateFaction()

void ScriptMgr::OnPlayerUpdateFaction ( Player player)
412{
413 ExecuteScript<PlayerScript>([&](PlayerScript* script)
414 {
415 script->OnUpdateFaction(player);
416 });
417}
virtual void OnUpdateFaction(Player *)
Definition: ScriptMgr.h:1119

References PlayerScript::OnUpdateFaction().

◆ OnPlayerUpdateZone()

void ScriptMgr::OnPlayerUpdateZone ( Player player,
uint32  newZone,
uint32  newArea 
)
381{
382 ExecuteScript<PlayerScript>([&](PlayerScript* script)
383 {
384 script->OnUpdateZone(player, newZone, newArea);
385 });
386}
virtual void OnUpdateZone(Player *, uint32, uint32)
Definition: ScriptMgr.h:1107

References PlayerScript::OnUpdateZone().

◆ OnPVPKill()

void ScriptMgr::OnPVPKill ( Player killer,
Player killed 
)
78{
79 ExecuteScript<PlayerScript>([&](PlayerScript* script)
80 {
81 script->OnPVPKill(killer, killed);
82 });
83}
virtual void OnPVPKill(Player *, Player *)
Definition: ScriptMgr.h:1004

References PlayerScript::OnPVPKill().

◆ OnQuestAbandon()

void ScriptMgr::OnQuestAbandon ( Player player,
uint32  questId 
)
1523{
1524 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1525 {
1526 script->OnQuestAbandon(player, questId);
1527 });
1528}
virtual void OnQuestAbandon(Player *, uint32)
This hook called after player abandoning quest.
Definition: ScriptMgr.h:1444

References PlayerScript::OnQuestAbandon().

◆ OnQuestAccept() [1/3]

bool ScriptMgr::OnQuestAccept ( Player player,
Creature creature,
Quest const *  quest 
)
82{
83 ASSERT(player);
84 ASSERT(creature);
85 ASSERT(quest);
86
87 auto ret = IsValidBoolScript<AllCreatureScript>([&](AllCreatureScript* script)
88 {
89 return script->CanCreatureQuestAccept(player, creature, quest);
90 });
91
92 if (ret && *ret)
93 {
94 return true;
95 }
96
98 ClearGossipMenuFor(player);
99 return tempScript ? tempScript->OnQuestAccept(player, creature, quest) : false;
100}
virtual bool CanCreatureQuestAccept(Player *, Creature *, Quest const *)
Definition: ScriptMgr.h:618

References ASSERT, AllCreatureScript::CanCreatureQuestAccept(), ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ OnQuestAccept() [2/3]

bool ScriptMgr::OnQuestAccept ( Player player,
GameObject go,
Quest const *  quest 
)
82{
83 ASSERT(player);
84 ASSERT(go);
85 ASSERT(quest);
86
87 auto ret = IsValidBoolScript<AllGameObjectScript>([&](AllGameObjectScript* script)
88 {
89 return script->CanGameObjectQuestAccept(player, go, quest);
90 });
91
92 if (ret && *ret)
93 {
94 return true;
95 }
96
98 ClearGossipMenuFor(player);
99 return tempScript ? tempScript->OnQuestAccept(player, go, quest) : false;
100}
virtual bool CanGameObjectQuestAccept(Player *, GameObject *, Quest const *)
Definition: ScriptMgr.h:697

References ASSERT, AllGameObjectScript::CanGameObjectQuestAccept(), ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and GameObject::GetScriptId().

◆ OnQuestAccept() [3/3]

bool ScriptMgr::OnQuestAccept ( Player player,
Item item,
Quest const *  quest 
)
23{
24 ASSERT(player);
25 ASSERT(item);
26 ASSERT(quest);
27
28 auto ret = IsValidBoolScript<AllItemScript>([&](AllItemScript* script)
29 {
30 return !script->CanItemQuestAccept(player, item, quest);
31 });
32
33 if (ret && *ret)
34 {
35 return false;
36 }
37
39 ClearGossipMenuFor(player);
40 return tempScript ? tempScript->OnQuestAccept(player, item, quest) : false;
41}
virtual bool CanItemQuestAccept(Player *, Item *, Quest const *)
Definition: ScriptMgr.h:637

References ASSERT, AllItemScript::CanItemQuestAccept(), ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and Item::GetScriptId().

◆ OnQuestComplete()

bool ScriptMgr::OnQuestComplete ( Player player,
Creature creature,
Quest const *  quest 
)
114{
115 ASSERT(player);
116 ASSERT(creature);
117 ASSERT(quest);
118
119 auto tempScript = ScriptRegistry<CreatureScript>::GetScriptById(creature->GetScriptId());
120 ClearGossipMenuFor(player);
121 return tempScript ? tempScript->OnQuestComplete(player, creature, quest) : false;
122}

References ASSERT, ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ OnQuestComputeXP()

void ScriptMgr::OnQuestComputeXP ( Player player,
Quest const *  quest,
uint32 xpValue 
)
780{
781 ExecuteScript<PlayerScript>([&](PlayerScript* script)
782 {
783 script->OnQuestComputeXP(player, quest, xpValue);
784 });
785}
virtual void OnQuestComputeXP(Player *, Quest const *, uint32 &)
Definition: ScriptMgr.h:1203

References PlayerScript::OnQuestComputeXP().

◆ OnQuestReward() [1/2]

bool ScriptMgr::OnQuestReward ( Player player,
Creature creature,
Quest const *  quest,
uint32  opt 
)
125{
126 ASSERT(player);
127 ASSERT(creature);
128 ASSERT(quest);
129
130 auto ret = IsValidBoolScript<AllCreatureScript>([&](AllCreatureScript* script)
131 {
132 return script->CanCreatureQuestReward(player, creature, quest, opt);
133 });
134
135 if (ret && *ret)
136 {
137 return false;
138 }
139
140 auto tempScript = ScriptRegistry<CreatureScript>::GetScriptById(creature->GetScriptId());
141 ClearGossipMenuFor(player);
142 return tempScript ? tempScript->OnQuestReward(player, creature, quest, opt) : false;
143}
virtual bool CanCreatureQuestReward(Player *, Creature *, Quest const *, uint32)
Definition: ScriptMgr.h:621

References ASSERT, AllCreatureScript::CanCreatureQuestReward(), ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ OnQuestReward() [2/2]

bool ScriptMgr::OnQuestReward ( Player player,
GameObject go,
Quest const *  quest,
uint32  opt 
)
103{
104 ASSERT(player);
105 ASSERT(go);
106 ASSERT(quest);
107
108 auto ret = IsValidBoolScript<AllGameObjectScript>([&](AllGameObjectScript* script)
109 {
110 return script->CanGameObjectQuestReward(player, go, quest, opt);
111 });
112
113 if (ret && *ret)
114 {
115 return false;
116 }
117
119 ClearGossipMenuFor(player);
120 return tempScript ? tempScript->OnQuestReward(player, go, quest, opt) : false;
121}
virtual bool CanGameObjectQuestReward(Player *, GameObject *, Quest const *, uint32)
Definition: ScriptMgr.h:700

References ASSERT, AllGameObjectScript::CanGameObjectQuestReward(), ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and GameObject::GetScriptId().

◆ OnQuestRewardItem()

void ScriptMgr::OnQuestRewardItem ( Player player,
Item item,
uint32  count 
)
602{
603 ExecuteScript<PlayerScript>([&](PlayerScript* script)
604 {
605 script->OnQuestRewardItem(player, item, count);
606 });
607}
virtual void OnQuestRewardItem(Player *, Item *, uint32)
Definition: ScriptMgr.h:1191

References PlayerScript::OnQuestRewardItem().

◆ OnQuestSelect()

bool ScriptMgr::OnQuestSelect ( Player player,
Creature creature,
Quest const *  quest 
)
103{
104 ASSERT(player);
105 ASSERT(creature);
106 ASSERT(quest);
107
108 auto tempScript = ScriptRegistry<CreatureScript>::GetScriptById(creature->GetScriptId());
109 ClearGossipMenuFor(player);
110 return tempScript ? tempScript->OnQuestSelect(player, creature, quest) : false;
111}

References ASSERT, ClearGossipMenuFor(), ScriptRegistry< TScript >::GetScriptById(), and Creature::GetScriptId().

◆ OnQueueUpdate()

void ScriptMgr::OnQueueUpdate ( BattlegroundQueue queue,
uint32  diff,
BattlegroundTypeId  bgTypeId,
BattlegroundBracketId  bracket_id,
uint8  arenaType,
bool  isRated,
uint32  arenaRating 
)
100{
101 ExecuteScript<BGScript>([&](BGScript* script)
102 {
103 script->OnQueueUpdate(queue, diff, bgTypeId, bracket_id, arenaType, isRated, arenaRating);
104 });
105}
virtual void OnQueueUpdate(BattlegroundQueue *, uint32, BattlegroundTypeId, BattlegroundBracketId, uint8, bool, uint32)
Definition: ScriptMgr.h:1636

References BGScript::OnQueueUpdate().

◆ OnRelocate()

void ScriptMgr::OnRelocate ( Transport transport,
uint32  waypointId,
uint32  mapId,
float  x,
float  y,
float  z 
)
65{
66 if (auto tempScript = ScriptRegistry<TransportScript>::GetScriptById(transport->GetScriptId()))
67 {
68 tempScript->OnRelocate(transport, waypointId, mapId, x, y, z);
69 }
70}

References GameObject::GetScriptId().

◆ OnRemoveAuraScaleTargets()

void ScriptMgr::OnRemoveAuraScaleTargets ( Spell spell,
TargetInfo targetInfo,
uint8  auraScaleMask,
bool &  needErase 
)
121{
122 ExecuteScript<SpellSC>([&](SpellSC* script)
123 {
124 script->OnRemoveAuraScaleTargets(spell, targetInfo, auraScaleMask, needErase);
125 });
126}
virtual void OnRemoveAuraScaleTargets(Spell *, TargetInfo &, uint8, bool &)
Definition: ScriptMgr.h:1731

References SpellSC::OnRemoveAuraScaleTargets().

◆ OnRemovePassenger() [1/2]

void ScriptMgr::OnRemovePassenger ( Transport transport,
Player player 
)
44{
45 ASSERT(transport);
46 ASSERT(player);
47
48 if (auto tempScript = ScriptRegistry<TransportScript>::GetScriptById(transport->GetScriptId()))
49 {
50 tempScript->OnRemovePassenger(transport, player);
51 }
52}

References ASSERT, and GameObject::GetScriptId().

◆ OnRemovePassenger() [2/2]

void ScriptMgr::OnRemovePassenger ( Vehicle veh,
Unit passenger 
)
79{
80 ASSERT(veh);
81 ASSERT(veh->GetBase()->GetTypeId() == TYPEID_UNIT);
82 ASSERT(passenger);
83
85 {
86 tempScript->OnRemovePassenger(veh, passenger);
87 }
88}

References ASSERT, Vehicle::GetBase(), Creature::GetScriptId(), Object::GetTypeId(), Object::ToCreature(), and TYPEID_UNIT.

◆ OnReset()

void ScriptMgr::OnReset ( Vehicle veh)
44{
45 ASSERT(veh);
46 ASSERT(veh->GetBase()->GetTypeId() == TYPEID_UNIT);
47
49 {
50 tempScript->OnReset(veh);
51 }
52}

References ASSERT, Vehicle::GetBase(), Creature::GetScriptId(), Object::GetTypeId(), Object::ToCreature(), and TYPEID_UNIT.

◆ OnRewardKillRewarder()

void ScriptMgr::OnRewardKillRewarder ( Player player,
bool  isDungeon,
float &  rate 
)
902{
903 ExecuteScript<PlayerScript>([&](PlayerScript* script)
904 {
905 script->OnRewardKillRewarder(player, isDungeon, rate);
906 });
907}
virtual void OnRewardKillRewarder(Player *, bool, float &)
Definition: ScriptMgr.h:1261

References PlayerScript::OnRewardKillRewarder().

◆ OnScaleAuraUnitAdd()

void ScriptMgr::OnScaleAuraUnitAdd ( Spell spell,
Unit target,
uint32  effectMask,
bool  checkIfValid,
bool  implicit,
uint8  auraScaleMask,
TargetInfo targetInfo 
)
113{
114 ExecuteScript<SpellSC>([&](SpellSC* script)
115 {
116 script->OnScaleAuraUnitAdd(spell, target, effectMask, checkIfValid, implicit, auraScaleMask, targetInfo);
117 });
118}
virtual void OnScaleAuraUnitAdd(Spell *, Unit *, uint32, bool, bool, uint8, TargetInfo &)
Definition: ScriptMgr.h:1729

References SpellSC::OnScaleAuraUnitAdd().

◆ OnSendInitialPacketsBeforeAddToMap()

void ScriptMgr::OnSendInitialPacketsBeforeAddToMap ( Player player,
WorldPacket data 
)
54{
55 ExecuteScript<PlayerScript>([&](PlayerScript* script)
56 {
57 script->OnSendInitialPacketsBeforeAddToMap(player, data);
58 });
59}
virtual void OnSendInitialPacketsBeforeAddToMap(Player *, WorldPacket &)
Definition: ScriptMgr.h:995

References PlayerScript::OnSendInitialPacketsBeforeAddToMap().

◆ OnSetArenaMaxPlayersPerTeam()

void ScriptMgr::OnSetArenaMaxPlayersPerTeam ( const uint8  arenaType,
uint32 maxPlayerPerTeam 
)
54{
55 ExecuteScript<ArenaTeamScript>([&](ArenaTeamScript* script)
56 {
57 script->OnSetArenaMaxPlayersPerTeam(arenaType, maxPlayerPerTeam);
58 });
59}
virtual void OnSetArenaMaxPlayersPerTeam(const uint8, uint32 &)
Definition: ScriptMgr.h:1703

References ArenaTeamScript::OnSetArenaMaxPlayersPerTeam().

◆ OnSetMaxLevel()

void ScriptMgr::OnSetMaxLevel ( Player player,
uint32 maxPlayerLevel 
)
641{
642 ExecuteScript<PlayerScript>([&](PlayerScript* script)
643 {
644 script->OnSetMaxLevel(player, maxPlayerLevel);
645 });
646}
virtual void OnSetMaxLevel(Player *, uint32 &)
Definition: ScriptMgr.h:1228

References PlayerScript::OnSetMaxLevel().

◆ OnSetServerSideVisibility()

void ScriptMgr::OnSetServerSideVisibility ( Player player,
ServerSideVisibilityType type,
AccountTypes sec 
)
1376{
1377 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1378 {
1379 script->OnSetServerSideVisibility(player, type, sec);
1380 });
1381}
virtual void OnSetServerSideVisibility(Player *, ServerSideVisibilityType &, AccountTypes &)
Definition: ScriptMgr.h:1340

References PlayerScript::OnSetServerSideVisibility().

◆ OnSetServerSideVisibilityDetect()

void ScriptMgr::OnSetServerSideVisibilityDetect ( Player player,
ServerSideVisibilityType type,
AccountTypes sec 
)
1384{
1385 ExecuteScript<PlayerScript>([&](PlayerScript* script)
1386 {
1387 script->OnSetServerSideVisibilityDetect(player, type, sec);
1388 });
1389}
virtual void OnSetServerSideVisibilityDetect(Player *, ServerSideVisibilityType &, AccountTypes &)
Definition: ScriptMgr.h:1342

References PlayerScript::OnSetServerSideVisibilityDetect().

◆ OnShutdown()

void ScriptMgr::OnShutdown ( )
102{
103 ExecuteScript<WorldScript>([&](WorldScript* script)
104 {
105 script->OnShutdown();
106 });
107}
virtual void OnShutdown()
Definition: ScriptMgr.h:229

References WorldScript::OnShutdown().

◆ OnShutdownCancel()

void ScriptMgr::OnShutdownCancel ( )
78{
79 ExecuteScript<WorldScript>([&](WorldScript* script)
80 {
81 script->OnShutdownCancel();
82 });
83}
virtual void OnShutdownCancel()
Definition: ScriptMgr.h:220

References WorldScript::OnShutdownCancel().

◆ OnShutdownInitiate()

void ScriptMgr::OnShutdownInitiate ( ShutdownExitCode  code,
ShutdownMask  mask 
)
70{
71 ExecuteScript<WorldScript>([&](WorldScript* script)
72 {
73 script->OnShutdownInitiate(code, mask);
74 });
75}
virtual void OnShutdownInitiate(ShutdownExitCode, ShutdownMask)
Definition: ScriptMgr.h:217

References WorldScript::OnShutdownInitiate().

◆ OnSocketClose()

void ScriptMgr::OnSocketClose ( std::shared_ptr< WorldSocket socket)
48{
49 ASSERT(socket);
50
51 ExecuteScript<ServerScript>([&](ServerScript* script)
52 {
53 script->OnSocketClose(socket);
54 });
55}
virtual void OnSocketClose(std::shared_ptr< WorldSocket >)
Definition: ScriptMgr.h:173

References ASSERT, and ServerScript::OnSocketClose().

◆ OnSocketOpen()

void ScriptMgr::OnSocketOpen ( std::shared_ptr< WorldSocket socket)
38{
39 ASSERT(socket);
40
41 ExecuteScript<ServerScript>([&](ServerScript* script)
42 {
43 script->OnSocketOpen(socket);
44 });
45}
virtual void OnSocketOpen(std::shared_ptr< WorldSocket >)
Definition: ScriptMgr.h:169

References ASSERT, and ServerScript::OnSocketOpen().

◆ OnSpellCheckCast()

void ScriptMgr::OnSpellCheckCast ( Spell spell,
bool  strict,
SpellCastResult res 
)
60{
61 ExecuteScript<SpellSC>([&](SpellSC* script)
62 {
63 script->OnSpellCheckCast(spell, strict, res);
64 });
65}
virtual void OnSpellCheckCast(Spell *, bool, SpellCastResult &)
Definition: ScriptMgr.h:1721

References SpellSC::OnSpellCheckCast().

◆ OnSpellHealingBonusTakenNegativeModifiers()

bool ScriptMgr::OnSpellHealingBonusTakenNegativeModifiers ( Unit const *  target,
Unit const *  caster,
SpellInfo const *  spellInfo,
float &  val 
)
144{
145 auto ret = IsValidBoolScript<GlobalScript>([&](GlobalScript* script)
146 {
147 return script->OnSpellHealingBonusTakenNegativeModifiers(target, caster, spellInfo, val);
148 });
149
150 if (ret && *ret)
151 {
152 return true;
153 }
154
155 return false;
156}
virtual bool OnSpellHealingBonusTakenNegativeModifiers(Unit const *, Unit const *, SpellInfo const *, float &)
Definition: ScriptMgr.h:1591

References GlobalScript::OnSpellHealingBonusTakenNegativeModifiers().

◆ OnStartup()

void ScriptMgr::OnStartup ( )
94{
95 ExecuteScript<WorldScript>([&](WorldScript* script)
96 {
97 script->OnStartup();
98 });
99}
virtual void OnStartup()
Definition: ScriptMgr.h:226

References WorldScript::OnStartup().

◆ OnStoreNewItem()

void ScriptMgr::OnStoreNewItem ( Player player,
Item item,
uint32  count 
)
586{
587 ExecuteScript<PlayerScript>([&](PlayerScript* script)
588 {
589 script->OnStoreNewItem(player, item, count);
590 });
591}
virtual void OnStoreNewItem(Player *, Item *, uint32)
Definition: ScriptMgr.h:1185

References PlayerScript::OnStoreNewItem().

◆ OnTransportUpdate()

void ScriptMgr::OnTransportUpdate ( Transport transport,
uint32  diff 
)
55{
56 ASSERT(transport);
57
58 if (auto tempScript = ScriptRegistry<TransportScript>::GetScriptById(transport->GetScriptId()))
59 {
60 tempScript->OnUpdate(transport, diff);
61 }
62}

References ASSERT, and GameObject::GetScriptId().

◆ OnUninstall()

void ScriptMgr::OnUninstall ( Vehicle veh)
33{
34 ASSERT(veh);
35 ASSERT(veh->GetBase()->GetTypeId() == TYPEID_UNIT);
36
38 {
39 tempScript->OnUninstall(veh);
40 }
41}

References ASSERT, Vehicle::GetBase(), Creature::GetScriptId(), Object::GetTypeId(), Object::ToCreature(), and TYPEID_UNIT.

◆ OnUnitDeath()

void ScriptMgr::OnUnitDeath ( Unit unit,
Unit killer 
)
239{
240 ExecuteScript<UnitScript>([&](UnitScript* script)
241 {
242 script->OnUnitDeath(unit, killer);
243 });
244}
virtual void OnUnitDeath(Unit *, Unit *)
Definition: ScriptMgr.h:472

References UnitScript::OnUnitDeath().

◆ OnUnitEnterCombat()

void ScriptMgr::OnUnitEnterCombat ( Unit unit,
Unit victim 
)
231{
232 ExecuteScript<UnitScript>([&](UnitScript* script)
233 {
234 script->OnUnitEnterCombat(unit, victim);
235 });
236}
virtual void OnUnitEnterCombat(Unit *, Unit *)
Definition: ScriptMgr.h:471

References UnitScript::OnUnitEnterCombat().

◆ OnUnitEnterEvadeMode()

void ScriptMgr::OnUnitEnterEvadeMode ( Unit unit,
uint8  why 
)
223{
224 ExecuteScript<UnitScript>([&](UnitScript* script)
225 {
226 script->OnUnitEnterEvadeMode(unit, evadeReason);
227 });
228}
virtual void OnUnitEnterEvadeMode(Unit *, uint8)
Definition: ScriptMgr.h:470

References UnitScript::OnUnitEnterEvadeMode().

◆ OnUnitUpdate()

void ScriptMgr::OnUnitUpdate ( Unit unit,
uint32  diff 
)
207{
208 ExecuteScript<UnitScript>([&](UnitScript* script)
209 {
210 script->OnUnitUpdate(unit, diff);
211 });
212}
virtual void OnUnitUpdate(Unit *, uint32)
This hook runs in Unit::Update.
Definition: ScriptMgr.h:466

References UnitScript::OnUnitUpdate().

◆ OnUnloadGridMap()

void ScriptMgr::OnUnloadGridMap ( Map map,
GridMap gmap,
uint32  gx,
uint32  gy 
)
225{
226 ASSERT(map);
227 ASSERT(gmap);
228
229 ForeachMaps<WorldMapScript>(map,
230 [&](WorldMapScript* script)
231 {
232 script->OnUnloadGridMap(map, gmap, gx, gy);
233 });
234
235 ForeachMaps<InstanceMapScript>(map,
236 [&](InstanceMapScript* script)
237 {
238 script->OnUnloadGridMap((InstanceMap*)map, gmap, gx, gy);
239 });
240
241 ForeachMaps<BattlegroundMapScript>(map,
242 [&](BattlegroundMapScript* script)
243 {
244 script->OnUnloadGridMap((BattlegroundMap*)map, gmap, gx, gy);
245 });
246}
virtual void OnUnloadGridMap(TMap *, GridMap *, uint32, uint32)
Definition: ScriptMgr.h:316

References ASSERT, and MapScript< TMap >::OnUnloadGridMap().

◆ OnUpdateFishingSkill()

bool ScriptMgr::OnUpdateFishingSkill ( Player player,
int32  skill,
int32  zone_skill,
int32  chance,
int32  roll 
)
956{
957 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
958 {
959 return !script->OnUpdateFishingSkill(player, skill, zone_skill, chance, roll);
960 });
961
962 if (ret && *ret)
963 {
964 return false;
965 }
966
967 return true;
968}
virtual bool OnUpdateFishingSkill(Player *, int32, int32, int32, int32)
Definition: ScriptMgr.h:1271

References PlayerScript::OnUpdateFishingSkill().

◆ OnVictimRewardAfter()

void ScriptMgr::OnVictimRewardAfter ( Player player,
Player victim,
uint32 killer_title,
uint32 victim_rank,
float &  honor_f 
)
994{
995 ExecuteScript<PlayerScript>([&](PlayerScript* script)
996 {
997 script->OnVictimRewardAfter(player, victim, killer_title, victim_rank, honor_f);
998 });
999}
virtual void OnVictimRewardAfter(Player *, Player *, uint32 &, uint32 &, float &)
Definition: ScriptMgr.h:1277

References PlayerScript::OnVictimRewardAfter().

◆ OnVictimRewardBefore()

void ScriptMgr::OnVictimRewardBefore ( Player player,
Player victim,
uint32 killer_title,
uint32 victim_title 
)
986{
987 ExecuteScript<PlayerScript>([&](PlayerScript* script)
988 {
989 script->OnVictimRewardBefore(player, victim, killer_title, victim_title);
990 });
991}
virtual void OnVictimRewardBefore(Player *, Player *, uint32 &, uint32 &)
Definition: ScriptMgr.h:1275

References PlayerScript::OnVictimRewardBefore().

◆ OnWeatherChange()

void ScriptMgr::OnWeatherChange ( Weather weather,
WeatherState  state,
float  grade 
)
22{
23 ASSERT(weather);
24
25 ExecuteScript<ElunaScript>([&](ElunaScript* script)
26 {
27 script->OnWeatherChange(weather, state, grade);
28 });
29
30 if (auto tempScript = ScriptRegistry<WeatherScript>::GetScriptById(weather->GetScriptId()))
31 {
32 tempScript->OnChange(weather, state, grade);
33 }
34}
uint32 GetScriptId() const
Definition: Weather.h:79
virtual void OnWeatherChange(Weather *, WeatherState, float)
This hook called when the weather changes in the zone this script is associated with.
Definition: ScriptMgr.h:2034

References ASSERT, Weather::GetScriptId(), and ElunaScript::OnWeatherChange().

◆ OnWeatherUpdate()

void ScriptMgr::OnWeatherUpdate ( Weather weather,
uint32  diff 
)
37{
38 ASSERT(weather);
39
40 if (auto tempScript = ScriptRegistry<WeatherScript>::GetScriptById(weather->GetScriptId()))
41 {
42 tempScript->OnUpdate(weather, diff);
43 }
44}

References ASSERT, and Weather::GetScriptId().

◆ OnWorldObjectCreate()

void ScriptMgr::OnWorldObjectCreate ( WorldObject object)
32{
33 ASSERT(object);
34
35 ExecuteScript<WorldObjectScript>([&](WorldObjectScript* script)
36 {
37 script->OnWorldObjectCreate(object);
38 });
39}
Definition: ScriptMgr.h:1955
virtual void OnWorldObjectCreate(WorldObject *)
This hook called after create world object.
Definition: ScriptMgr.h:1976

References ASSERT, and WorldObjectScript::OnWorldObjectCreate().

◆ OnWorldObjectDestroy()

void ScriptMgr::OnWorldObjectDestroy ( WorldObject object)
22{
23 ASSERT(object);
24
25 ExecuteScript<WorldObjectScript>([&](WorldObjectScript* script)
26 {
27 script->OnWorldObjectDestroy(object);
28 });
29}
virtual void OnWorldObjectDestroy(WorldObject *)
This hook called before destroy world object.
Definition: ScriptMgr.h:1969

References ASSERT, and WorldObjectScript::OnWorldObjectDestroy().

◆ OnWorldObjectResetMap()

void ScriptMgr::OnWorldObjectResetMap ( WorldObject object)
52{
53 ASSERT(object);
54
55 ExecuteScript<WorldObjectScript>([&](WorldObjectScript* script)
56 {
57 script->OnWorldObjectResetMap(object);
58 });
59}
virtual void OnWorldObjectResetMap(WorldObject *)
This hook called after world object reset.
Definition: ScriptMgr.h:1990

References ASSERT, and WorldObjectScript::OnWorldObjectResetMap().

◆ OnWorldObjectSetMap()

void ScriptMgr::OnWorldObjectSetMap ( WorldObject object,
Map map 
)
42{
43 ASSERT(object);
44
45 ExecuteScript<WorldObjectScript>([&](WorldObjectScript* script)
46 {
47 script->OnWorldObjectSetMap(object, map);
48 });
49}
virtual void OnWorldObjectSetMap(WorldObject *, Map *)
This hook called after world object set to map.
Definition: ScriptMgr.h:1983

References ASSERT, and WorldObjectScript::OnWorldObjectSetMap().

◆ OnWorldObjectUpdate()

void ScriptMgr::OnWorldObjectUpdate ( WorldObject object,
uint32  diff 
)
62{
63 ASSERT(object);
64
65 ExecuteScript<WorldObjectScript>([&](WorldObjectScript* script)
66 {
67 script->OnWorldObjectUpdate(object, diff);
68 });
69}
virtual void OnWorldObjectUpdate(WorldObject *, uint32)
This hook called after world object update.
Definition: ScriptMgr.h:1998

References ASSERT, and WorldObjectScript::OnWorldObjectUpdate().

◆ OnWorldUpdate()

void ScriptMgr::OnWorldUpdate ( uint32  diff)
86{
87 ExecuteScript<WorldScript>([&](WorldScript* script)
88 {
89 script->OnUpdate(diff);
90 });
91}
virtual void OnUpdate(uint32)
Definition: ScriptMgr.h:223

References WorldScript::OnUpdate().

◆ OnZeroDifferenceCalculation()

void ScriptMgr::OnZeroDifferenceCalculation ( uint8 diff,
uint8  playerLevel 
)
46{
47 ExecuteScript<FormulaScript>([&](FormulaScript* script)
48 {
49 script->OnZeroDifferenceCalculation(diff, playerLevel);
50 });
51}
virtual void OnZeroDifferenceCalculation(uint8 &, uint8)
Definition: ScriptMgr.h:265

References FormulaScript::OnZeroDifferenceCalculation().

◆ PassedQuestKilledMonsterCredit()

bool ScriptMgr::PassedQuestKilledMonsterCredit ( Player player,
Quest const *  qinfo,
uint32  entry,
uint32  real_entry,
ObjectGuid  guid 
)
1207{
1208 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
1209 {
1210 return !script->PassedQuestKilledMonsterCredit(player, qinfo, entry, real_entry, guid);
1211 });
1212
1213 if (ret && *ret)
1214 {
1215 return false;
1216 }
1217
1218 return true;
1219}
virtual bool PassedQuestKilledMonsterCredit(Player *, Quest const *, uint32, uint32, ObjectGuid)
Definition: ScriptMgr.h:1311

References PlayerScript::PassedQuestKilledMonsterCredit().

◆ PetitionBuy()

void ScriptMgr::PetitionBuy ( Player player,
Creature creature,
uint32 charterid,
uint32 cost,
uint32 type 
)
886{
887 ExecuteScript<PlayerScript>([&](PlayerScript* script)
888 {
889 script->PetitionBuy(player, creature, charterid, cost, type);
890 });
891}
virtual void PetitionBuy(Player *, Creature *, uint32 &, uint32 &, uint32 &)
Definition: ScriptMgr.h:1257

References PlayerScript::PetitionBuy().

◆ PetitionShowList()

void ScriptMgr::PetitionShowList ( Player player,
Creature creature,
uint32 CharterEntry,
uint32 CharterDispayID,
uint32 CharterCost 
)
894{
895 ExecuteScript<PlayerScript>([&](PlayerScript* script)
896 {
897 script->PetitionShowList(player, creature, CharterEntry, CharterDispayID, CharterCost);
898 });
899}
virtual void PetitionShowList(Player *, Creature *, uint32 &, uint32 &, uint32 &)
Definition: ScriptMgr.h:1259

References PlayerScript::PetitionShowList().

◆ ScriptsVersion()

const char * ScriptMgr::ScriptsVersion ( ) const
inline
2056{ return "Integrated Azeroth Scripts"; }

◆ SetModulesLoader()

void ScriptMgr::SetModulesLoader ( ModulesLoaderCallbackType  script_loader_callback)
inline

Sets the modules loader callback which is invoked to load modules (Workaround for circular dependency game <-> modules)

2074 {
2075 _modules_loader_callback = script_loader_callback;
2076 }

References _modules_loader_callback.

◆ SetRealmCompleted()

void ScriptMgr::SetRealmCompleted ( AchievementEntry const *  achievement)
22{
23 ExecuteScript<AchievementScript>([&](AchievementScript* script)
24 {
25 script->SetRealmCompleted(achievement);
26 });
27}
virtual void SetRealmCompleted(AchievementEntry const *)
Definition: ScriptMgr.h:1811

References AchievementScript::SetRealmCompleted().

◆ SetScriptLoader()

void ScriptMgr::SetScriptLoader ( ScriptLoaderCallbackType  script_loader_callback)
inline

Sets the script loader callback which is invoked to load scripts (Workaround for circular dependency game <-> scripts)

2067 {
2068 _script_loader_callback = script_loader_callback;
2069 }

References _script_loader_callback.

◆ ShouldBeRewardedWithMoneyInsteadOfExp()

bool ScriptMgr::ShouldBeRewardedWithMoneyInsteadOfExp ( Player player)
664{
665 auto ret = IsValidBoolScript<PlayerScript>([&](PlayerScript* script)
666 {
667 return script->ShouldBeRewardedWithMoneyInsteadOfExp(player);
668 });
669
670 if (ret && *ret)
671 {
672 return true;
673 }
674
675 return false;
676}
virtual bool ShouldBeRewardedWithMoneyInsteadOfExp(Player *)
Definition: ScriptMgr.h:1231

References PlayerScript::ShouldBeRewardedWithMoneyInsteadOfExp().

◆ Unload()

void ScriptMgr::Unload ( )
77{
78 SCR_CLEAR<AccountScript>();
79 SCR_CLEAR<AchievementCriteriaScript>();
80 SCR_CLEAR<AchievementScript>();
81 SCR_CLEAR<AllCreatureScript>();
82 SCR_CLEAR<AllGameObjectScript>();
83 SCR_CLEAR<AllItemScript>();
84 SCR_CLEAR<AllMapScript>();
85 SCR_CLEAR<AreaTriggerScript>();
86 SCR_CLEAR<ArenaScript>();
87 SCR_CLEAR<ArenaTeamScript>();
88 SCR_CLEAR<AuctionHouseScript>();
89 SCR_CLEAR<BGScript>();
90 SCR_CLEAR<BattlegroundMapScript>();
91 SCR_CLEAR<BattlegroundScript>();
92 SCR_CLEAR<CommandSC>();
93 SCR_CLEAR<CommandScript>();
94 SCR_CLEAR<ConditionScript>();
95 SCR_CLEAR<CreatureScript>();
96 SCR_CLEAR<DatabaseScript>();
97 SCR_CLEAR<DynamicObjectScript>();
98 SCR_CLEAR<ElunaScript>();
99 SCR_CLEAR<FormulaScript>();
100 SCR_CLEAR<GameEventScript>();
101 SCR_CLEAR<GameObjectScript>();
102 SCR_CLEAR<GlobalScript>();
103 SCR_CLEAR<GroupScript>();
104 SCR_CLEAR<GuildScript>();
105 SCR_CLEAR<InstanceMapScript>();
106 SCR_CLEAR<ItemScript>();
107 SCR_CLEAR<LootScript>();
108 SCR_CLEAR<MailScript>();
109 SCR_CLEAR<MiscScript>();
110 SCR_CLEAR<MovementHandlerScript>();
111 SCR_CLEAR<OutdoorPvPScript>();
112 SCR_CLEAR<PetScript>();
113 SCR_CLEAR<PlayerScript>();
114 SCR_CLEAR<ServerScript>();
115 SCR_CLEAR<SpellSC>();
116 SCR_CLEAR<SpellScriptLoader>();
117 SCR_CLEAR<TransportScript>();
118 SCR_CLEAR<UnitScript>();
119 SCR_CLEAR<VehicleScript>();
120 SCR_CLEAR<WeatherScript>();
121 SCR_CLEAR<WorldMapScript>();
122 SCR_CLEAR<WorldObjectScript>();
123 SCR_CLEAR<WorldScript>();
124
125 delete[] SpellSummary;
126}

References SpellSummary.

◆ ValidateSpellAtCastSpell()

void ScriptMgr::ValidateSpellAtCastSpell ( Player player,
uint32 oldSpellId,
uint32 spellId,
uint8 castCount,
uint8 castFlags 
)
139{
140 ExecuteScript<MiscScript>([&](MiscScript* script)
141 {
142 script->ValidateSpellAtCastSpell(player, oldSpellId, spellId, castCount, castFlags);
143 });
144}
virtual void ValidateSpellAtCastSpell(Player *, uint32 &, uint32 &, uint8 &, uint8 &)
Definition: ScriptMgr.h:1901

References MiscScript::ValidateSpellAtCastSpell().

◆ ValidateSpellAtCastSpellResult()

void ScriptMgr::ValidateSpellAtCastSpellResult ( Player player,
Unit mover,
Spell spell,
uint32  oldSpellId,
uint32  spellId 
)
147{
148 ExecuteScript<MiscScript>([&](MiscScript* script)
149 {
150 script->ValidateSpellAtCastSpellResult(player, mover, spell, oldSpellId, spellId);
151 });
152}
virtual void ValidateSpellAtCastSpellResult(Player *, Unit *, Spell *, uint32, uint32)
Definition: ScriptMgr.h:1903

References MiscScript::ValidateSpellAtCastSpellResult().

◆ ~ScriptMgr()

ScriptMgr::~ScriptMgr ( )
privatevirtual
51{ }

Friends And Related Function Documentation

◆ ScriptObject

friend class ScriptObject
friend

Member Data Documentation

◆ _modules_loader_callback

ModulesLoaderCallbackType ScriptMgr::_modules_loader_callback
private

Referenced by Initialize(), and SetModulesLoader().

◆ _scheduledScripts

std::atomic<long> ScriptMgr::_scheduledScripts
private

◆ _script_loader_callback

ScriptLoaderCallbackType ScriptMgr::_script_loader_callback
private

Referenced by Initialize(), and SetScriptLoader().

◆ _scriptCount

uint32 ScriptMgr::_scriptCount
private