Merge branch 'master' into Playerbot
# Conflicts: # src/server/apps/worldserver/worldserver.conf.dist # src/server/game/Battlegrounds/Battleground.h # src/server/game/Entities/Player/Player.cpp # src/server/game/World/World.cpp
This commit is contained in:
@@ -161,3 +161,18 @@ void ScriptMgr::OnLoadSpellCustomAttr(SpellInfo* spell)
|
||||
script->OnLoadSpellCustomAttr(spell);
|
||||
});
|
||||
}
|
||||
|
||||
bool ScriptMgr::OnAllowedForPlayerLootCheck(Player const* player, ObjectGuid source)
|
||||
{
|
||||
auto ret = IsValidBoolScript<GlobalScript>([&](GlobalScript* script)
|
||||
{
|
||||
return script->OnAllowedForPlayerLootCheck(player, source);
|
||||
});
|
||||
|
||||
if (ret && *ret)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -210,3 +210,35 @@ void ScriptMgr::OnUnitUpdate(Unit* unit, uint32 diff)
|
||||
script->OnUnitUpdate(unit, diff);
|
||||
});
|
||||
}
|
||||
|
||||
void ScriptMgr::OnDisplayIdChange(Unit* unit, uint32 displayId)
|
||||
{
|
||||
ExecuteScript<UnitScript>([&](UnitScript* script)
|
||||
{
|
||||
script->OnDisplayIdChange(unit, displayId);
|
||||
});
|
||||
}
|
||||
|
||||
void ScriptMgr::OnUnitEnterEvadeMode(Unit* unit, uint8 evadeReason)
|
||||
{
|
||||
ExecuteScript<UnitScript>([&](UnitScript* script)
|
||||
{
|
||||
script->OnUnitEnterEvadeMode(unit, evadeReason);
|
||||
});
|
||||
}
|
||||
|
||||
void ScriptMgr::OnUnitEnterCombat(Unit* unit, Unit* victim)
|
||||
{
|
||||
ExecuteScript<UnitScript>([&](UnitScript* script)
|
||||
{
|
||||
script->OnUnitEnterCombat(unit, victim);
|
||||
});
|
||||
}
|
||||
|
||||
void ScriptMgr::OnUnitDeath(Unit* unit, Unit* killer)
|
||||
{
|
||||
ExecuteScript<UnitScript>([&](UnitScript* script)
|
||||
{
|
||||
script->OnUnitDeath(unit, killer);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -460,6 +460,12 @@ public:
|
||||
* @param diff Contains information about the diff time
|
||||
*/
|
||||
virtual void OnUnitUpdate(Unit* /*unit*/, uint32 /*diff*/) { }
|
||||
|
||||
virtual void OnDisplayIdChange(Unit* /*unit*/, uint32 /*displayId*/) { }
|
||||
|
||||
virtual void OnUnitEnterEvadeMode(Unit* /*unit*/, uint8 /*evadeReason*/) { }
|
||||
virtual void OnUnitEnterCombat(Unit* /*unit*/, Unit* /*victim*/) { }
|
||||
virtual void OnUnitDeath(Unit* /*unit*/, Unit* /*killer*/) { }
|
||||
};
|
||||
|
||||
class MovementHandlerScript : public ScriptObject
|
||||
@@ -1551,6 +1557,9 @@ public:
|
||||
|
||||
// Called after loading spell dbc corrections
|
||||
virtual void OnLoadSpellCustomAttr(SpellInfo* /*spell*/) { }
|
||||
|
||||
// Called when checking if a player can see the creature loot
|
||||
virtual bool OnAllowedForPlayerLootCheck(Player const* /*player*/, ObjectGuid /*source*/) { return false; };
|
||||
};
|
||||
|
||||
class BGScript : public ScriptObject
|
||||
@@ -2412,6 +2421,7 @@ public: /* GlobalScript */
|
||||
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);
|
||||
|
||||
public: /* Scheduled scripts */
|
||||
uint32 IncreaseScheduledScriptsCount() { return ++_scheduledScripts; }
|
||||
@@ -2437,6 +2447,10 @@ public: /* UnitScript */
|
||||
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);
|
||||
|
||||
public: /* MovementHandlerScript */
|
||||
void OnPlayerMove(Player* player, MovementInfo movementInfo, uint32 opcode);
|
||||
|
||||
Reference in New Issue
Block a user