mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-23 21:56:22 +00:00
feat(Core/Scripting): move all script objects to separated files (#17860)
* feat(Core/Scripts): move all script objects to separated files
* Apply 5bfeabde81
* try gcc build
* again
This commit is contained in:
@@ -16,7 +16,9 @@
|
||||
*/
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "AllScriptsObjects.h"
|
||||
#include "InstanceScript.h"
|
||||
#include "ScriptObject.h"
|
||||
#include "ScriptSystem.h"
|
||||
#include "SmartAI.h"
|
||||
#include "SpellMgr.h"
|
||||
@@ -287,359 +289,3 @@ void ScriptMgr::FillSpellSummary()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
///-
|
||||
AllMapScript::AllMapScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AllMapScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AllCreatureScript::AllCreatureScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AllCreatureScript>::AddScript(this);
|
||||
}
|
||||
|
||||
UnitScript::UnitScript(const char* name, bool addToScripts)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
if (addToScripts)
|
||||
ScriptRegistry<UnitScript>::AddScript(this);
|
||||
}
|
||||
|
||||
MovementHandlerScript::MovementHandlerScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<MovementHandlerScript>::AddScript(this);
|
||||
}
|
||||
|
||||
SpellScriptLoader::SpellScriptLoader(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<SpellScriptLoader>::AddScript(this);
|
||||
}
|
||||
|
||||
ServerScript::ServerScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<ServerScript>::AddScript(this);
|
||||
}
|
||||
|
||||
WorldScript::WorldScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<WorldScript>::AddScript(this);
|
||||
}
|
||||
|
||||
FormulaScript::FormulaScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<FormulaScript>::AddScript(this);
|
||||
}
|
||||
|
||||
WorldMapScript::WorldMapScript(const char* name, uint32 mapId)
|
||||
: ScriptObject(name), MapScript<Map>(mapId)
|
||||
{
|
||||
ScriptRegistry<WorldMapScript>::AddScript(this);
|
||||
}
|
||||
|
||||
InstanceMapScript::InstanceMapScript(const char* name, uint32 mapId)
|
||||
: ScriptObject(name), MapScript<InstanceMap>(mapId)
|
||||
{
|
||||
ScriptRegistry<InstanceMapScript>::AddScript(this);
|
||||
}
|
||||
|
||||
BattlegroundMapScript::BattlegroundMapScript(const char* name, uint32 mapId)
|
||||
: ScriptObject(name), MapScript<BattlegroundMap>(mapId)
|
||||
{
|
||||
ScriptRegistry<BattlegroundMapScript>::AddScript(this);
|
||||
}
|
||||
|
||||
ItemScript::ItemScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<ItemScript>::AddScript(this);
|
||||
}
|
||||
|
||||
CreatureScript::CreatureScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<CreatureScript>::AddScript(this);
|
||||
}
|
||||
|
||||
GameObjectScript::GameObjectScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<GameObjectScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AreaTriggerScript::AreaTriggerScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AreaTriggerScript>::AddScript(this);
|
||||
}
|
||||
|
||||
bool OnlyOnceAreaTriggerScript::OnTrigger(Player* player, AreaTrigger const* trigger)
|
||||
{
|
||||
uint32 const triggerId = trigger->entry;
|
||||
if (InstanceScript* instance = player->GetInstanceScript())
|
||||
{
|
||||
if (instance->IsAreaTriggerDone(triggerId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
instance->MarkAreaTriggerDone(triggerId);
|
||||
}
|
||||
}
|
||||
return _OnTrigger(player, trigger);
|
||||
}
|
||||
|
||||
void OnlyOnceAreaTriggerScript::ResetAreaTriggerDone(InstanceScript* script, uint32 triggerId)
|
||||
{
|
||||
script->ResetAreaTriggerDone(triggerId);
|
||||
}
|
||||
|
||||
void OnlyOnceAreaTriggerScript::ResetAreaTriggerDone(Player const* player, AreaTrigger const* trigger)
|
||||
{
|
||||
if (InstanceScript* instance = player->GetInstanceScript())
|
||||
{
|
||||
ResetAreaTriggerDone(instance, trigger->entry);
|
||||
}
|
||||
}
|
||||
|
||||
BattlegroundScript::BattlegroundScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<BattlegroundScript>::AddScript(this);
|
||||
}
|
||||
|
||||
OutdoorPvPScript::OutdoorPvPScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<OutdoorPvPScript>::AddScript(this);
|
||||
}
|
||||
|
||||
CommandScript::CommandScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<CommandScript>::AddScript(this);
|
||||
}
|
||||
|
||||
WeatherScript::WeatherScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<WeatherScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AuctionHouseScript::AuctionHouseScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AuctionHouseScript>::AddScript(this);
|
||||
}
|
||||
|
||||
ConditionScript::ConditionScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<ConditionScript>::AddScript(this);
|
||||
}
|
||||
|
||||
VehicleScript::VehicleScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<VehicleScript>::AddScript(this);
|
||||
}
|
||||
|
||||
DynamicObjectScript::DynamicObjectScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<DynamicObjectScript>::AddScript(this);
|
||||
}
|
||||
|
||||
TransportScript::TransportScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<TransportScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AchievementCriteriaScript::AchievementCriteriaScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AchievementCriteriaScript>::AddScript(this);
|
||||
}
|
||||
|
||||
PlayerScript::PlayerScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<PlayerScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AccountScript::AccountScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AccountScript>::AddScript(this);
|
||||
}
|
||||
|
||||
GuildScript::GuildScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<GuildScript>::AddScript(this);
|
||||
}
|
||||
|
||||
GroupScript::GroupScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<GroupScript>::AddScript(this);
|
||||
}
|
||||
|
||||
GlobalScript::GlobalScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<GlobalScript>::AddScript(this);
|
||||
}
|
||||
|
||||
BGScript::BGScript(char const* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<BGScript>::AddScript(this);
|
||||
}
|
||||
|
||||
ArenaTeamScript::ArenaTeamScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<ArenaTeamScript>::AddScript(this);
|
||||
}
|
||||
|
||||
SpellSC::SpellSC(char const* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<SpellSC>::AddScript(this);
|
||||
}
|
||||
|
||||
ModuleScript::ModuleScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<ModuleScript>::AddScript(this);
|
||||
}
|
||||
|
||||
GameEventScript::GameEventScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<GameEventScript>::AddScript(this);
|
||||
}
|
||||
|
||||
MailScript::MailScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<MailScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AchievementScript::AchievementScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AchievementScript>::AddScript(this);
|
||||
}
|
||||
|
||||
PetScript::PetScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<PetScript>::AddScript(this);
|
||||
}
|
||||
|
||||
ArenaScript::ArenaScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<ArenaScript>::AddScript(this);
|
||||
}
|
||||
|
||||
MiscScript::MiscScript(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<MiscScript>::AddScript(this);
|
||||
}
|
||||
|
||||
CommandSC::CommandSC(const char* name)
|
||||
: ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<CommandSC>::AddScript(this);
|
||||
}
|
||||
|
||||
DatabaseScript::DatabaseScript(const char* name) : ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<DatabaseScript>::AddScript(this);
|
||||
}
|
||||
|
||||
WorldObjectScript::WorldObjectScript(const char* name) : ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<WorldObjectScript>::AddScript(this);
|
||||
}
|
||||
|
||||
LootScript::LootScript(const char* name) : ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<LootScript>::AddScript(this);
|
||||
}
|
||||
|
||||
ElunaScript::ElunaScript(const char* name) : ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<ElunaScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AllItemScript::AllItemScript(const char* name) : ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AllItemScript>::AddScript(this);
|
||||
}
|
||||
|
||||
AllGameObjectScript::AllGameObjectScript(const char* name) : ScriptObject(name)
|
||||
{
|
||||
ScriptRegistry<AllGameObjectScript>::AddScript(this);
|
||||
}
|
||||
|
||||
// Specialize for each script type class like so:
|
||||
template class AC_GAME_API ScriptRegistry<AccountScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AchievementCriteriaScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AchievementScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AllCreatureScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AllGameObjectScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AllItemScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AllMapScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AreaTriggerScript>;
|
||||
template class AC_GAME_API ScriptRegistry<ArenaScript>;
|
||||
template class AC_GAME_API ScriptRegistry<ArenaTeamScript>;
|
||||
template class AC_GAME_API ScriptRegistry<AuctionHouseScript>;
|
||||
template class AC_GAME_API ScriptRegistry<BGScript>;
|
||||
template class AC_GAME_API ScriptRegistry<BattlegroundMapScript>;
|
||||
template class AC_GAME_API ScriptRegistry<BattlegroundScript>;
|
||||
template class AC_GAME_API ScriptRegistry<CommandSC>;
|
||||
template class AC_GAME_API ScriptRegistry<CommandScript>;
|
||||
template class AC_GAME_API ScriptRegistry<ConditionScript>;
|
||||
template class AC_GAME_API ScriptRegistry<CreatureScript>;
|
||||
template class AC_GAME_API ScriptRegistry<DatabaseScript>;
|
||||
template class AC_GAME_API ScriptRegistry<DynamicObjectScript>;
|
||||
template class AC_GAME_API ScriptRegistry<ElunaScript>;
|
||||
template class AC_GAME_API ScriptRegistry<FormulaScript>;
|
||||
template class AC_GAME_API ScriptRegistry<GameEventScript>;
|
||||
template class AC_GAME_API ScriptRegistry<GameObjectScript>;
|
||||
template class AC_GAME_API ScriptRegistry<GlobalScript>;
|
||||
template class AC_GAME_API ScriptRegistry<GroupScript>;
|
||||
template class AC_GAME_API ScriptRegistry<GuildScript>;
|
||||
template class AC_GAME_API ScriptRegistry<InstanceMapScript>;
|
||||
template class AC_GAME_API ScriptRegistry<ItemScript>;
|
||||
template class AC_GAME_API ScriptRegistry<LootScript>;
|
||||
template class AC_GAME_API ScriptRegistry<MailScript>;
|
||||
template class AC_GAME_API ScriptRegistry<MiscScript>;
|
||||
template class AC_GAME_API ScriptRegistry<MovementHandlerScript>;
|
||||
template class AC_GAME_API ScriptRegistry<OutdoorPvPScript>;
|
||||
template class AC_GAME_API ScriptRegistry<PetScript>;
|
||||
template class AC_GAME_API ScriptRegistry<PlayerScript>;
|
||||
template class AC_GAME_API ScriptRegistry<ServerScript>;
|
||||
template class AC_GAME_API ScriptRegistry<SpellSC>;
|
||||
template class AC_GAME_API ScriptRegistry<SpellScriptLoader>;
|
||||
template class AC_GAME_API ScriptRegistry<TransportScript>;
|
||||
template class AC_GAME_API ScriptRegistry<UnitScript>;
|
||||
template class AC_GAME_API ScriptRegistry<VehicleScript>;
|
||||
template class AC_GAME_API ScriptRegistry<WeatherScript>;
|
||||
template class AC_GAME_API ScriptRegistry<WorldMapScript>;
|
||||
template class AC_GAME_API ScriptRegistry<WorldObjectScript>;
|
||||
template class AC_GAME_API ScriptRegistry<WorldScript>;
|
||||
|
||||
Reference in New Issue
Block a user