Commit graph

221 commits

Author SHA1 Message Date
VladimirMangos
77ae9a63b8 [10385] Remove Unit::GetUnit and update it callers. 2010-08-20 16:53:45 +04:00
NoFantasy
8aaf32798f [10310] Clarify argument in emote related functions, expecting emote id
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-08-03 01:01:45 +02:00
NoFantasy
25d9fd265b [10293] Correct a not exitan...non-existin... a word that is often spelled wrong
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-07-30 18:26:08 +02:00
Lynx3d
6c6ce87867 [10253] Small cleanup in Unit::HasAura() to prevent redundant upper_bound calls. 2010-07-23 23:15:13 +02:00
Laise
f37c73e255 [10211] Fix aura procs for spells with auras that can't trigger 2010-07-17 21:32:05 +03: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
ae51168ffc [10199] Fix 33763 and ranks final heal and mana return on dispel and on expire 2010-07-16 21:35:00 +03:00
Laise
beff2a145c [10185] fix auras adding to previously added holder 2010-07-12 20:29:26 +03:00
Lynx3d
5e89098a61 [10165] New collission system (vmap) implementation
Important:
* You have to re-extract and assemble vmaps
* Update your config file, new option 'vmap.enableIndoorCheck' added

New features:
* Include WMO+DBC area information for correct subarea identification and indoor check
* Support for WMO liquid (fishing/swimming in cities, instances and oterh WMO based environments)

Technical changes:
* New Bounding Interval Hierarchy (BIH) data structure for better performance
* Referenced model data for reduced memory usage,
  needs more files, but reduces overall file size from ~1.9GB to ~550MB

Additional Authors:
arrai (DBC handling and indoor detection)
faramir118 (windows support and bug investigation)
And of course thanks Vladimir for a lot of patience and support!
2010-07-08 23:17:26 +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
VladimirMangos
ebf27938fb [10145] Use better (but still hack) way for gameobject size calculation
* This is also hack because some float with unknown exactly value used as 'size'
* Another not resolved problem: go size used in creature target autoselection, so for large 'virtual' go
  creature can seelct strange points near in attempt select 'free' place near target.
2010-07-03 23:26:59 +04:00
dardennf
a1a70515f9 [10127] Double damage reduction as expected in 3.3.x
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-06-30 21:18:38 +04:00
NoFantasy
1713caae17 [10115] Add function to update model_info at changes to scale or model.
* At every change to model or scale, the related data (bounding_radius/combat_reach) is now updated accordingly (note that player combat_reach are not changed like creature).
* UpdateModelData is called from within SetDisplayId while changes to scale has explicit call to UpdateModelData after new scale is set (mostly for aura scale)
* The updated values are calculated by (scale*bounding_radius)/(scale*combat_reach)
* Database values for bounding_radius/combat_reach are expected to be relative to scale like 1.0

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-06-28 12:10:56 +02:00
ApoC
7dd5456401 [10066] Some tuning in consts.
Signed-off-by: ApoC <apoc@nymfe.net>
2010-06-16 23:31:23 +02:00
zergtmn
e34315f23f [10057] Type in UNIT_STAT_CONTROLLED
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-06-14 22:08:20 +04:00
VladimirMangos
b4b45333d8 [10053] Use UNIT_STAT_CONTROLED for mark unit state under direct player control.
* This allow prevent move home/to caster at apply
* Also replace AI and reset movegens at control time
* Also stop combat and clear threat/hostile list at lost control for prevent combat with freindly units.
2010-06-14 10:27:44 +04:00
Laise
f94175f90f [10030] Add aura remove modes for expire and absorb shield break cases and use GetTarget()/GetSpellProto() instead of m_target/m_spellProto 2010-06-05 09:12:00 +03:00
VladimirMangos
fc3e046348 [10029] Clarify client dependence for some MeleeHitOutcome values 2010-06-05 00:20:55 +04:00
VladimirMangos
59cf9c1dbd [10010] Use schoolmask enum in struct SpellNonMeleeDamage, some indents fix. 2010-05-31 08:09:03 +04:00
VladimirMangos
54c2da8d53 [9929] Move apply spell coeffs and level penalties code to new function.
* No reson have 6 copies near to exactly same code.

* This fix problem with apply attack power bonus in some case.
  Thanks to Wowka321 for find and reseach problem.
2010-05-19 02:50:31 +04:00
Lynx3d
f492ee6794 [9903] Fixed build problem at *nix.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-05-15 23:41:42 +04:00
nos4r2zod
4951f846dd [9894] Move GetCastingTimeForBonus and some other code to GetSpellCastTimeForBonus.
Important changes:

* Chaged way caluclation "-5% of total per any additional effect" to percent
  apply instead use raw value that correct only for 3500 cast time spells.
* GetSpellCastTimeForBonus result now alwasy not applied to creature casted spells
  Before it not applied only to instant spells. Please test if this ok in all cases.
