Commit Graph

1123 Commits

Author SHA1 Message Date
Kitzunu
337135bf9e refactor(Core/Misc): Use NpcFlag helpers (#19676)
* chore(Core/Misc): Use HasNpcFlag instead of HasFlag

* extend to all npcflag helpers
2024-08-19 10:17:02 +02:00
Kitzunu
e33a56d89b fix(Core/Creature): Nullcheck for questgreeting greeting (#19669)
* fix(Core/Creature): Nullcheck for questgreeting greeting

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/19659

* Update GossipDef.cpp
2024-08-18 06:41:18 -03:00
Grimdhex
5cbe485785 fix(Core/PlayerUpdates): incorrect backslash in a debug_log (#19630) 2024-08-15 18:44:07 -03:00
Grimdhex
9dc20bc261 fix(Core/Entities): crash fix cause by a pointer change in #19622 (#19633)
* fix(Core/Entities): crash fix cause by a pointer change in #19622

* fix blank space for codestyle check
2024-08-15 16:28:50 -03:00
Grimdhex
7457aef78d refactor(Core/Entities): Cleanup Unit header file (#19622)
* move several enum definitions in a new files

* move more things

* remove the include comment

* move the related code to CharmInfo in this own file

*original idea of Ovahlord

Co-Authored-By: Ovahlord <18347559+Ovahlord@users.noreply.github.com>

* fix clang build errors and few blank lines

* missing forward declaration

* new tentative to fix gcc/clang build

* add several include could be necessary for gcc/clang compilation

* .

* revert some include since the last AC update

* fix some loop inconsistencies

* align all enums in UnitDefine.h

---------

Co-authored-by: Ovahlord <18347559+Ovahlord@users.noreply.github.com>
2024-08-15 05:12:44 -03:00
Kitzunu
2e02c76399 fix(Core/Creature): quest_greeting_locale (#19615)
* fix(Core/Creature): quest_greeting_locale

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/14845
2024-08-13 21:09:36 +02:00
Benjamin Jackson
67010623a0 fix(Core): Adjustments to summoning ritual object handling. (#19600)
* Init.

* Allow self-summoning.

* Revert unintended change.

Self-summoning still works fine without this being removed, I see no harm in putting it back.
2024-08-13 12:12:05 -03:00
Saqra1
ed824de7b8 fix(Core): Ritual animations (#19602)
Channel the same spell as the original caster when clicking on a ritual
portal, but ignore the effects of the spell.

Co-authored-by: killerwife <killerwife@gmail.com>
2024-08-13 11:54:17 -03:00
Benjamin Jackson
3b2b8406a8 fix(Core/Entities): Only add use to spell caster objects if cast succeeds. (#19601)
Init.
2024-08-12 08:46:20 -03:00
Kitzunu
e4df159f5c refactor(Core/Chat): Move SendNotification to ChatHander (#19491)
* refactor(Core/Chat): Move SendNotification to ChatHander

* Update Battleground.cpp

* fix build

* Update src/server/game/Chat/Chat.h
2024-08-10 11:39:46 -03:00
Francesco Borzì
02a05fbd4c refactor(src/common): remove unused imports (#19506)
* refactor(src/common): remove unused imports

* fix: build

* chore: fix build

* chore: size_t -> std::size_t

* chore: fix fuckup from previous commit

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build with std::size_t

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build
2024-07-30 20:06:46 -03:00
Francesco Borzì
54fadbda67 refactor(src/server/game/Entities): remove unused imports (#19507) 2024-07-28 16:39:39 -03:00
avarishd
3c9dc6ed78 fix(Core/Unit): Split Damage auras should ignore LOS (#19357) 2024-07-27 07:31:22 -03:00
Kitzunu
3fbded8f6b refactor(Core/Chat): PSendSysMessage to fmt (#19449)
* refactor(Core/Chat): PSendSysMessage to `fmt`
2024-07-23 23:48:46 +02:00
avarishd
618f97bee6 feat(Core/Unit): Enable/Disable Daze config (#19454)
* daze

* bruh

* bruhx2
2024-07-20 15:53:00 -03:00
Kitzunu
21f86d1c3c chore(Core/Misc): Remove deprecated code (#19413)
* Config - Deprecated for 3 years
* ChatCommand - Deprecated for 2 years
* getLevel() - Deprecated for 2 years
* SendGlobalText - Deprecated for 8 years +
2024-07-20 09:11:01 +03:30
Benjamin Jackson
94d3caaf1b fix(Core): Further adjust packet structure for attack stop opcode. (#19438)
* Init.

* Fixy fix.
2024-07-19 06:58:58 -03:00
Benjamin Jackson
295e4dd3c6 fix(Core): Correct packet structure for combat stop messages. (#19434)
* Init.

* Reviewed changes.
2024-07-18 21:19:36 -03:00
Jelle Meeus
9f5b01ab37 fix(Core/Unit): add melee spell breaking for spells with cast time (#19376)
melee spells breaking
2024-07-17 12:49:43 +02:00
Saqra1
a950a7f44e fix(Core/Pets): Add option to revive pets with full mana (#19383)
* fix(Scripts/Spells): Revive pets with full mana in bgs

* Pets were incorrectly revived without restoring its mana

* Closes #15894

* ready for merge

---------

Co-authored-by: Saqra1 <>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-07-17 12:38:10 +02:00
Jelle Meeus
e8af1aaffc fix(Scripts/Spells): warlock seed of corruption (#19322)
* remove seed of corruption handling in unit.cpp

* add generic and warlock aurascript

add warlock  aurascript

add enum

add generic aurascript

add OnRemove

2ff855054f (diff-ea612aafadff90005e88b243eb000369be9e5cb6f8dc85a008d31e42b156e0ec)

detonation threshold scaling added in: df5afca278

Co-authored-by: ariel- <ariel-@users.noreply.github.com>

* add LoS check to generic damage

* refactor 2 scripts to 1 with args

refactor const_cast to GetAura()->GetEffect(

refactor reduce a line

* fix detonation threshold scaling

changed SPELL_DIRECT_DAMAGE to DOT

* remove not needed IsExpired() check

removal upon expiration is notified by AURA_REMOVE_BY_EXPIRE

* update comment

* refactor script with args to single spellscript, fix detonate by evade

* refactor

detonation to Detonate()
rename amount to remainingDamage
remove no tneeded HealthBelowPctDamaged

* refactor to 2 spell scripts again

* rename detonation spell from seed_of_corruption to seed_of_corruption_damage

avoids confusion with seed of corruption (with dot effect)

---------

Co-authored-by: ariel- <ariel-@users.noreply.github.com>
2024-07-17 01:50:38 +02:00
Benjamin Jackson
05f4fa1a35 fix(Core/Unit): Adjust melee attack stop logic. (#19397)
Init.
2024-07-14 12:31:40 -03:00
Jelle Meeus
a69d02e513 fix(Scripts/Spells): warlock demonic pact (#19386)
* add Demonic Pact Aura script

2ff855054f (diff-ea612aafadff90005e88b243eb000369be9e5cb6f8dc85a008d31e42b156e0ec)

Co-authored-by: ariel- <ariel-@users.noreply.github.com>

* spell_warlock aura:spell_warl_demonic_pact_aura

* fixup! spell_warlock aura:spell_warl_demonic_pact_aura

* remove not needed spell correction, flag is already set

* subtract current proc bonus before calculating new bonus

* also increase healing done

* remove Demonic Pact handling in Unit

* refactor indent, remove bonus from spell group effects e.g. totem of wrath

* Revert "refactor indent, remove bonus from spell group effects e.g. totem of wrath"

This reverts commit 104041172d34f542cc934e9f468407c36912cc7f.

* refactor indent

* manually set proc cooldown

---------

Co-authored-by: ariel- <ariel-@users.noreply.github.com>
2024-07-13 12:38:59 -03:00
Benjamin Jackson
70eb920b10 feat(Core/Unit): Implement munching as a configurable option. (#19188)
* Init.

* Correct description.

* Adjust boolean to integer in config.
2024-07-10 12:26:53 -03:00
Kitzunu
793f87fd61 fix(Core/GameObject): Use correct spell at meeting stone (#19311)
* fix(Core/GameObject): Use correct spell at meeting stone

* cleanup
2024-07-09 19:39:58 -03:00
avarishd
7d08758f1f fix(Core/Totem): Totems shouldn't be immune to intervene. (#19372)
* fix(Core/Totem): Totems shouldn't be immune to intervene

* cs is my enemy
2024-07-09 14:39:05 -03:00
Jelle Meeus
ee4d728573 fix(Core/Pets): Correct Pet size for pets 3 (#19319)
* revert

* override maxScale for some families

add more families

sort

* add turtle
2024-07-09 14:16:30 -03:00
Kitzunu
3c50b1a135 fix(Core/Player): Vertical Message distance (#19302)
* cherry-pick commit (297541e9c9)

* Get rid of unused param

* Merge SendMessageToSetInRange_OwnTeam into SendMessageToSetInRange

Co-authored-by: Badgersson <83663557+dekz120@users.noreply.github.com>
2024-07-06 10:05:34 -03:00
Anton Popovichenko
04acfd96a0 fix(Core/Unit): Invalidate update object cache when changing health in the same world update tick. (#19287)
* fix(Core/Unit): Invalidate update object cache when changing health in the same world update tick.

Should fix an issue when the client sees dead NPCs when they are not.

* Fix styling

* Another codestyle fix
2024-07-05 15:42:22 -03:00
Jelle Meeus
37431cd7a6 fix(Core/Pets): Correct Pet size for bigger pets 2 (#18867)
* scale displayInfo, cap scale to maxScale

* prevent scaling with displayInfo if scale is already increasing the size
2024-07-04 16:34:14 -03:00
Kitzunu
bd29e9e1b3 fix(Core/Spell): Implement SPELL_ATTR1_AURA_STAYS_AFTER_COMBAT (#19254)
feat(Core/Spell): Implement SPELL_ATTR1_AURA_STAYS_AFTER_COMBAT

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/19248
2024-07-04 14:30:59 -03:00
Kitzunu
385d7fd515 chore(Core/DBC): define unused unknown dbc fields (#19262)
* chore(Core/DBC): define unused unknown dbc fields

* Name unused unknown dbc fields using WDBX and wowdev.wiki

* rename SpellShapeshiftEntry to SpellShapeshiftFormEntry to properly match the DBC used

* rename sSpellShapeshiftStore to sSpellShapeshiftFormStore to properly match the DBC used

* Comment out unused field for GlyphPropertiesEntry

* Comment out unused field for MapEntry

* forgot one

* SpellShapeshiftfmt to SpellShapeshiftFormfmt

* SpellShapeshiftFormEntryfmt
2024-07-04 14:23:25 -03:00
Jelle Meeus
cf1185551d fix(Core/Pet): prevent LoadPetFromDB to trigger a fake summon spell cast in most cases (#19277)
* add CategoryRecoveryTime check

* add RecoveryTime check
2024-07-04 14:20:24 -03:00
Kitzunu
d5ba5e0168 fix(Core/Quest): typo in RewardQuest makes LFG quests not reward if dead (#19271)
fix(Core/Quest): typo in RewardQuest

* Allow LFG quests to be rewarded even when dead
2024-07-04 09:41:53 -03:00
Kitzunu
e839581649 fix(Core/Player): Allow players to enter the world (#19261) 2024-07-03 12:06:48 +02:00
Kitzunu
0a8175ef03 refactor(Core/ObjectMgr): Handle Profanity & Reserved Names in load (#19259)
* refactor(Core/ObjectMgr): Handle Profanity & Reserved Names in load

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/18556

* Update ObjectMgr.cpp

* Update ObjectMgr.cpp

* I swear I am not drunk

* We already check all of these

* fix build

* Forgot we dont send the responsecode in senderrormessage

* last commit I swear
2024-07-03 00:23:32 +02:00
Kitzunu
f96d4c8670 Revert "Add (core\db): Support for Homebind Orientation (#13389)" (#19257)
* Revert "Add (core\db): Support for Homebind Orientation (#13389)"

This reverts commit 2e6f6e26da.

 Changes to be committed:
	modified:   src/server/database/Database/Implementation/CharacterDatabase.cpp
	modified:   src/server/game/DungeonFinding/LFGScripts.cpp
	modified:   src/server/game/Entities/Player/Player.cpp
	modified:   src/server/game/Entities/Player/Player.h
	modified:   src/server/game/Entities/Player/PlayerStorage.cpp
	modified:   src/server/game/Entities/Player/PlayerUpdates.cpp
	modified:   src/server/game/Handlers/CharacterHandler.cpp
	modified:   src/server/game/Handlers/MiscHandler.cpp
	modified:   src/server/game/Handlers/MovementHandler.cpp
	modified:   src/server/game/Maps/Map.cpp
	modified:   src/server/game/Spells/Spell.cpp
	modified:   src/server/scripts/Commands/cs_misc.cpp
	modified:   src/server/scripts/Commands/cs_tele.cpp
	modified:   src/server/scripts/Northrend/VaultOfArchavon/instance_vault_of_archavon.cpp

 Untracked files:
	data/sql/updates/pending_db_world/rev_1719945200692175000.sql

* Revert "Add (core\db): Support for Homebind Orientation (#13389)"

* whoops
2024-07-02 22:02:15 +02:00
sudlud
b3f21d909a fix(Core/PlayerQuest): Introduce flag QUEST_SPECIAL_FLAGS_CAN_FAIL_IN… (#19116)
fix(Core/PlayerQuest): Introduce flag QUEST_SPECIAL_FLAGS_CAN_FAIL_IN_ANY_STATE

- this allows flagging quests so that they are allowed to fail in Player::FailQuest()
  independant of their current state
- update quest 853 accordingly as a first use case
2024-06-22 03:04:56 -03:00
Benjamin Jackson
8ea13ca778 fix(Scripts/Spells): Implement damage scaling based off DoT stack count for Seal of Vengeance and Corruption. (#19073)
* Init.

* Whoops.

* Move comment.

Someone should fix this darn CI.

* Logic adjustment.

* Revert logic adjustment.

This reverts commit ee09ee55df47c9a66ecf536be58a4a040f384b72.

* Requested changes?
2024-06-19 00:45:02 +02:00
atrapalis
dea3748629 fix(Core/Quest): Correct XP Display when modified by SPELL_AURA_MOD_XP_QUEST_PCT (#19060)
* fix(Core): Correct Quest XP Display when modified by SPELL_AURA_MOD_XP_QUEST_PCT

The quest XP displayed on the gossip window was not modified for auras that increase quest XP gain (e.g. spell ID 57353). This commit corrects the quest XP display when accepting/returning quests.

* refactor(Entities/Player): Added a `CalculateQuestRewardXP()` function to reduce duplicated code

* cleanup(Entities/Creature): Removed now unused variable `playerLevel`

* Apply suggestions from code review

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-06-19 00:41:39 +02:00
Benjamin Jackson
d6d49a9e45 refactor(Core/ObjectMgr): Implement display probabilities. (#19068)
* Init.

Cherry-picked from TC commits 9d210476e5 and c488fb219a

Co-Authored-By: Traesh <9392905+traesh@users.noreply.github.com>
Co-Authored-By: Shauren <shauren.trinity@gmail.com>

* Add brute data.

Needs validation against what existed before, i.e. Classic change prevention.

* Add validation info for brute data.

* Remove incomplete data queries.

* Requested changes.

* Whitespace.

* Requested change.

Table name.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Requested change.

Table name.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Resolve the funny merge conflicts.

I wonder why git blame doesn't work on a file with 20k lines in it that's odd huh champ.

* Remove unused parameter.

* Remove uses of unused parameter.

* Use unused parameter.

Hopefully?

* I will cry.

* Sobbing endlessly.

* Remove comment.

* Adjust table structure query.

Remove length parameters and allow null for build value.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Adjust column datatype and add check constraint.

---------

Co-authored-by: Traesh <9392905+traesh@users.noreply.github.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-06-16 18:12:16 +02:00
Jelle Meeus
f846d79478 fix(Core/Pet): Warlock pet handling (#19054)
* dismiss summoned non-hunter pets by removing them

* store createdbyspellid

* Revert "dismiss summoned non-hunter pets by removing them"

This reverts commit eb539e841d882a6c90f743792c91304b0d365a5c.
2024-06-13 10:31:35 -03:00
Kitzunu
744067b389 fix(Core/Player): Delete by group (#19015)
* fix(Core/Player): Delete by group

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/19014

Co-Authored-By: trickerer <onlysuffering@gmail.com>

* Update Player.cpp

* fix build

---------

Co-authored-by: trickerer <onlysuffering@gmail.com>
2024-06-06 20:58:43 +02:00
sudlud
3913618f87 fix(Core/PlayerQuest): make timed quests failable (#18940) 2024-06-04 18:30:10 +02:00
sudlud
1663045da6 fix(Core/Mail): calculate unReadMails and m_nextMailDelivereTime usin… (#18996)
* fix(Core/Mail): calculate unReadMails and m_nextMailDelivereTime using mail cache

- these values were grepped directly from DB before
-> this change was introduced with azerothcore/azerothcore-wotlk#3420

- the whole mailing system relies on the mails beeing cached in the core
-> these get stored in DB regularly or on specific events

- so apparently the DB is not always in sync with the current mail cache state of the core
-> so grepping data directly from DB is not a good idea at this point

* Update PlayerUpdates.cpp
2024-06-02 09:29:54 -03:00
Jelle Meeus
0793a979bb fix(Unit/ProcessTerrainStatusUpdate): prevent removal swimming auras if swimming (#18902)
* do not remove swimming auras if we are swimming

* refactor to isSwimming()

* Update src/server/game/Entities/Unit/Unit.cpp

Co-authored-by: Andrew <47818697+Nyeriah@users.noreply.github.com>

---------

Co-authored-by: Andrew <47818697+Nyeriah@users.noreply.github.com>
2024-05-29 20:17:25 +02:00
Andrew
2a1d23e520 fix(Scripts/Hyjal): Implement Eternal Silence spell when going into t… (#18960)
fix(Scripts/Hyjal): Implement Eternal Silence spell when going into the Well of Eternity
2024-05-28 01:24:10 +02:00
silviu20092
3988e9581d feat(core): add hooks for applying item mods (#18760) 2024-05-18 10:02:57 +02:00
Jelle Meeus
ac203da3d3 fix(Core/Unit): SPELLMOD_RESIST_MISS_CHANCE should decrease miss chance (#18849)
fix: hitchance should decrease misschance
2024-05-11 13:51:17 +01:00
sudlud
0a376bdc76 fix(Core/GameObject): load guid based scripts correctly (#18811)
- m_goData must be assigned before Create() is beeing called
- otherwise GetScriptId() can't load the correct scriptiD
  in Create()
- all in all this is now more in line with how it's beeing
  done in Creature.cpp
2024-04-26 20:56:46 -03:00