Commit Graph
633 Commits
Author SHA1 Message Date
Liberate 6be8446053 Core/Gameobjects: Fix fishing and looting specific chests which were bugged because of revision 044e466d75.
Fixes issue #5116.

--HG--
branch : trunk
2010-12-14 15:02:42 +01:00
Liberate 09f4eb9e1c Core/Gameobjects: Make a chest not lootable when it still has a respawn time, to avoid cheating using third-party software.
--HG--
branch : trunk
2010-12-14 03:58:59 +01:00
click 2642894342 Core: Add new system for parallelizing client packet processing. Handle WorldSession updates in Map::Update() where we are safe to proceed. Patch by Ambal.
(And clean up tabs and whitespace while rummaging around in there)
Closes issue 5084.

--HG--
branch : trunk
2010-12-13 22:37:56 +01:00
azazel d2d62eab50 Cleanup: implemented helper methods for manipulating percentage calculation and used it where appropriate (plus fixed some other warnings).
NOTE: Initially I just wanted to fix some warnings, but noticed that there is no common method for percentage calculation and various formulas are used many time in the code making it difficult to read and understand what the code actually does. So, I introduced several template methods for calculating percent values and adding those values to the original base. I replaced all the raw calculations throughout the code where found, but I could have missed something or could have made a mistake. So, please report any strange behaviour after this commit.
If you ask me why I did it: for the sake of consistency and exact understanding what code means. If you see CalculatePct method, you clearly understand, that it find the value of x percent of y. And you can easily express, for example, spell behviour "reduces smth by x%" by the means of a method instead of recalling school maths.

--HG--
branch : trunk
2010-12-11 20:37:38 +06:00
click 81db111ffd Core/Spells: Fix mage talent Frost Warding (and a little cleanup on CalcAbsorbResist) - patch by DrTenma
Fixes issue 2715.
Closes issue 3770.

--HG--
branch : trunk
2010-12-11 12:00:57 +01:00
azazel e7eb4e22e2 Core/Mechanics: cleanup shapeshift form code (by VladimirMangos)
--HG--
branch : trunk
2010-12-09 17:03:42 +06:00
azazel 8c2ce7f86d Core/Auras: fix AuraType 138 to not affect ranged haste, and rename to SPELL_AURA_MOD_MELEE_HASTE (by michalpolko)
--HG--
branch : trunk
2010-12-09 14:40:59 +06:00
Shauren 611dc153b0 Core/Units: Corrected PLAYER_FIELD_BYTES2 invisibility/stealth flags, by VladimirMangos
--HG--
branch : trunk
2010-12-08 14:51:50 +01:00
Shauren 703835ee94 Core/Quests: Fixed Unholy Infusion (24749), Blood Infusion (24756) and added partial support for Frost Infusion (24757)
--HG--
branch : trunk
2010-12-06 22:54:19 +01:00
leak 59d12e3b4a Core/Entities: Fixed a crash by accessing the GameObjectAI of a GameObject before the next Update cycle. Patch by Rat. Thanks to Visagalis for testing.
Fixes issue 4863

--HG--
branch : trunk
2010-12-06 04:52:33 +01:00
Spp 408fce1de6 Core: Some optimizations
- Declare some functions const
- Fix some mem leak
- Fix some resource leak
- Remove unused variables and functions
- Remove duplicate functions
- Reduce the scope of some variables
- Remove unused file

--HG--
branch : trunk
2010-12-06 02:07:53 +01:00
leak 6fe19b5a86 Core/Scripts: Split OnCreatureCreate() and OnGameObjectCreate() into two virtual functions each.
Note to scripters: be aware that you will need to hook into the Remove functions if you want to do stuff at GO/creature removal.
Closes issue 5011.

--HG--
branch : trunk
2010-12-05 18:04:10 +01:00
Spp e621f5fe98 Core/Dungeon Finder: Code cleanup and minor optimizations
- Extend LfgState to keep control of the state of group and players using LFG
- Move scripts to its own class and initialize only if Dungeon finder is enabled
- Updated comments to doxygen format
- Use constructor initialization list
- All variables are declared in the inner most scope
- Fix some mem leaks
- Remove no longer needed code (Cleaner)
- Normalize handler function names

--HG--
branch : trunk
2010-12-05 17:50:26 +01:00
silinoron 3661ed8231 Core/Auras: Fix wrong durations on certain reflected spells.
Patch by dr.tenma.
Fixes issue #3611.

