Commit graph

577 commits

Author SHA1 Message Date
VladimirMangos
4c02094737 [10834] Cleanup shapeshift form code. 2010-12-07 14:41:59 +03:00
VladimirMangos
0a964e43a9 [10812] Use ObjectGuid for corpse owner guid.
Still exist 9 GUID_LOPART uses in code.
2010-12-02 07:28:17 +03:00
VladimirMangos
ce7b98c45e [10799] Add GetGuidStr() short call for GetObjectGuid().GetString() and use it. 2010-12-01 09:56:13 +03:00
Lynx3d
796cf40f87 [10779] Allow ITEM_ENCHANTMENT_TYPE_COMBAT_SPELL to proc on special attacks too. 2010-11-23 15:38:56 +01:00
insider42
a34deecfc0 [10764] Implement talent 44543 and ranks charges work.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

Also fix IGNORE_UNIT_TARGET_NON_FROZEN in part allow casting spell that required frozen target.
2010-11-21 05:32:17 +03:00
insider42
f7b4b88e02 [10762] Implement SPELL_AURA_IGNORE_UNIT_STATE (252).
Original patch provided by Wojta

Note: From patch excluded talent 44543 and ranks stacking code.
      It look like need another implemention different from suggested,
      or at least more research.

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

In patch added enum IgnoreUnitState and related checks now more cheating protected.
2010-11-21 01:42:25 +03:00
VladimirMangos
2601022b9f [10751] Use objectguids in item code.
Also
* Fixed unexpected container updated state after inventory load
* Make .debug getitemstate command more friendly by args.
2010-11-20 01:59:48 +03:00
VladimirMangos
12b80fec68 [10747] Some other aura caster object guid use cases. 2010-11-19 18:36:43 +03:00
NoFantasy
bd48d3cdc9 [10731] Remove redundant isAlive-check, thanks LordJZ for notice
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-11-17 19:09:51 +01:00
NoFantasy
cfbfae7f40 [10730] Check if Pet's target is a valid target (isTargetableForAttack)
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-11-17 18:26:01 +01:00
Ambal
f67d89f109 [10727] Map system re-engineered. Special thanks to Blueboy for tests.
Signed-off-by: Ambal <pogrebniak@gala.net>
2010-11-16 21:08:28 +02:00
NoFantasy
8a1c5bd800 [10724] Fix TARGET_AREAEFFECT_CUSTOM, need to obey type when DB target entry exist
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-11-15 18:04:59 +01:00
tomrus88
76dfdd336f Backports from 400 branch. 2010-11-15 18:01:45 +03:00
NoFantasy
bf774f49ce [10722] Fill target map for TARGET_RANDOM_NEARBY_DEST(b) cases.
Corrects ~35 spells, where most has summon effects.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-11-14 17:35:35 +01: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
VladimirMangos
9508001213 [10696] Avoid selection despawned creatures as spell autoselected targets.
Original patch provided by virusav.
2010-11-08 03:09:01 +03:00
VladimirMangos
10d3d3ce24 [10692] Fixed some GCC warnings and code errors.
Thanks to freghar for provide cleaned list of warning messages.
2010-11-07 21:30:55 +03:00
VladimirMangos
2b98f699b7 [10690] Fixed *nix build problem after recent commits. 2010-11-07 03:04:35 +03:00
VladimirMangos
bffc07e4bc [10689] Restore some item checkes for temporary loot case. 2010-11-07 02:20:10 +03:00
SilverIce
225b4db1ca [10681] Added new Cell::Visit* functions to visit grids with center in (x,y) coords
* This fixes possible problems with Spell::FillAreaTargets(center of search should be (x,y) position, not spell caster's position)
* Cleanup Cell class, removed old and unused code
2010-11-04 21:45:49 +02:00
VladimirMangos
a32d68febd [10671] Convert some Unit owner/etc guids to ObjectGuid way. 2010-11-01 13:19:50 +03:00
VladimirMangos
f48e768a70 [10662] Implement partly item looting
* Not deleted normal item loot at first loot window close.
* Save current item loot content to DB for later continue looting.
* Cleanup spell effect SPELL_EFFECT_OPEN_LOCK check code
* Cleanup Player::AutoStoreLoot calls
2010-11-01 02:04:08 +03:00
eggxp
e87008b339 [10649] Enchanted spell 8017 and ranks should apply to weapon by client auto selection
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-10-26 20:52:29 +04:00
VladimirMangos
46d740bbf4 [10641] Fixed use item dynamic/item proto flags.
* List its independelty. Each from this 2 fields have own flags. Cleanup lists.
* Not copy proto flags to item flags update field. This fix heroic item versions
  show in client in result mixed use ITEM_DYNFLAG_WRAPPED (0x8) with ITEM_FLAG_HEROIC (0x8)
* Update uses to proto case use for some cases where before wrongly has been used item dyn.flags
* For ITEM_DYNFLAG_UNLOCKED (0x4) set for item at unlock and check for prevent re-unlocking.
  This mostly for future case when will be implemented partly loting items support.
* For ITEM_FLAG_LOOTABLE (0x4) check loot absent or conflicting setting with containers/casted at use items.
  Report wrong cases art loading.
* Better check related loot tables content using ITEM_FLAG_PROSPECTABLE and ITEM_FLAG_MILLABLE
2010-10-25 16:27:14 +04:00
VladimirMangos
a79f9b1fe4 [10638] More appropriate for warrior spell fail result for combo point check fail. 2010-10-24 09:28:13 +04:00
VladimirMangos
691412d05c [10636] Implement server side check combo points req. for spell cast.
Thanks to nos4r2zod for problem research.
2010-10-21 15:00:56 +04:00
VladimirMangos
da07caba28 [10630] Convert Set(Get)ChannelObjectGuid to ObjectGuid way.
Also fix typo in debug output for prev. commit.
2010-10-20 11:19:47 +04:00
VladimirMangos
c955941b55 [10627] Use ObjectGuid for player's selection and unit's target 2010-10-20 08:19:48 +04:00
zerg
e74d56f9d2 [10626] Fix logic in FillRaidOrPartyManaPriorityTargets and FillRaidOrPartyHealthPriorityTargets
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-10-20 03:08:59 +04: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
119ce033a8 [10580] TARGET_ALL_RAID_AROUND_CASTER include caster only for positive spells. 2010-10-06 04:17:32 +04: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
958c3ac04c [10547] More correctly check delay time for spell with speed. 2010-09-26 23:33:56 +04:00
BugFix
75611b78fa [10539] Use more near for final point coordinates for Z calcualtion.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-09-26 16:39:11 +04:00
Insider42
54980328f9 [10527] Disable CombatSpell check for triggered spells
Signed-off-by: Laise <fenrisse@gmail.com>
2010-09-24 16:58:03 +02: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
VladimirMangos
b0edd807d7 [10513] Clear grid *Check/*Searcher clases use
* Check class considered have all info select  object in world from suggested but grid walker list in some grid.
  This also meaning that Check must always have focus object around that (and in same phase) fit objects must be.
* Searcher only must ask Check and know how from all objects fiting to Check select result object(s).

For this reason and for better compatibility removed first arg (searcher) form all Searcher classes.
Instead expected used Check::GetFocusObject() object if need ( by always need check and simolify Check classes
phase checked in Search classes). This also restore source code compatibilty in related lines with prev.client
version branches code.

* While focus object adding fixed possible wrong phase object selection at stealth detection and at corpse searches.
2010-09-22 06:25:21 +04:00
VladimirMangos
5e9b5a5297 [10512] Fixed cast item remove at trade enchanting in some cases
Also nit allow item use spels casts if item in trade.
2010-09-21 10:35:58 +04:00
Laise
abbf4f5331 [10486] Use casterGUID check for delaying holder since possible stacking same spell from different casters 2010-09-15 11:36:04 +02:00
VladimirMangos
84a915e1b1 [10475] Implement SPELL_AURA_HEAL_ABSORB (301)
Used for example in spells 66237 and 70659.

Also rename CalculateAbsorbAndResist -> CalculateDamageAbsorbAndResist
2010-09-12 02:45:26 +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
Laise
99214e9d8c [10424] Fix 50334 additional targets part 2010-08-30 09:54:40 +03:00
VladimirMangos
09b03b470e [10402] Use ObjectGuid in packets and fix some uint32 guids cases. 2010-08-23 12:37:11 +04:00
VladimirMangos
77ae9a63b8 [10385] Remove Unit::GetUnit and update it callers. 2010-08-20 16:53:45 +04:00
VladimirMangos
dbe9c6f190 [10371] More wide use ObjectGuid in group code.
Also drop some unused functions.
And fix some uint32 -> uint6 guid assigns.
2010-08-18 13:43:55 +04:00
VladimirMangos
085811fc06 [10336] Server side checks for casting non-combat spells in combat.
Interrupt casting non combat spell spell at neter to combat
and prevent it casting in combat (last checked by client
but better recheck at server for prevent cheating).
2010-08-10 02:01:08 +04:00
NoFantasy
b0a3ad5aa5 [10329] Improve target selection for spell_script_target creature targets
Fixes a problem where database has more than one entry for a spell and target is explicitly provided by script side.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-08-08 22:45:58 +02:00
Lynx3d
28d1ac66c3 [10298] Clear tavern rest when leaving building and prevent forced unmount when in GM mode. 2010-07-31 09:54:43 +02:00