Commit Graph

156 Commits

Author SHA1 Message Date
ccrs 4e6c59dca7 Core/Unit: rename several getters to follow codestyle
uint8 GetLevel()
        uint8 GetLevelForTarget(WorldObject const* /*target*/)
        void SetLevel(uint8 lvl)
        uint8 GetRace()
        uint32 GetRaceMask()
        uint8 GetClass()
        uint32 GetClassMask()
        uint8 GetGender()

(cherry picked from commit 5c09ff51f7)
2021-12-13 00:42:20 +01:00
ModoX 45b4910c96 Scripts/Spells: Core/Spells: Fixed Consecration damage, implemented Hammer of the Righteous, partly implemented Consecrated Ground talent (#27005) 2021-10-05 22:50:40 +02:00
ModoX a0c4a3071c Core/Auras: Implemented new aura type 487 (SPELL_AURA_COSMETIC_MOUNTED) (#26988) 2021-10-02 21:59:22 +02:00
ariel- 9fa95b4b57 Core/Spells: Fix periodic rolling adding bonuses twice
Calculation is now done in CalculateAmount

(cherry picked from commit 93eda20d5c)
2021-09-04 22:52:31 +02:00
ariel- f3548d45d0 Core/Spells: rework part 3: spells only handle at most one UnitAura and one DynObjAura during its lifetime
Closes #15088

(cherry picked from commit e8d5aa56cc)
2021-08-28 15:59:11 +02:00
ariel- 5fbddef85f Core/Spell: SpellValueOverrides encapsulation
- No sense to let scripts use SpellValueOverrides, we already have modifiers in CastSpellExtraArgs struct

(cherry picked from commit 3b01cccd7e)
2021-06-14 00:19:50 +02:00
Matan Shukry 81eac82656 Core/Spells: Implement priest holy words + modify cooldown for a charge (#26270)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-04-19 23:54:13 +02:00
Treeston 9b141207d1 [3.3.5] CastSpell unclusterfucking (that's a word now) (#21123)
Core/Spell: The giant CastSpell unclusterfucking (that's a word now) of this generation.

- CastSpell now always takes three arguments - target, spellId, and a struct containing extra arguments
- This struct (CastSpellExtraArgs, see SpellDefines.h) serves as a conglomerate of every previous combination of the 20 billion different CastSpell overloads, all merged into one
  - It has some great utility constructors - check them out! All of these can be used to implicitly construct the ExtraArgs object.
- A gajillion refactors to make everything behave the way it always has

(cherry picked from commit d507a7e338)
2021-04-16 15:22:42 +02:00
jackpoz e17e4e6f07 Core/Misc: Replace time(NULL) with GameTime::GetGameTime()
(cherry picked from commit 12701cb0c6)

 Conflicts:
	src/server/game/Achievements/AchievementMgr.cpp
	src/server/game/AuctionHouse/AuctionHouseMgr.cpp
	src/server/game/AuctionHouseBot/AuctionHouseBotBuyer.cpp
	src/server/game/AuctionHouseBot/AuctionHouseBotSeller.cpp
	src/server/game/Battlefield/Battlefield.cpp
	src/server/game/Battlefield/Zones/BattlefieldWG.cpp
	src/server/game/Battlegrounds/BattlegroundMgr.cpp
	src/server/game/Calendar/CalendarMgr.h
	src/server/game/DungeonFinding/LFGQueue.cpp
	src/server/game/Entities/Corpse/Corpse.cpp
	src/server/game/Entities/Creature/Creature.cpp
	src/server/game/Entities/Item/Item.cpp
	src/server/game/Entities/Pet/Pet.cpp
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Globals/ObjectMgr.cpp
	src/server/game/Grids/ObjectGridLoader.cpp
	src/server/game/Guilds/Guild.cpp
	src/server/game/Handlers/AuctionHouseHandler.cpp
	src/server/game/Handlers/BattlefieldHandler.cpp
	src/server/game/Handlers/CalendarHandler.cpp
	src/server/game/Handlers/CharacterHandler.cpp
	src/server/game/Handlers/ChatHandler.cpp
	src/server/game/Handlers/LFGHandler.cpp
	src/server/game/Handlers/MailHandler.cpp
	src/server/game/Handlers/MiscHandler.cpp
	src/server/game/Handlers/MovementHandler.cpp
	src/server/game/Handlers/PetHandler.cpp
	src/server/game/Handlers/QueryHandler.cpp
	src/server/game/Handlers/TicketHandler.cpp
	src/server/game/Instances/InstanceSaveMgr.cpp
	src/server/game/Server/WorldSession.cpp
	src/server/game/Server/WorldSocket.cpp
	src/server/game/Spells/Auras/SpellAuras.cpp
	src/server/game/Tickets/TicketMgr.cpp
	src/server/game/Tickets/TicketMgr.h
	src/server/game/World/World.cpp
	src/server/scripts/Commands/cs_gobject.cpp
	src/server/scripts/Commands/cs_instance.cpp
	src/server/scripts/Commands/cs_list.cpp
	src/server/scripts/Northrend/zone_wintergrasp.cpp
	src/server/scripts/Spells/spell_item.cpp
2021-04-15 05:53:27 +02:00
ariel- 794a3e4388 Core/Auras: fixed off by one error in counting SPELL_ATTR5_START_PERIODIC_AT_APPLY ticks
- Made SpellInfo::GetMaxTicks and AuraEffect::GetTotalTicks return the same number without mods (dumped arbitrary default return value of 6 and arbitrary 30 sec limit)
- They should be streamlined whenever SPELL_AURA_48 is implemented

(cherry picked from commit 7dff0e3246)
2021-03-15 20:17:31 +01:00
Matan Shukry 1086007f98 Scripts/Spells: Fixed various paladin spell scripts and removed outdated ones 2021-03-04 22:46:44 +01:00
Matan Shukry 37db083589 Scripts/Spells: Changed palading spell scripts to use RegisterSpellScript and RegisterAuraScript (#26149) 2021-02-24 22:30:22 +01:00
Matan Shukry ed2a0b610a Scripts/Spells: Remove old paladin spell scripts (#26148) 2021-02-24 22:13:52 +01:00
Matan Shukry 7159de62b6 Scripts/Spells: Remove const from AuraEffect argument for AuraEffectProcFn 2021-02-13 14:08:16 +01: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
Shauren 1c52d5fff7 Core/Misc: Replace NULL with nullptr 2020-08-14 17:06:03 +02:00
Shauren c7306439e7 Core/Spells: Implement using different difficulty data from all spell related db2s, not just SpellEffect and SpellPower 2020-06-12 01:29:18 +02:00
Aokromes b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
vincent-michael 5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
joschiwald 1bd01eaab8 Core/Spells: Fixed Lay on Hands not triggering Forbearance on target 2018-02-24 16:43:47 +01:00
ariel- 8cb118009e Core/Spell: restore old proc system behaviour on auras self proc.
- Use Spell::m_triggeredByAuraSpell and compare against trigger aura, it requires scripts to set triggeredByAura parameter.
- Fixed existing scripts lacking it

DB/Spell: Anger Capacitor (Tiny Abomination in a Jar) proc

Closes #18269

(cherry picked from commit 5b56c94e6d)

# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Spells/Auras/SpellAuras.cpp
#	src/server/game/Spells/Spell.cpp
#	src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
#	src/server/scripts/Pet/pet_hunter.cpp
#	src/server/scripts/Spells/spell_dk.cpp
#	src/server/scripts/Spells/spell_druid.cpp
#	src/server/scripts/Spells/spell_hunter.cpp
#	src/server/scripts/Spells/spell_item.cpp
#	src/server/scripts/Spells/spell_mage.cpp
#	src/server/scripts/Spells/spell_paladin.cpp
#	src/server/scripts/Spells/spell_priest.cpp
#	src/server/scripts/Spells/spell_rogue.cpp
#	src/server/scripts/Spells/spell_shaman.cpp
#	src/server/scripts/Spells/spell_warlock.cpp
#	src/server/scripts/Spells/spell_warrior.cpp
2018-01-13 16:38:07 +01:00
vincent-michael 7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01:00
joschiwald 439ac5756c Core/Spells: Implemented spells causing Forbearance
Ref #20937
2017-12-23 13:45:50 +01:00
Hadifaren 00f6ca060f Scripts/Spells: Implemented Blinding Light (#20933) 2017-11-19 16:30:13 +01:00
ariel- b86150352d Core/Scripts: added missing null checks for DamageInfo struct
(cherry picked from commit 666422d827)

# Conflicts:
#	src/server/scripts/Spells/spell_dk.cpp
#	src/server/scripts/Spells/spell_mage.cpp
#	src/server/scripts/Spells/spell_paladin.cpp
#	src/server/scripts/Spells/spell_priest.cpp
#	src/server/scripts/Spells/spell_rogue.cpp
#	src/server/scripts/Spells/spell_shaman.cpp
#	src/server/scripts/Spells/spell_warlock.cpp
#	src/server/scripts/Spells/spell_warrior.cpp
2017-09-05 11:57:29 +02:00
Shauren 12d0306543 Core/Spells: Use ValidateSpellInfo in all scripts 2017-06-03 01:34:21 +02:00
Shauren 3a418a0bbc Core/Common: Include cleanup 2017-05-11 22:29:51 +02:00
ariel- b7bf703737 Core/Scripts: Convert spells to new proc system
- Converted Unit::HandleDummyAuraProc function to AuraScripts
  * Extra: DMC: Madness now uses DB texts. yay!
  * Extra: improvements on Imp. Spell Reflection (range and max targets, filter caster with conditions)

- Fixed Glyph of Succubus. (Closes #6599)

- Changed old (not-blizz) behavior of Vampiric Embrace:
  * Before: party heal affected the priest too and self heal was reduced by that amount to not over-heal
  * Now: self heal amount not affected, rather filter the priest out of the party heal using conditions :)

- Solve bug in AQ 3p set bonus, it should only trigger when healing others, not self heals.
- Priest T10 2p bonus (heal) now rolls its effect properly

- Use brand new GetEffectiveHeal to fix #17142
- While we're at it, also close #17034 for good
- Converted Unit::HandleAuraProc function to AuraScripts (#17941)
- Converted Unit::HandleAuraProc function to AuraScripts (cont'd) (#17955)
- Corrected Flametongue weapon damage formula
- Actually check offhand weapon for flametongue in Lava Lash script
- Implemented halved proc chance for Missile Barrage on Arcane Barrage, Fireball, Frostbolt and Frostfire Bolt cast
- Converted Unit::HandleProcTriggerSpell function to AuraScripts (#17956)
- De-hack Earth shield. Fixes #13808
- Updated Honor among Thieves
- Implemented mana proc for Mark of Conquest in case of ranged attack
- Fixed Scent of Blood giving more stacks than the talent rank currently learnt.
- Ported old proc table. Proc system is dead. Long live the proc system!
- Recklessness should get charges removed per cast. Closes #15529
- Use proc system to remove Molten Core charges on Incinerate/Soul Fire cast. Closes #15942

Closes #3463
Closes #5401
Closes #15595
Closes #15974
Closes #16679
Closes #17925

(cherry picked from commit 2ff855054f)

# Conflicts:
#	src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp
#	src/server/scripts/Spells/spell_dk.cpp
#	src/server/scripts/Spells/spell_druid.cpp
#	src/server/scripts/Spells/spell_hunter.cpp
#	src/server/scripts/Spells/spell_item.cpp
#	src/server/scripts/Spells/spell_mage.cpp
#	src/server/scripts/Spells/spell_paladin.cpp
#	src/server/scripts/Spells/spell_priest.cpp
#	src/server/scripts/Spells/spell_rogue.cpp
#	src/server/scripts/Spells/spell_shaman.cpp
#	src/server/scripts/Spells/spell_warlock.cpp
#	src/server/scripts/Spells/spell_warrior.cpp
2017-04-23 19:01:39 +02:00
Ulduar2 7b4bdc6b8f Core/Spells: Add duration argument to Unit::SendPlaySpellVisualKit (#19487) 2017-04-23 15:23:28 +02:00
Shauren 2a8294031b Core/Spells: Removed most uses of SpellIcon to identify spells 2017-04-02 23:29:26 +02:00
DoctorKraft 4075bd16e4 Core/Spells: Fixed Divine Storm (#19031) 2017-02-03 20:49:30 +01:00
Keader d9eb79c3c5 Core/Spells: Missing override 2017-02-03 07:11:15 -03:00
DoctorKraft 8aa07daff3 Core/Spells: Divine Steed (#19027) 2017-02-02 18:19:08 +01:00
vincent-michael 86b98686a9 Update copyright note for 2017
Happy new year
2017-01-01 16:23:13 +01:00
Shauren 5411ca8cdf Core/Units: Removed attack speed float to int conversion special case in building SMSG_UPDATE_OBJECT 2016-11-25 17:58:48 +01:00
Zedron 4b4237174f Core/Spells: Fixed a possible crash in spell_pal_light_s_beacon 2016-01-24 17:09:02 -06:00
joschiwald 09adf4d0ad Scripts/Spells: fixed Beacon of Light
# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Entities/Unit/Unit.h
#	src/server/scripts/Spells/spell_paladin.cpp
2016-01-17 01:52:22 +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 00b4e8b6cc Scripts: Added missing overrides 2015-11-15 03:38:02 +01:00
Daniel M. Weeks b948a4275e Add missing override keyword in scripts 2015-04-02 22:28:05 -04:00
Shauren 56186319bd Core/Spells: Cooldown updates
* Refactored cooldown handling to separate class shared by creatures and players
* Updated and enabled cooldown packets
* Implemented creature school lockouts
* Implemented spell charges
* Fixed AuraUpdate structure
* Fixed aura flag AFLAG_NOCASTER handling
* Implemented spell charge related auras
2015-02-17 01:01:44 +01:00
Vincent-Michael ab90f74486 Update copyright note for 2015
Happy new year
2015-01-01 00:28:09 +01:00
Rat 2144d6c851 Core/Spells: core now builds without scripts project, still not stable 2014-11-24 18:57:49 +01:00
Vincent-Michael da91ae1f22 Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts:
	src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp
	src/server/scripts/EasternKingdoms/zone_isle_of_queldanas.cpp
	src/server/scripts/Spells/spell_dk.cpp
	src/server/scripts/Spells/spell_druid.cpp
	src/server/scripts/Spells/spell_shaman.cpp
	src/server/scripts/Spells/spell_warrior.cpp
2014-09-27 05:23:46 +02:00
jackpoz 16a884d999 Core/Misc: Refactor scripts to fix static analysis warnings
Eighth batch of fixes targeting 80 issues reported by Coverity
2014-09-25 21:19:34 +02:00
jackpoz 05d9dcd37f Merge branch 'Xanvia/ShoR' into 4.3.4
Close pull request #9071
2014-08-24 13:38:54 +02:00
DDuarte 059f3030b4 Core: Fix compile and a warning in spell_paladin 2014-07-22 14:38:37 +01:00
Shauren 909acdbac3 Merge remote-tracking branch 'origin/master' into 4.3.4
Conflicts:
	src/server/authserver/Main.cpp
	src/server/authserver/Realms/RealmList.cpp
	src/server/authserver/Realms/RealmList.h
	src/server/authserver/Server/AuthSession.cpp
	src/server/authserver/Server/AuthSocket.h
	src/server/authserver/Server/RealmAcceptor.h
	src/server/game/Accounts/AccountMgr.h
	src/server/game/Achievements/AchievementMgr.cpp
	src/server/game/Achievements/AchievementMgr.h
	src/server/game/Battlegrounds/ArenaTeamMgr.cpp
	src/server/game/Conditions/ConditionMgr.cpp
	src/server/game/DungeonFinding/LFGMgr.h
	src/server/game/Entities/Object/Object.h
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Player/Player.h
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Handlers/BattleGroundHandler.cpp
	src/server/game/Movement/Spline/MoveSplineFlag.h
	src/server/game/Quests/QuestDef.cpp
	src/server/game/Quests/QuestDef.h
	src/server/game/Server/WorldSession.cpp
	src/server/game/Server/WorldSession.h
	src/server/game/Server/WorldSocket.cpp
	src/server/game/Server/WorldSocket.h
	src/server/game/Spells/Spell.cpp
	src/server/scripts/Commands/cs_debug.cpp
	src/server/scripts/OutdoorPvP/OutdoorPvPEP.cpp
	src/server/scripts/Spells/spell_mage.cpp
	src/server/scripts/Spells/spell_rogue.cpp
	src/server/scripts/Spells/spell_shaman.cpp
	src/server/scripts/Spells/spell_warrior.cpp
	src/server/shared/Cryptography/BigNumber.h
	src/server/worldserver/RemoteAccess/RASocket.cpp
	src/server/worldserver/worldserver.conf.dist
2014-07-19 03:51:11 +02:00
Shauren 7532864264 Buildsystem/MSVC: Warning fixes
C4800 'type' : forcing value to bool 'true' or 'false' (performance warning)
C4127 conditional expression is constant
2014-07-17 15:42:57 +02:00
Subv dfdc19f3bc Merge branch master into boost
Conflicts:
               BattlegroundMgr.h
2014-07-13 16:52:38 -05:00