Commit graph

142 commits

Author SHA1 Message Date
VladimirMangos
575584ad9b [11494] Implement spell 1842 and similar. 2011-05-16 17:17:14 +04:00
VladimirMangos
249fb836ca [11490] Alow implicit cast ObjectGuid->uint64 and only explicit uint64->ObjectGuid
Now safe allow this casts in like way after completed convertion to ObjectGuid use.
Also simplify code in result allowed auto cast to uint64.

Please _not_ add new uint64 storages (local and in structures) for guid values.
2011-05-15 22:04:57 +04:00
TOM_RUS
4181b8f28b Added spell cast flags research. 2011-05-10 16:12:33 +04:00
VladimirMangos
31c34a940d [11462] Missing ObjectGuids in spell code. 2011-05-10 13:05:39 +04:00
VladimirMangos
30aae7b14e [11424] Cleanups and fixes in FillAreaTargets
* Drop redundent and possible conflicting center point coordinates in FillAreaTargets/SpellNotifierCreatureAndPlayer call.
* Calculate proper coordinates base at PUSH_* and spell data in SpellNotifierCreatureAndPlayer
  and provide its to Cell::VisitAllObjects also for use sync values in both.
* Use castingObject coordinates as caster in SpellNotifierCreatureAndPlayer that fix some GO casting cases.

Thanks to SeTM for original problem research.
2011-05-03 00:59:27 +04:00
VladimirMangos
5fae870a1d [11373] Clarify Spell::GetAffectiveCaster result and add comment for recent added call case. 2011-04-17 04:56:54 +04:00
Ambal
5a22b8c6dd [11368] small code refactoring: use container typedefs instead of direct container declarations to simplify code.
Signed-off-by: Ambal <pogrebniak@gala.net>
2011-04-16 13:42:40 +03:00
zergtmn
0dfcbf8051 [11322] Get rid of redundant CalculateSpellDuration calls, calculate once in Spell::prepare
Also fix despawn time calculation of dynamic objects.
2011-04-07 13:32:29 +06:00
zergtmn
4d262b593d [11301] Implement SPELL_EFFECT_CANCEL_AURA 2011-03-31 13:24:27 +06:00
zergtmn
4687fa8cb4 [11299] Handle aura durations in SpellAuraHolder
- Unit::CalculateSpellDuration split into two functions
    - CalculateSpellDuration taking into account combo points and caster-side spell mods
    - Unit::CalculateAuraDuration taking into account target-side spell mods
- Diminishing is now applied before duration reduction mods
- Implement saving per-effect periodic timers to DB (required for auras affected by haste)
2011-03-30 23:29:01 +06:00
zergtmn
ee5b59b7e0 [11293] Cleanups in spell target lists 2011-03-28 01:14:36 +06:00
VladimirMangos
44cb8b6dd4 [11102] Provide for mount helper function parent spell data.
This let skip for triggered spell redundent (like cast time) info.
2011-02-02 20:04:40 +03:00
Lynx3d
9baa31bc04 [11028] Implement proper bonus threat distribution for spells not (only) affecting the primary target. 2011-01-17 16:49:41 +01:00
VladimirMangos
bf0ecf6e71 [10947] Update copyright notice for 2011 year. 2011-01-01 20:33:43 +03:00
rsa
07c48c77c9 [10758] Fixed typo in CONTROLED_*
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-20 20:03:43 +03:00
virusav
82505a8633 [10740] Cleanups in spell effects names.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-19 02:49:16 +03:00
tomrus88
76dfdd336f Backports from 400 branch. 2010-11-15 18:01:45 +03:00
zergtmn
6c1dd50511 [10709] Prevent wrongly use transport guid as unittarget in spell targets
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-09 06:13:10 +03:00
kid 10
b435aa350f [10701] Correct check percent spell costs in AI::CanCast
Also use uint32 for spell cost fields/results

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-08 22:38:35 +03:00
NoFantasy
36a6e829b3 [10625] Implement SPELL_EFFECT_CLEAR_QUEST (139)
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-10-19 12:56:24 +02:00
DasBlub
61102e3b16 [10610] Renamed some functions from the Creature class
Also other classes have been affected, due to the use of search&replace.
This will probably break some patches and 3rd party libraries, so make sure to update them if required.
Thanks to Phille for the original idea and patch!
2010-10-14 22:07:04 +02:00
VladimirMangos
41e41947e7 [10572] Drop unused Spell::m_triggeringContainer 2010-10-01 17:00:08 +04:00
Laise
a67b6a1da5 [10570] Store spell entry of triggering spell on triggered, original patch provided by insider42 2010-10-01 13:17:28 +02:00
VladimirMangos
b236e83e70 [10546] Fixed EffectActivateRune activate only expected runes amount of some rune type. 2010-09-26 22:04:43 +04:00
darkstalker
3a8ad26a5e [10526] Implement server side global cooldown check.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

Also pet/controlled unit global cooldown code replaced by new placed in charmInfo structure.

Thanks to nos4r2zod for testing and gcd range check implement.
2010-09-24 06:07:26 +04:00
ascent
88cc2d440f [10465] Implement SPELL_EFFECT_REDIRECT_THREAT
Note: all spells with effect expect additional code for redirection reset.
Until code adding redirection work longer that expected.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>

