Commit Graph

83 Commits

Author SHA1 Message Date
Sorikoff a463e7f1bd Scripts/Ebon Hold: How To Win Friends And Influence Enemies (#24090)
* Scripts/Ebon Hold: How To Win Friends And Influence Enemies

* Scripts/Ebon Hold: Improve SQL!

* Scripts/Ebon Hold: Final touch

* Scripts/Ebon Hold: Actually final touch

* Rename 9999_99_99_99_world.sql to 2020_01_26_04_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 13c81f55e3)
2021-12-20 23:47:37 +01:00
Sorikoff 1fd0ba816f Scripts/Spells: Devour Humanoid (#23660)
(cherry picked from commit 0d53a0ba98)
2021-12-18 00:01:56 +01:00
ModoX 437fb2aaba Core/CreatureTexts: Added new field SoundPlayType to enable usage of ObjectSounds within creature_text (#27136)
* Also adjusted Vigilant Quoram texts to use ObjectSounds
2021-10-23 13:10:32 +02:00
Keader 9b7f3bff9f Core/Scripts: Fixed tabs issues introduced in 5bef3e426a
(cherry picked from commit 31ad6358fb)
2021-06-19 23:33:24 +02:00
Keader ad5b0fa9cd Core/Scripts: Fixed possible crashs related with JustDied
(cherry picked from commit 5bef3e426a)
2021-06-19 23:33:24 +02:00
ariel- fccf1a8c62 Core/Auras: removed caster dependency from core
- Decoupled Unit logic: split of spell critical chance into done (caster bonuses) and taken (target bonuses), this allows to precalculate caster bonuses on aura apply and then check victim's auras on damage/healing calc
- Made static a bunch of methods (they no longer have this pointer because they are now called from periodic handlers which may or may not have an active caster in world)
- Simplified all AuraEffect bonuses into AuraEffect::_amount, no more duplicated code
- Critical chance and whether or not caster is player owned unit (for resilience calcs) is now saved one level upper, on Aura itself (it's impossible as of 3.3.5 to have different effects with different critical chances)
- Minor cleanup of SPELL_DAMAGE_CLASS_NONE and Arcane Potency (#18813) crit handling

Closes #19876

(cherry picked from commit cb9e72e521)
2021-06-13 00:59:13 +02:00
Treeston bce43de7f3 Core/AI: Some more refactoring prep for #19930. CreatureAI::EnterCombat is now called CreatureAI::JustEngagedWith. There's also two new methods on UnitAI, though they're never invoked right now.
(cherry picked from commit 6113b9dec2)
2021-04-16 20:22:13 +02:00
Shauren b231903932 Core/Misc: Port all the refactors sneaked in master to 3.3.5 include cleanup port 2020-09-04 13:38:24 +02:00
ccrs 97585597f0 Core/Movement: waypoint movement (#20121)
Following the work done in #19361 this is the cleanup and improvement of the related logic of waypoint management.

Ref 28050f3 #18020
(taking the good parts and ignoring the incomplete work)

(cherry picked from commit 7fff83d675)
2020-08-23 00:45:46 +02:00
treeston 2dfafa69eb Hi, I'm Treeston, and welcome to Combat PR Prep Refactors.
Today, we're moving UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC to higher-level abstraction so combat manager can react to it.
New methods on Unit:
- void SetImmuneTo<All/PC/NPC>(apply, keepCombat = false);
- bool IsImmuneTo<All/PC/NPC>() const;

(cherry picked from commit 74af880217)
2020-08-18 18:53:13 +02:00
Shauren 1c52d5fff7 Core/Misc: Replace NULL with nullptr 2020-08-14 17:06:03 +02:00
TecDian 1aaf09b199 Core/Scripts: simplify speech for DK races quests
(cherry picked from commit 3f34c2f5eb)
2020-07-16 21:47:27 +02:00
ariel- 6604849716 Core/Scripts: unified scripted gossip/quest api
- Changed self-accessor on GameObjectAI to "me", like UnitAI
- Moved all related functions to AI, now Unit and GameObject have the same function names with identical behaviour
- Remove "OnUpdate" from CreatureScript/GameObjectScript, was never used and we already have AI Update method
- Quest methods no longer return a bool, the return value was used to call the AI version if the ScriptMgr one returned false
- Implemented GameObjectAI::Destroyed hook (was never called), implemented Damaged method
- Rename OnStateChanged to OnLootStateChanged to reflect when it's really called, and created a new hook OnStateChanged that only gets called on GOState change
- Since the functions are now only getting called from AI, made GetAI methods full virtual. (CanSpawn method is anyways going to be used on creatures with AI)

(cherry picked from commit f913f3bb89)
2020-05-03 03:04:32 +02:00
ariel- 93c19c4194 Core/Misc: camelize GetFaction/SetFaction properly
(cherry picked from commit 4c4dca6d69)
2020-04-29 01:36:41 +02:00
Aokromes b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
Shauren 455959c606 Core/PacketIO: Rewrite updatefield handling 2019-06-08 17:06:57 +02:00
vincent-michael 5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
vincent-michael 7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01:00
Shauren b453e12423 Core/Game: Include cleanup part 5
* ObjectMgr.h
* Player.h
* Unit.h
* G3D should no longer propagate everywhere from Spline/MotionMaster
2017-06-04 01:00:45 +02:00
vincent-michael 86b98686a9 Update copyright note for 2017
Happy new year
2017-01-01 16:23:13 +01:00
Vincent-Michael 478cc756eb Update copyright note for 2016
Happy new year (Again new year with idiots ...)
2016-01-01 00:34:25 +01:00
Vincent-Michael ab90f74486 Update copyright note for 2015
Happy new year
2015-01-01 00:28:09 +01:00
Shauren 9cc7044546 Core/Entities: First batch of removing implicit conversions of ObjectGuid to uint64 2014-10-21 19:23:32 +02:00
Shauren a0e50ea35f Core/Entities: Use ObjectGuid class in game project 2014-09-14 16:14:12 +02:00
jackpoz 53d3becf3c Core/Misc: Refactor scripts to fix static analysis warnings 2014-09-03 22:11:41 +02:00
jackpoz dd4dbdcd16 Core/Misc: Refactor scripts to fix static analysis warnings
First batch of fixes targeting 100 issues reported by Coverity
2014-08-31 20:42:02 +02:00
jackpoz 3388587b7a Core/Misc: Replace rand() calls with SFMT 2014-07-22 21:43:19 +02:00
jackpoz 1083dbb993 Core/Misc: Remove Unit::Get* wrappers for ObjectAccessor::Get* 2014-05-20 21:21:33 +02:00
Dehravor 24ae6a6802 Core/Misc: Remove obsolete C++11 backward compatibility macros
OVERRIDE, FINAL, DELETE_MEMBER
2014-04-29 16:35:11 +02:00
Vincent_Michael 20004050bc Update copyright note for 2014.
Happy new year.
2014-01-01 00:07:53 +01:00
Shauren 107af52853 Core/Chat: Refactored building chat packets
* Moved everything into one specialized method instead of being scattered all over the place
* Allow localizing creature names in chat messages (when using $N)
* Send SMSG_GM_MESSAGECHAT for gm messages
2013-12-23 14:23:49 +01:00
Vincent_Michael 9802c7b891 Scripts/Misc: Coding Style unification? (by Aokromes) 2013-10-22 20:24:05 +02:00
joschiwald 2b19ba1879 Misc: replace Unit::GetPlayer with ObjectAccessor::GetPlayer and some cosmetic changes 2013-08-18 01:41:10 +02:00
Vincent-Michael e464d2bd2c Scripted: Some cleanups + ninja changes 2013-07-08 21:15:23 +02:00
Nay 3561ab98ba Misc: Use override and final C++11 keywords in a few places (mostly scripts)
OVERRIDE and FINAL are TC macros (expand to nothing if compiler does not  support C++11)
2013-07-06 20:21:45 +01:00
Vincent-Michael b4d4e04f53 Scripts/Misc: Rename creatures with mob_ / mobs_ in npc_
Note: Have fun :P
2013-07-04 22:11:47 +02:00
Vincent-Michael e6185c92fc Scripts: Convert DoCast(me->GetVictim(), SPELL_XXXXX); in DoCastVictim(SPELL_XXX); 2013-06-22 16:53:13 +02:00
Malcrom 66978cfc3b Core: Some function renaming. 2013-06-11 19:54:27 -02:30
Nefarion 49fd11ab5a First step of comment style refactoring to doxygen-style. 2013-03-08 21:55:37 +01:00
Shauren 5b414bb813 Core/Scripts: Removed useless const modifier on method parameters accepting primitive types passed by value 2013-02-19 17:35:27 +01:00
Nay 028c72a9f2 Core/NPCs: Refactor equipments
- creature_template.equipment_id deleted
- creature_equip_template.entry == creature_template.entry
- id field added to creature_equip_template -> PK(entry, id)
- id field in creature_equip_template starts at 1
- creature.equipment_id references id of creature_equip_template
- creature.equipment_id = 0 means no equipment at all (default 1)
- creature.equipment_id = -1 means pick a random equipment from creature_equip_template
- add equipment info to .npc info command

While table creature_equip_template got bigger in size, this system is easier to mantain and allows creatures to have a random template from a group of equipments
2013-02-18 12:24:18 +00:00
Vincent_Michael 8814d8c136 Script/ToCr: Fix crash for lord jaraxxus Mistress Kiss + cleanup 2013-01-30 18:06:19 +01:00
Gacko 29cd1dbec1 Core/Quest: Bloody Breakout
Closes #641
2013-01-28 19:50:01 +01:00
Vincent_Michael cc65aba789 Update copyright note for 2013.
Happy new year.
2013-01-01 00:41:01 +01:00
Spp e954498560 Core/Misc: Random changes here and there to minimize differences with 4.3.4 branch 2012-11-27 13:03:12 +01:00
Gacko 7accb42cc4 Core/DB: Convert 25 more scripts to creature text 2012-11-26 22:55:12 +01:00
Gacko a66adcf6e1 Core/DB: Chapter 2 in creature text 2012-11-23 15:59:10 +01:00
Gacko 14b728255c Core/DB: Converted 11 scripts to creature text 2012-11-23 15:59:10 +01:00
Spp 7bef4ce401 Core/Misc: Reduce header dependencies - Step III 2012-11-20 15:03:56 +01:00
Spp b99c347747 Core: Remove Player.h dependency from all the possible headers 2012-11-17 05:18:37 +01:00