--HG--
branch : trunk
2010-12-04 10:51:46 -08:00
_manuel_ ada9c4ae98 Core/CreatureAI: Implemented SummonedCreatureDies function for scripting, it is called when the summoner's summon dies.
--HG--
branch : trunk
2010-12-03 14:23:49 -03:00
Shauren e0c992a8ba Scripts/Icecrown Citadel: Added script for Blood Queen Lana'Thel
Scripts/Icecrown Citadel: Fixed Invocation of Blood announcement emote for Blood Prince Council
Scripts/Icecrown Citadel: Fixed intro for Lady Deathwhisper
Scripts/Icecrown Citadel: Fixed Bone Spike for Lord Marrowgar

--HG--
branch : trunk
2010-12-03 17:47:33 +01:00
click 28c2e270db Core/Battlegrounds: Implement power resets on arena-fight preparations (first 60 seconds before arena-fight kicks off) (Thanks to Kaelima)
Restores all player powers every 5 seconds untill arena starts (fixes possible exploit with entering arena battle with full rage or runic power)
(The 5 second timer is not 100% confirmed, as official pages only states that the power is reset after prep-time - needs feedback)
Closes issue 4805

--HG--
branch : trunk
2010-12-02 22:50:30 +01:00
Spp 25ac835507 Core/Groups: Move all function definition from .h to .cpp
Core/Groups: Remove Group.h dependency from any .h file

--HG--
branch : trunk
2010-11-29 07:50:31 +01:00
click 0fde30f185 Core: Adjust packetsize for SMSG_RESYNC_RUNES - thanks to False.Genesis ( and to Svetilo12 for the heads up )
Closes issue 4943.

--HG--
branch : trunk
2010-11-28 00:40:20 +01:00
click 46d39f17b4 Fix typo from revision 3f0577c8e6
--HG--
branch : trunk
2010-11-26 02:37:56 +01:00
click 025d070752 Core/Unit: Fix pets aggromode - do not set player in combat untill pet has actually done damage to target (fix by Kaelima)
Closes issue 4894.

--HG--
branch : trunk
2010-11-26 02:02:05 +01:00
Shauren 3fa97ad538 Core/Spells: Phaseshift auras can now be stacked
--HG--
branch : trunk
2010-11-24 16:58:57 +01:00
Spp d3c9478153 Core/Groups: Add kicker and kick reason to RemoveMember
--HG--
branch : trunk
2010-11-23 20:49:36 +01:00
silinoron fc832122cc Core/Vehicle: Some code-style cleanup.
--HG--
branch : trunk
2010-11-21 10:07:51 -08:00
Machiavelli 92a7d02184 Core/Player: Invoke global cooldown when equipping relic slot items during combat.
Please report any issues you find regarding this changeset.

--HG--
branch : trunk
2010-11-21 16:48:08 +01:00
azazel 87d723405e Core/Scripts: return const modifier to Player methods back (should restore compilation for those with custom scripts).
NOTE: The main idea of original change is to allow scripts change content of message so that calling method sends modified message to client.
For example, moderating script which cuts illegal words from message.

--HG--
branch : trunk
2010-11-18 10:26:34 +06:00
click 2e68705e22 Core/Spells: Use ShapeshiftForm model IDs from DBC instead of as hardcoded values - fix by Kaelima
(Some shapeshifts need overrides due to missing DBC data, and needs hardcoding - already handled)
Closes issue 4832.

--HG--
branch : trunk
2010-11-17 18:15:49 +01:00
azazel 4fb572015a Core/Scripts: pass message parameter by reference in OnChat methods to make it possible to be modified inside the script.
--HG--
branch : trunk
2010-11-17 18:14:35 +06:00
linencloth e87223b453 Core/WorldObjects: Destroy for nearby players before removing from world
Closes issue 4806

--HG--
branch : trunk
2010-11-16 21:17:49 +01:00
Spp addd762c4d Core: Fix warnings
--HG--
branch : trunk
2010-11-16 14:08:12 +01:00
click 0dc3d771e1 Core/Unit: Add missing/update old shapeshifting modelforms for Shapeshifting - Fix by Kaelima
Closes issue 4804

--HG--
branch : trunk
2010-11-16 14:04:15 +01:00
click 6ebaad1847 Core: Add validation-test for adding creatures to the world - fix by Paradox
Closes issue 4807