Patch partly rewrited with move new data into HostileRefManager
and added redirection to threatAssist. Also bug fixed with
redirection threat to unit not in hostile list yet.
2010-09-11 00:35:13 +04:00
VladimirMangos
acd0716297 [10432] Rename ASSERT -> MANGOS_ASSERT and related fixes
ASSERT hard use in predictable way because diff. 3rd party libs code
redefine it inf different ways and hard make sure that used in end
of mangos define version. This is real detected problem make some
expected assert checks ignored and so bugs not detected as expected from code.

In addition made related changes:
* Common.h header expected to be first include in any src/game/header except most simple cases.
* Related FILE.h header expected to be first include in FILE.cpp
* Fixed some absent includes and type forwards for safe build without PCH enabled.
* Avoid using MANGOS_ASSERT in src/framework code
2010-09-02 05:13:16 +04:00
Lynx3d
01d326b90d [10202] Rename isInFlight() to IsTaxiFlying() and UNIT_STAT_IN_FLIGHT to UNIT_STAT_TAXI_FLIGHT.
Also add IsFreeFlying() function to Player class.
2010-07-17 02:06:28 +02:00
Laise
a32b3063a2 [10156] Add shared object for auras of same spell and move spell proc code to its own file, also spread procs by auras and effect indexes. 2010-07-07 19:08:26 +03:00
Lynx3d
15390df4d9 [10122] Avoid use EquippedItemInventoryTypeMask mask for not item targeted spells check.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-06-29 22:16:14 +04:00
VladimirMangos
123cf0a401 [10083] Made some Spell.h dependences more explicit. 2010-06-20 03:55:37 +04:00
SilverIce
e427ce80cc [10052] Camera System
(based on SilverIce's repo commit 4f2f4ab + next 3 more)

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-06-14 07:23:03 +04:00
VladimirMangos
64f959fb82 [10050] Implement apply non-trade slot item enchanting at trade complete.
Base at original patch provided by arrai.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-06-11 22:46:16 +04:00
VladimirMangos
86bef7ace5 [9984] Implement item 43214 work.
* Original version suggested by timmit.
* Required DB support for target requirement.
2010-05-27 19:14:02 +04:00
VladimirMangos
de454d6ff8 [9955] Prevent negetive proc events from possitive effects of negative spells.
Some negative spells have positive effects with targets not affected by negative effects of spell.
For example spell 45524 cast negative effecst to target and possitive effect to caster self.
For like possitive only target of negetive spell will not triggered negative proc events.
In last cases will avoid triggering glyph 43537 at caster at spell 43537 cast.
2010-05-22 16:18:03 +04:00
Laise
41c58f3be9 [9882] Add support for mounts dependent from riding skill and location 2010-05-12 13:34:10 +03:00
VladimirMangos
d04dd4e5bf [9876] Fixed TARGET_ALL_FRIENDLY_UNITS_AROUND_CASTER work
TARGET_ALL_FRIENDLY_UNITS_AROUND_CASTER expected seelction friendly targets
for spell caster around spell caster (so ignore original caster faction).
This meaning that for begative spell also selected friendly targets for
spell caster object.
2010-05-12 03:33:06 +04:00
Laise
5a572b9991 [9875] Fix immunity ignoring for delayed spells 2010-05-11 22:35:39 +03:00
MaS0n
4e8c18e9de [9863] Implement SPELL_EFFECT_BREAK_PLAYER_TARGETING (93)
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-05-11 08:09:41 +04:00
VladimirMangos
921b0d668f [9850] Fixed target selection for area spells casted from aura at enemy.
* Spell::GetCastingObject must be use for selection visual/point cast,
  not for friend/enemy checks. Add extanded GetAffectiveCasterObject
  for proper provide for referecned checks wild gameobject casted case.

* Also support chain damage spells casted by gameobjects.
2010-05-08 01:21:41 +04:00
Laise
8a4b520979 [9833] Allow TARGET_AREAEFFECT_CUSTOM to target invisible/not targetable npc if script target for them exists 2010-05-04 15:05:29 +03:00
Laise
577812ff6e [9828] Fix TARGET_AREAEFFECT_CUSTOM 2010-05-03 11:14:55 +03:00
Laise
5902f6cf77 [9792] Fix wrong damage dealing from commit [9784] 2010-04-25 07:15:56 +03:00
Laise
51546e1ff9 [9789] Implement spell selection, for creatures in instances, based on map difficulty 2010-04-24 20:08:18 +03:00
Laise
10b65dcf8f [9784] Move damage and crit calculation for certain effects of spells with delayed hit to spell launch 2010-04-23 19:53:51 +03:00
VladimirMangos
15dd77873e [9779] Drop trailing whitespaces. 2010-04-23 05:28:51 +04:00
VladimirMangos
7f90b8955e [9759] Comment cleanups related to spell base points use. 2010-04-18 13:08:23 +04:00
VladimirMangos
53486545b5 [9701] Fix basepoints calculation
Signed-off-by: Laise <fenrisse@gmail.com>
2010-04-08 23:15:48 +03:00
XTZGZoReX
34e56c9978 [9641] Fix typo; IN_MILISECONDS -> IN_MILLISECONDS. 2010-03-30 14:44:57 +02:00
XTZGZoReX
51fd11c92c [9638] Replace all C assert()s with MaNGOS ASSERT() macro. 2010-03-29 19:29:42 +02:00