* Leech effect modify spell casting time move into GetCastingTimeForBonus and then called
  also for melee spells. But only creature spells exist with melee class damage and its
  not affected by GetCastingTimeForBonus anyway now.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-05-15 11:15:05 +04:00
tomrus88
ff2cda6af1 [9861] Backporting some code chnages from 400 branch.
(based on 400's commit 0f37423)
(based on 400's commit 636cfef)
(based on 400's commit 0bbe3a7)
(based on 400's commit ce86b56)
(based on 400's commit b74c6a8)
2010-05-10 23:45:49 +04:00
VladimirMangos
53b056cfff [9840] Include Timer.h for getMSTime in SendMonsterMoveByPath 2010-05-06 05:10:05 +04:00
VladimirMangos
57dcc84940 [9824] Use in taxi flight movegen original taxipath data. 2010-05-02 06:14:26 +04:00
VladimirMangos
9e356f10c9 [9806] Fixed player loading to transport.
Bug exist already some time but possible hide by another code way work or
client change maybe.
2010-04-29 17:25:13 +04:00
Laise
471af8fb27 [9798] Implement basic splitting for caster/target part damage/heal bonus calculations, periodic damage/heal over time auras will now store m_amount with caster side bonuses applied and calculate target part on each tick. Currently critical chance/bonus calculations are not affected by this change 2010-04-27 13:13:50 +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
Laise
d1dd6a8ca3 [9782] Small clean up in 2 method names 2010-04-23 16:05:41 +03:00
Laise
236a578d52 [9780] Change CalcAbsorbResist/isBlocked to be called from target side 2010-04-23 06:58:58 +03:00
VladimirMangos
53486545b5 [9701] Fix basepoints calculation
Signed-off-by: Laise <fenrisse@gmail.com>
2010-04-08 23:15:48 +03:00
NoFantasy
41aee85145 [9648] Add comment to UNIT_BYTE1_FLAG_UNK_2 for further research
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-03-31 00:23:03 +02:00
VladimirMangos
5c7f6356d6 [9644] Changes in emotes work.
Waypoint/db script/event ai/'.npc playemote' emote data now auto select by emote id way to execute:
oneshot or persistent state

So if in referenced DB data wrongly used state emote as oneshot case this will work in different way now.
2010-03-30 22:13:55 +04:00
jsee
d46e6629e6 [9624] varargs list (...) auto promote any float value to double and any less int type to int.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-03-26 22:04:32 +03:00
VladimirMangos
c3e07a443d [9620] Resolve linking problems for script DLLs 2010-03-26 06:54:33 +03:00
VladimirMangos
4be91fa97a [9619] Reset more UNIT_FIELD_FLAGS at login. 2010-03-25 20:10:00 +03:00
VladimirMangos
b658b25ff8 [9618] More use ObjectGuid in spell/etc code 2010-03-25 13:59:46 +03:00
VladimirMangos
1186577b56 [9612] Add to SendMonsterMove var args for optional values.
Also drop currently unused Unit::m_InteractionObject
2010-03-24 01:42:00 +03:00
NoFantasy
bfecdc3ded [9603] Implement use of UNIT_FLAG_PASSIVE for creature.
Add function to check creatures own ability to initiate an attack in MoveInLineOfSight.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-03-18 11:29:27 +01:00
NoFantasy
1f7f5955bf [9599] Adding a few research comments for unit_flags and rename one.
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-03-17 02:08:02 +01:00
VladimirMangos
996a523302 [9583] Fixed speed recalculation at remove .mod speed rate while mounted/etc. 2010-03-14 20:55:54 +03:00
VladimirMangos
c8fd454a79 [9551] Add and use PackedGuid wrapper.
Also
* use more wide bytebuff << >> operators for objects
* use at read packet faisl alsways exception way instead some time used bool results.
2010-03-08 20:23:16 +03:00
pasdVn
53623696cc [9503] Updated behavior of auto shot according to the client changes.
Signed-off-by: ApoC <apoc@nymfe.net>
2010-03-02 22:11:35 +01:00
NoFantasy
44d768cac5 [9497] Implement basic use of SPLINETYPE_FACINGTARGET
Adjust related helper function accordingly.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-03-01 14:13:35 +01:00
VladimirMangos
ded1e3c263 [9475] Add and use TotemSlot enum type 2010-02-28 07:31:25 +03:00
VladimirMangos
73eeac234f [9454] Fixed some time existed multi-map taxi problem.
Interrupt taxi movegen at far teleport time with remove related state.
Far teleport triggered code not expect this state set.
2010-02-26 00:48:10 +03:00
laise
7f6f199911 [9450] Implement item set 887, 251, 232 spell effects.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-02-25 06:22:10 +03:00
NoFantasy
67c5e57b0a [9427] Add helper functions for Unit::Get/SetHealthPercent
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-02-21 11:46:35 +01:00
NoFantasy
04e6187049 [9417] Correct spelling of horizontal.
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-02-20 00:59:59 +01:00
VladimirMangos
84080aaf60 [9411] More SpellEffectIndex using in apropriate cases 2010-02-19 06:45:11 +03:00