--HG--
branch : trunk
2010-11-16 14:00:47 +01:00
linencloth 8fae0c176d Core/Units: Rename and change Get/SetVisibility to use a bool value instead of an unnecessary enum
Also replace some SetVisibility hacks to directly call UpdateObjectVisibility

--HG--
branch : trunk
2010-11-16 01:13:04 +01:00
linencloth 57c76407b0 Core/Players: Update object visibility right after adding the player to a map
--HG--
branch : trunk
2010-11-15 23:10:48 +01:00
linencloth 8f96f37c2e Core/Players: Cleanup the visibility updater
--HG--
branch : trunk
2010-11-15 23:08:02 +01:00
linencloth 0aad81fbbf Core/WorldObjects: Prevent most notifiers to be used to visit grids/cells using an invalid object
Closes issue 4765
Closes issue 4783

--HG--
branch : trunk
2010-11-14 23:53:14 +01:00
Shocker 48d90fab32 Misc: Some engrish fixes, thanks to ZxBiohazardZx, closes issue 4740
--HG--
branch : trunk
2010-11-14 23:46:34 +02:00
linencloth e72106c5e9 Core/Creatures: Fix visibility of spirit guides
Closes issue 4781

--HG--
branch : trunk
2010-11-14 22:24:00 +01:00
linencloth 1ec41c754b Core/Player: Fix sight range
Closes issue 4772

--HG--
branch : trunk
2010-11-14 17:49:10 +01:00
linencloth 6b3204e441 Core/Creatures: Do not regenerate the health of evading creatures, it should happen only while normal pathing or at home
--HG--
branch : trunk
2010-11-14 04:20:32 +01:00
linencloth 7beb14b177 Core/Player: Delay the visibility update when setting the group to prevent crashing when a player enters the world in a group/raid.
Closes issue 4762

--HG--
branch : trunk
2010-11-13 23:27:54 +01:00
Shauren 72eff3dd0d Fixed recently added compile warnings
--HG--
branch : trunk
2010-11-13 21:21:43 +01:00
click 80694546a3 Core: Fix non-PCH compile (include Unit.h so we don't get a forward declaration issue, and also include the necessary defines)
--HG--
branch : trunk
2010-11-13 20:06:19 +01:00
linencloth 880ef0c398 Core/Spells: Fix spelleffect sanctuary
- No longer removes every attacker, but updates the visibility
  - Using that effect won't remove attackers that can still see through the stealth of the caster based on distance
- Ignores spells that were casted before or at the same time of that effect
- Trigger other needed spells when casting Shadowmeld

--HG--
branch : trunk
2010-11-13 18:04:56 +01:00
linencloth bf888285aa Core:
- Redesigned stealth and invisibility handling
  - Implemented the handling of multiple stealth types
- Implemented fake inebriation
- The message deliverer no longer sends packets from a non-visible source
  - The server won't send that much garbage which just takes bandwith
  - It won't be possible to use cheats to detect invisible objects
- Removed a lot of checks for the Z-coord
  - Fixes visibility problems happening while flying
- Limited the grid activation range of creatures to use less resources
- Implemented Shroud of Death
- Implemented increased visibility range for active objects
- Removed visibility check at spellhit (only sanctuary effects should prevent it)
(And a lot of other changes...)

Closes issue 4208
Closes issue 3049
Closes issue 2097
Closes issue 2198
Closes issue 2384
Closes issue 2197
Closes issue 2319

--HG--
branch : trunk
2010-11-13 17:18:09 +01:00
click 5d42e2293c Core/Spells: Fix Culling the Herd (and a personal thanks to Xanadu for being patient on explaining the procsystem properly)
Closes issue 4533

--HG--
branch : trunk
2010-11-13 04:10:48 +01:00
Machiavelli 36b40511ac Core/Unit: Threat values sent to the client should be multiplied by 100, as pointed out by Aokromes.
--HG--
branch : trunk
2010-11-09 11:17:33 +01:00
Machiavelli ec125bbc67 Core/Misc: Fix a typo (affects no functionality, just for aesthetics)
Author: 2010phenix
Fixes issue #4247

--HG--
branch : trunk
2010-11-09 10:55:20 +01:00
click 44850aab07 Core: Disallow moving currency tokens out of their hidden bag - fix by leak
--HG--
branch : trunk
2010-11-07 22:28:03 +01:00
click 7853a06912 Fix "typo" in previous commit (codingstyle)
--HG--
branch : trunk
2010-11-07 20:12:36 +01:00