Commit Graph

255 Commits

Author SHA1 Message Date
Ovahlord
adbc729fab Core/AI: call ModifyVehiclePassengerExitPos for CreatureScript as well since it inherits from UnitScript 2020-01-28 05:54:03 +01:00
Ovahlord
fcb79fee07 Core/Datastores: updated DBC structure names to generated member format 2020-01-25 12:36:32 +01:00
Aokromes
d6d3f06f06 New year 2020-01-04 18:32:38 +01:00
funjoker
6c56916b29 Misc: Update copyright information
Happy new year
2020-01-01 18:47:28 +01:00
Wyrserth
279a45e23c Core/Script: add script hook to allow overriding of a vehicle passenger's exit position (#23322)
* Core/Script: add script hook to allow overriding of a vehicle passenger's exit position.

* Allow to change orientation, and fix nopch.

* Keep original orientation, thanks jackpoz!

* Update Unit.cpp

Code cleanup

* Update Unit.cpp
2019-10-17 03:45:49 +02:00
Ovahlord
1e4cc2293a Core/Datastores: use generated member names for MapEntry fields
* load all dbc fields of MapEntry
2019-02-24 00:14:44 +01:00
Ovahlord
54c991bc3d Scripts/Maps: ported WorldMapScript database implementation and ported Deeprun Tram script and removed unnecessary parts from it.
*thx to Annakin?
2018-11-21 13:16:17 +01:00
Ovahlord
59d169e8e4 Merge branch 'dynamicSpawnMerge' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
# Conflicts:
#	src/server/game/Entities/Creature/Creature.cpp
#	src/server/game/Entities/Object/Object.cpp
#	src/server/game/Maps/Map.cpp
#	src/server/game/Maps/Map.h
2018-07-21 23:13:55 +02:00
Ovahlord
b976bc1187 Core/Spawns: merged Dynamic Spawning 2018-07-21 20:44:41 +02:00
Ovahlord
2cfdd3cbe0 Merge branch '4.3.4' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
# Conflicts:
#	src/server/game/AI/CoreAI/PetAI.cpp
#	src/server/game/Battlegrounds/Battleground.cpp
#	src/server/game/Battlegrounds/Zones/BattlegroundTP.cpp
#	src/server/game/DungeonFinding/LFGMgr.h
#	src/server/game/DungeonFinding/LFGQueue.h
#	src/server/game/Entities/Creature/Creature.h
#	src/server/game/Entities/Pet/Pet.cpp
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Entities/Player/Player.h
#	src/server/game/Entities/Unit/Unit.h
#	src/server/game/Globals/ObjectMgr.h
#	src/server/game/Groups/Group.cpp
#	src/server/game/Groups/Group.h
#	src/server/game/Guilds/Guild.cpp
#	src/server/game/Guilds/Guild.h
#	src/server/game/Handlers/GuildHandler.cpp
#	src/server/game/Handlers/LFGHandler.cpp
#	src/server/game/Handlers/MiscHandler.cpp
#	src/server/game/Handlers/NPCHandler.cpp
#	src/server/game/Instances/InstanceScript.cpp
#	src/server/game/Maps/Map.cpp
#	src/server/game/Maps/Map.h
#	src/server/game/Maps/ZoneScript.cpp
#	src/server/game/Server/WorldSession.cpp
#	src/server/game/Spells/SpellEffects.cpp
#	src/server/game/Weather/Weather.cpp
#	src/server/game/Weather/WeatherMgr.cpp
#	src/server/scripts/Commands/cs_reload.cpp
#	src/server/scripts/EasternKingdoms/Deadmines/boss_mr_smite.cpp
#	src/server/scripts/EasternKingdoms/Deadmines/deadmines.h
#	src/server/scripts/EasternKingdoms/ShadowfangKeep/instance_shadowfang_keep.cpp
#	src/server/scripts/EasternKingdoms/ShadowfangKeep/shadowfang_keep.cpp
#	src/server/scripts/EasternKingdoms/ShadowfangKeep/shadowfang_keep.h
#	src/server/scripts/EasternKingdoms/eastern_kingdoms_script_loader.cpp
#	src/server/scripts/Kalimdor/VortexPinnacle/vortex_pinnacle.h
#	src/server/scripts/Spells/spell_dk.cpp
#	src/server/scripts/Spells/spell_druid.cpp
#	src/server/scripts/Spells/spell_generic.cpp
#	src/server/scripts/Spells/spell_hunter.cpp
#	src/server/scripts/Spells/spell_mage.cpp
#	src/server/scripts/Spells/spell_pet.cpp
#	src/server/scripts/Spells/spell_shaman.cpp
#	src/server/scripts/Spells/spell_warrior.cpp
2018-03-28 12:35:52 +02:00
ariel-
5ff847159c Core: header cleanup, split realmlist, boost compatibility, cotire, remove stormlib/zlib and stormlib/bzip2 and instead use dep sources 2018-03-28 04:41:59 -03:00
Ovahlord
b60589fa9f Core/Players: merged a fix for frozen emotes in specific circumstances 2018-03-25 20:40:03 +02:00
Shauren
c385edb12d Core/Scripts: Fixed ENSURE_AI assertion failures when used in Reset()/InitializeAI() hooks with hotswap
Updates #20727
2018-02-10 11:51:34 +01:00
Aokromes
4bd0525edd Update copyright note for 2018 2018-01-01 01:06:19 +01:00
Aokromes
1a00fad992 Core/Scripts: Implemented OnlyOnceAreaTriggerScript 2017-12-11 16:15:22 +01:00
Erik Strandberg
a3b16c040b Port f913f3bb89 2017-12-10 00:37:21 +00:00
Yehonal
a73a5942d4 Core/Scripts: FOR_SCRIPTS macro shouldn't return early (#20187)
FOR_SCRIPTS, insteadof FOR_SCRIPTS_RET, shouldn't return
otherwise methods such as void ScriptMgr::OnPlayerEnterMap(Map* map, Player* player) will end prematurely
2017-09-10 15:25:00 +02:00
Aokromes
5c4153ba98 Core/OutdoorPvP: refactor using Position and Quat to pack parameters
- Moved statics to cpp
- Save scriptids into an array
2017-06-12 17:40:47 +02:00
treeston
aef568cdd1 Fix an issue where CanSpawn would never get invoked on creatures without per-guid script. 2017-05-31 16:10:04 +02:00
ariel-
b14b00da5c Core/ScriptMgr: use vector instead of list to contain Spell and Aura scripts and hooks 2017-05-04 01:41:35 +01:00
ariel-
f3246f835c Core/Scripts: remove OnDummyEffect hook/sOnDummyEffect ai hook
- Duplicated logic never used, sometimes only ScriptMgr version was called, sometimes only AI
- They only encourage bad scripting practices
- You can still use OnSpellHit or a SpellScript
2017-05-02 02:04:45 +02:00
Aokromes
55914733a0 Core/Scripts: Add support for spawn specific C++ scripts
By Krudor.
2017-03-25 10:27:51 +01:00
Aokromes
e09c37334d Reverting: Game/Scripting: Add OnGameEvent hook for game objects. 2017-02-19 09:09:43 +01:00
Aokromes
e956ea4e62 Game/Scripting: Add OnGameEvent hook for game objects.
Called when specific game event starts
2017-02-19 09:06:37 +01:00
Kittnz
159709e0b0 Game/Scripting: Add OnPlayerRepop hook
Called when a player presses release when he died
2017-02-10 05:26:15 +01:00
sirikfoll
dea47762be Core/Scripting: Fixed hotswap calling evade mode for dead creatures 2017-01-14 06:46:02 +01:00
Aokromes
719a317a67 Update copyright note for 2017 2017-01-02 07:26:38 +01:00
treeston
824db91cbe Various: Fix coverity reported issues. 2016-10-05 07:59:14 +02:00
treeston
c1cc7e0a36 Core/Movement: Add new SplineChainMovementGenerator that allows accurate replication of sniffed waypoints in static sequences, along with DB facilities that allow loading of waypoints from DB. 2016-09-20 12:54:54 +02:00
Naios
dcea4223dd Core/Scripts: Fix a crash when adding/removing objects from the map while swapping
* Ref #17833
2016-09-15 17:08:30 +02:00
Rochet2
19ed813f6b Core/Scripts: Enhance quest status hook by making it catch more status changes (#17865) 2016-09-10 14:25:57 +02:00
treeston
40d0fcfae6 Fine, this time I actually built it. Promise. 2016-09-09 20:00:53 +02:00
treeston
32de236865 Game/Scripting: Follow-up to b3d44d6. Fix script selection for creatures on difficulty > 0. 2016-09-09 20:00:30 +02:00
treeston
5bd9d82c9d Creature/Scripting: Move CreatureAI::CanRespawn to CreatureScript::CanSpawn. Now also applies to initial spawn. Dynamic spawning prep. 2016-09-09 19:57:25 +02:00
Aokromes
0d829c7d2d Core/Misc: Minimize differences between branches in WorldSession::Update
This commit removes OnUnknownPacketReceive script hook - it could never be fired anyway at that point
2016-08-31 08:15:01 +02:00
Naios
efa3d00ebf Core/Scripting: Fix acquiring of references between script swaps
* Delay unloading of shared libraries to the next update tick
  to prevent crashes in the destructor of the last referenced
  script instance.
* Closes #17557
2016-08-10 09:05:43 +02:00
Naios
4065ba87c6 Core/Scripting: Don't force event cancellation when swapping creatures.
* EventProcessor::KillAllEvents(force = false) should only be used
  by the EventProcessor.
2016-08-10 09:04:38 +02:00
Naios
c4e7dcc04d Core/Scripting: Kill pending unit events when swapping AI's 2016-08-10 08:58:56 +02:00
Naios
273ee4f87f Core/Scripting: Fix an assertion which was triggered at lazy unloading
* Also fixes 2 warnings
2016-08-10 08:53:09 +02:00
Naios
785c17381c Core/Scripting: Fix loading of spell/aurascripts
* Broken since 9cc97f226d
* There is still a crash when using lazy unloading which I
  will fix in a later commit (this commit should fix at least
  the static build and normal usage of the dynamic build).
* Closes #16948
2016-08-10 08:52:30 +02:00
Naios
293d51c8b0 Core/Scripting: Fix another warning when building statically 2016-08-10 08:43:32 +02:00
Naios
e23d063f5a Core/Game: Rewrote the ScriptMgr to support script reloading.
* Finally this commit enables dynamic script hotswapping
  and finished the PR #15671.
* Split the storage layout to use optimized storages
  for database bound and unbound scripts.
* Add several unload workers to reload scripts correctly
  -> Requires further investigation.
* Fixes memory leaks in ScriptMgr when dropping invalid scripts.
* Fixes VehicleScripts
* Makes OutdoorPvP scripts reloadable
* Makes InstanceMapScripts reloadable
* Makes CommandScripts reloadable
2016-08-10 08:40:44 +02:00
Aokromes
436cdfd7c9 Core/Game: Move scheduled map scripts counter methods into MapManager
* Since those have nothing to do with core scripts and are
  not wished inside the ScriptMgr
2016-08-10 06:40:03 +02:00
Aokromes
e8e164e28f Core/Game: Add a dynamic script reloader which reloads scripts modules on changes.
* is responsible for registering plain modules.
* requires compilation with the `WITH_DYNAMIC_LINKING` flag.
* requires further support of the ScriptMgr.
2016-08-10 03:29:20 +02:00
Aokromes
7ef9b246b5 CMake: Use inherited dependencies in scripts
* Removes the circular dependency between game <-> scripts
2016-08-10 00:33:48 +02:00
Aokromes
5302d9112b Core/Game: Converted the game library to a shared library.
* There is still the possibility to static link against game.
2016-08-08 20:11:29 +02:00
Aokromes
303082546b Sync with 3.3.5a core 2016-05-03 12:50:49 +02:00
ariel-
8bc477a2de Merge remote-tracking branch 'tc/3.3.5' into 4.3.4
Conflicts:
	sql/base/characters_database.sql
	sql/updates/world/2016_01_26_00_world.sql
	sql/updates/world/2016_01_31_00_world.sql
	sql/updates/world/2016_02_07_00_world.sql
	src/server/authserver/Server/AuthSession.cpp
	src/server/database/Database/Implementation/LoginDatabase.cpp
	src/server/database/Database/Implementation/LoginDatabase.h
	src/server/game/AI/ScriptedAI/ScriptedCreature.cpp
	src/server/game/AI/ScriptedAI/ScriptedCreature.h
	src/server/game/Achievements/AchievementMgr.cpp
	src/server/game/Chat/Chat.cpp
	src/server/game/DataStores/DBCStores.cpp
	src/server/game/DataStores/DBCStructure.h
	src/server/game/DataStores/DBCfmt.h
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Globals/ObjectMgr.cpp
	src/server/game/Handlers/AuctionHouseHandler.cpp
	src/server/game/Handlers/MailHandler.cpp
	src/server/game/Handlers/MovementHandler.cpp
	src/server/game/Server/WorldSocket.cpp
	src/server/game/Server/WorldSocket.h
	src/server/game/Spells/Auras/SpellAuraEffects.cpp
	src/server/game/Spells/SpellEffects.cpp
	src/server/game/Spells/SpellMgr.cpp
	src/server/scripts/Spells/spell_druid.cpp
	src/server/scripts/Spells/spell_generic.cpp
	src/server/scripts/Spells/spell_hunter.cpp
	src/server/scripts/Spells/spell_rogue.cpp
	src/server/scripts/Spells/spell_shaman.cpp
	src/server/shared/Networking/AsyncAcceptor.h
	src/tools/map_extractor/CMakeLists.txt
	src/tools/map_extractor/System.cpp
	src/tools/map_extractor/adt.h
	src/tools/mmaps_generator/MapBuilder.cpp
2016-02-21 07:02:53 -03:00
Shauren
7f817a4fc0 Core/Scripts: Fixed calling UnitScript hooks
Closes #16543

(cherry picked from commit f809e5e13e)
2016-02-11 16:36:08 +01:00
treeston
6102a7937d Maps/Instances: Implement handling of CMSG_SET_SAVED_INSTANCE_EXTEND 2016-02-10 19:35:11 +01:00