Commit Graph

1917 Commits

Author SHA1 Message Date
Shauren
8e98ceb293 Core/Movement: Implemented movement forces 2019-09-07 16:58:58 +02:00
Traesh
c924840ce7 Core/Spells: Implement SpellMisc::LaunchDelay 2019-08-31 11:11:23 +02:00
ariel-
9d16dce633 Core/Auras: tidy up one little hack
(cherrypicked from 9d639c55b1)
2019-08-17 20:04:14 +02:00
xinef1
60663d1374 Ensure that all actions are compared to fixed point in time (ie. world update start) (#18910)
- Actions will not be dependent on processing moment
- Increased GameObjects cooldown resolution to milliseconds, fixes arming time of traps to be exactly one second and not something from range (1000, 1999)
- Created GameTime namespace and UpdateTime class and moved there some code out of world

(cherrypicked from 7567cafec8)
2019-08-17 20:04:14 +02:00
Gustavo
1d2f20d59a Core/Unit: Correct speed calculus when affected by SPELL_AURA_MOD_MINIMUM_SPEED (#18136)
(cherrypicked from 4224259d83)
2019-08-17 20:04:14 +02:00
ariel-
77fc6ceea8 Core/Spell: Added the possibility to explicitly disable auraEffect procs using attributes
- Renamed IsProcTriggeredOnEvent to GetProcEffectMask, since long ago this function returned bool, new name should better reflect its use

(cherrypicked from e7ccd8ea3f)
2019-08-17 20:04:14 +02:00
xinef1
4380fe2751 Properly stop attacking after player leaves ffa area (like Gurubashi Arena) (#18952)
(cherrypicked from 4eae29d421)
2019-08-17 20:04:14 +02:00
Ovah
9bd8d90728 Core/Spells: implement SPELL_AURA_OVERRIDE_AUTOATTACK_WITH_MELEE_SPELL (#23467) 2019-08-17 14:56:22 +02:00
xinef1
89f728cd5b Core/Misc: Fixed player corpse looting, added player corpse loot and some more (#19122)
* Fixed corpse looting in wintergrasp
Added corpse loot for wintergrasp quests and To the Looter Go the Spoils (1166) achievement
Don't generate money for loot if no loot mode is available
Simplified few things

(cherrypicked from 2412886ef6)
2019-07-21 21:06:54 +02:00
xinef1
ad4e63bae1 Core/Misc: Moved CharacterInfo out of world to separate class
Closes #19030

(cherrypicked from 59ce3d6c9b)
2019-07-21 21:06:54 +02:00
xinef1
36a4e008d0 Corrected immunity checking after recent changes (#19049)
- Shouldn't compare immunity to spells without schoolmask

(cherrypicked from 78a729b6a4)
2019-07-21 21:06:54 +02:00
xinef1
fe63cd3dbb Core/Creatures: Various fixes for creatures, regarding combat conditions, despawning, and few others (#18998)
* Made some changes to kiting mechanics, simplified code and made taunt auras prolong combat no matter the distance from the spawn
Unified some creature despawning code, removed some brutal direct calls in scripts
Don't play death anim on forced despawn
Removed some redundant visibility changes on creature despawn
Fixed possible problem with pet initializing template info from difficulty greater than normal
Properly keep UNIT_FLAG_IN_COMBAT on UpdateEntry call
Moved RegenerateMana function to general Regenerate(Power) function
Fixed increased health regeneration from polymorph for pets
Implemented CREATURE_TYPE_FLAG_GHOST_VISIBLE, those creatures will be properly seen when player is dead also
Removed hackfix from Gaeriyan and Franclorn Forgewright, fixed properly
Simplified ForcedRespawnTime code in ForcedDespawn
Do not allow to assist unit while evading or when enemy is evading
Do not allow to attack other units when evading or when the unit is evading
Corrected distance checking code before creature is allowed to evade, should fix some common problems
Properly return summon position for summoned creatures as their respawn position
Properly stop all moving units on gossip hello, no matter their npc flags

(cherrypicked from e1f14215d8)
2019-07-21 21:06:54 +02:00
xinef1
ca26c33145 Implemented binary resistances and some more (#18933)
- Fixed possible exploit with tamed pets having template immunities
- Implemented binary resistances
- Corrected resistances calculations
- Pets properly inherit players spell penetration
- Fixed doubled block calculation for damaging melee spells
- Auras removing snare effects will only remove the snaring component
- Shapeshifting will properly remove movement impairing auras only and not crowd control (dragon's breath)
- Immunities are properly checked versus all schools appearing in spell, unit is immune only if immune to all schools
- Spells with melee and magic school mask should compare armor reduction with resistances and select smaller reduction
- Demonic Circle: Teleport no longer removes root effects

(cherrypicked from 93746e8c4a)
2019-07-21 21:06:54 +02:00
xinef1
ad008c43b7 Core/Misc: Fix various crashes, also related to multithreading (#19012)
* When iterating groups we have to either do it not in multithreaded context (map updates) or start with checking maps (they are guaranteed to change in single thread update).
* Properly clear ComboPoint references on player remove
* remove some possible references item may have when it is deleted during save.
* Also clear all hostile references when unit is removed from map.

(cherrypicked from 86da1a19bb)
2019-07-21 21:06:54 +02:00
ariel-
17703e8924 Core/Spell: remove duplicated SPELL_AURA_MOD_DEBUFF_RESISTANCE handling.
Each spell had two rolls in which it could be resisted, effectively adding to the resist chance.

Closes #7406

(cherrypicked from 23f76b563f)
2019-07-21 21:06:54 +02:00
Shauren
3262bc827d Core/DataStores: Updated db2 structures to 8.2 2019-07-14 19:20:45 +02:00
xinef1
b711f0bcae Core/Spells: Added SPELL_FAILED_NOTHING_TO_STEAL error (#19036)
Corrected Dispel check in sanctuary area
Added root check for SPELL_EFFECT_JUMP and SPELL_EFFECT_JUMP_DEST

(cherrypicked from 3c605ba614)
2019-06-15 18:41:09 +02:00
xinef1
d1cbd8a837 Core/Pets: Fixed flashing pet attack button (#18906)
(cherrypicked from 0fa38d0ae0)
2019-06-15 18:41:09 +02:00
xinef1
67000a7826 Core/Spells: Properly send autorepeat cancel packet to self and fix some problems with autoshot (#18918)
Closes #13595
Closes #14460

(cherrypicked from 587786ce66)
2019-06-15 18:41:09 +02:00
Shauren
455959c606 Core/PacketIO: Rewrite updatefield handling 2019-06-08 17:06:57 +02:00
Shauren
31fda79556 Core/PacketIO: Updated packet structures to 8.1.5 2019-06-08 17:03:15 +02:00
vincent-michael
5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
Shauren
f94deace76 Merge branch 'bfa' 2018-12-09 14:45:03 +01:00
xinef1
e1cda57955 Core/Pets: Disable pet interface for charmed units while mounted (#18607)
(cherry-picked from 44388bc8fb)
2018-12-09 14:18:42 +01:00
xinef1
4afee01b01 Core/Auras: Prevent remove of auras interrupted by turning if the turn could be caused by float calculation error (#18595)
(cherry-picked from 38f9919a37)
2018-12-09 14:18:42 +01:00
ariel-
0a0042282b Core/Spell: add missing null caster check
01d272d6cb follow-up

Closes #18875

(cherry-picked from 7283cbe140)
2018-12-09 14:18:42 +01:00
Traesh
9d210476e5 Core/Creatures: Update creature model handling with new display scale (#22567) 2018-11-07 20:23:30 +01:00
Shauren
0a779bd791 Core/PacketIO: Updated packet structures to 8.0.1 2018-11-05 00:00:34 +01:00
Shocker
6325dddb16 Core/Spells: Implement PROC_FLAG_ENTER_COMBAT 2018-10-13 12:50:50 +03:00
Shauren
7512ffb058 Core/Entities: Update updatefields to 8.0.1.27980 2018-10-10 22:11:41 +02:00
Mihapro
4a09510571 Core/Spells: Implement AURA_REMOVE_BY_INTERRUPT to provide aura scripts with more information when removing by Unit::RemoveAurasWithInterruptFlags 2018-07-22 19:11:34 +02:00
LluisMas
1f1c2a207e Core/Players: Changed flight masters to suppress positive transforms/shapeshifts instead of preventing starting flight (#21943) 2018-07-22 15:32:11 +02:00
Ovahlord
a6f91c9b81 Npc/Script: fixed Eye of Acherus action bar
Closes #18362
2018-06-11 20:24:08 +02:00
funjoker
6a63748424 Core/Units: Implemented versatility (#21206)
* Base code taken from https://github.com/AshamaneProject/AshamaneCore
2018-04-28 22:58:25 +03:00
DoctorKraft
8ca6a20e73 Core/Spells: Fix display for Shaman totems (#21848) 2018-04-24 00:44:59 +03:00
joschiwald
6faec45f8d Core/Entities: Adapted changes from 584abe107e 2018-04-21 16:15:21 +02:00
ariel-
76831d16be Core/Spell: implemented dispel reflection
Closes #18323

(cherry picked from commit f0772eea98)

# Conflicts:
#	src/server/game/Spells/Spell.cpp
#	src/server/game/Spells/Spell.h
#	src/server/game/Spells/SpellEffects.cpp
2018-04-21 13:52:37 +02:00
Shauren
42f9deb21e Core/Maps: Implemented getting area id from gameobject spawns
Yes, you can now spawn LK platform anywhere and it will treat you as inside Icecrown Citadel
2018-03-28 22:01:22 +02:00
Shauren
bea7faa8f9 Core/Entities: Take terrain swaps into account when calculating LoS/height/area 2018-03-25 19:28:36 +03:00
Shauren
91be2332e2 Core/Entities: Phasing rewrite
* Optimized phase visibility checking
* Handle all phase flags

Closes #16758
Closes #21119
2018-03-25 19:28:36 +03:00
xinef1
10af748969 Core/Units: Fixed bug in stun code making units summoned by npcs to never break out of stun (#18612)
(cherry picked from commit 7c3961244d)
2018-03-18 00:19:36 +01:00
xinef1
f44572ce56 Core/Units: Fixed exploit where killing tamed pet could yield emblems (#18605)
(cherry picked from commit 2aae46ad49)
2018-03-18 00:19:36 +01:00
Shauren
007b5a68c5 Core/DataStores: Fixed db2 structures after 7.3.5 2018-03-12 23:11:49 +01:00
ariel-
8c83706114 Core/Misc: readd some codestyle changes inadvertently reverted
- Ref commit 6dc37a9add
(cherry picked from commit e1a2b1a813)
2018-03-12 16:39:41 +01:00
ariel-
536ae257c9 Core/Spell: partial revert of SPELL_ATTR1_UNAFFECTED_BY_SCHOOL_IMMUNE immunity handling
- Bonus: without breaking Banish... yay!
Closes #18370
(cherry picked from commit 560c882b36)
2018-03-12 16:39:40 +01:00
ariel-
e560374b8b Core/Unit: feral druid attacks should not be normalized
Closes #18460
(cherry picked from commit bad4b059c8)
2018-03-12 16:39:39 +01:00
ariel-
f20e53c138 Core/Entities: Replace existing GetAuraEffectsByType + iteration uses with proper helper functions
(cherry picked from commit 3a52ad8d38)
2018-03-12 16:39:39 +01:00
ariel-
edc68f719c Core/Unit: added GetTotalAuraXXX overloads taking a predicate
- Redefined existing overloads to use the predicate logic, avoids code duplication and not checking same stack rules
(cherry picked from commit 8b0122e7ed)
2018-03-12 16:39:38 +01:00
ariel-
fba0e6b278 Core/Unit: added missing nullptr check in IsImmunedToSpellEffect
Closes #18461
(cherry picked from commit 0b30693680)
2018-03-12 16:39:38 +01:00
ariel-
5e0e5a5573 Core/Entities: don't absolute compare positions on UpdatePosition
Closes #18415
(cherry picked from commit 45f8135ac4)
2018-03-12 16:39:37 +01:00