Commit Graph
425 Commits
Author SHA1 Message Date
Shocker 5f41699312 Core/Groups: Raid leader can't be kicked from group by raid assistants 2010-12-29 22:08:33 +02:00
Machiavelli 68c6189201 Core/Vehicles:
- Set MovementFlagsExtra (2) correctly depending on vehicle 'template' flags. This makes certain vehicles such as demolishers unable to jump/strafe (as intended)
- Fix SMSG_MONSTER_MOVE_TRANSPORT stucture, prevents a client crash when entering certain vehicles, as well as *properly* broadcast position relative to the vehicle.
- Send SMSG_BREAK_TARGET to player when entering vehicle.
- Set MOVEMENTFLAG_ROOT on passenger when entering vehicle
- Cleanup in affected code
2010-12-29 05:45:38 +01:00
click c3abba71d3 Core/Handlers: Raise an errorlog into debug for CMSG_DISMISS_CRITTER - this may occur if the player is lagged out.
--HG--
branch : trunk
2010-12-28 10:14:05 +01:00
click 464f1a9f8f Core: Kill off some warnings
--HG--
branch : trunk
2010-12-27 22:58:22 +01:00
linencloth efbc73d025 Core/Player: Split RemoveQuest into 2 separate functions
--HG--
branch : trunk
2010-12-26 21:34:08 +01:00
linencloth 07498c048c Core/QuestStatus: Log abandoned quests (requested, can be used in statistics)
--HG--
branch : trunk
2010-12-26 21:23:05 +01:00
Shauren 79070ca820 Scripts/Serpentshrine Cavern: Fixed "The Lurker Above" achievement and removed hacks for the event
--HG--
branch : trunk
2010-12-26 16:35:29 +01:00
linencloth b150172521 Core/QuestStatus:
- Separate rewarded quests from active quests, and store them in a new table to reduce database size
- Drop the no longer needed `rewarded` column from character_queststatus for smaller table size
- Prevent filling the database with dropped quests
  - Delete useless records
- Implement queststatus save "queues" instead of states
- Minor optimizations

WARNING: Backup your database!

--HG--
branch : trunk
2010-12-26 04:16:18 +01:00
click b5c1d554b2 Core/Handlers: Change/add some extra output in error-logs for PetHandler and SpellHandler
--HG--
branch : trunk
2010-12-26 01:24:29 +01:00
click 07bebf0f35 Core/Handlers: Add some extra output in WorldSession::HandleDismissCritter (give more of which user attempts to dismiss it)
--HG--
branch : trunk
2010-12-25 17:53:50 +01:00
Machiavelli 398d71285d Core: Fix a possible crash in WorldSession::ProcessQueryCallbacks
Author: Cyberbrest
Closes issue #5262

--HG--
branch : trunk
2010-12-24 19:46:11 +01:00
Shauren 928443d899 Core: Removed more operator workarounds for ACE_Singleton (missed previously because of inconsistent naming)
--HG--
branch : trunk
2010-12-23 23:25:44 +01:00
Shauren 3b903693aa Core/Player: Fixed faction change for characters that don't have any quests completed, patch by [email protected]
Closes issue #5203.

--HG--
branch : trunk
extra : rebase_source : 6a7676a125be28e5b150db9f27d3488899f6c728
2010-12-23 19:15:44 +01:00
Spp 1f238d1700 Core/Dungeon Finder: Some cosmetic changes
- Drop pointer use in updateData struct
- Variable renaming
- Use of guid instead of group/player in rolecheck update

--HG--
branch : trunk
2010-12-23 06:06:19 +01:00
Shauren cef7c4d4f3 Core/Spells: Fixed "unprocessed tail data" packet spam for CMSG_CAST_SPELL
--HG--
branch : trunk
2010-12-22 21:32:48 +01:00
Shauren 0f3b9019a8 Core: Get rid of dirty operator workaround for ACE_Singleton class implementation
--HG--
branch : trunk
2010-12-22 21:25:23 +01:00
Shauren 0948fc5bbe Core: Converted (hopefully) all remaining singletons to use ACE_Singleton class
--HG--
branch : trunk
2010-12-22 20:52:47 +01:00
Shauren 7b4e1c6387 Core/ObjectMgr: Static members are no longer accessed through singleton
--HG--
branch : trunk
2010-12-22 20:23:47 +01:00
Spp f33f51c287 Core/Dungeon Finder: Fix problems when joining queue
- Fix Rolechecks
- Fix incorrect dungeon stored when queued as individual:
  * Those that joined as random were only matching with others that joined random
  * Teleport location was incorrect.

Closes issue 5161
Updates issue 5162

--HG--
branch : trunk
2010-12-21 23:16:09 +01:00
Spp 0c44943cd2 Core/Dungeon Finder: Multiple changes
- Simplify lock status calculations by caching player locked dungeons
- Fix incorrect Lfg State loading for groups
- All reference variables that are supposed not to be modified are declared as const
- Use full group guids in rolechecks
- Add some debug msgs
- Fix some warnings

--HG--
branch : trunk
2010-12-21 22:33:17 +01:00
Shocker 9fd0caf9a5 Core/WorldSocket: Fix a crash in HandleAuthSession
--HG--
branch : trunk
2010-12-21 01:48:09 +02:00
linencloth 59da698189 Core: Rename spell attributes, use more general names
--HG--
branch : trunk
2010-12-19 05:15:47 +01:00
Machiavelli 535d81db4b Core/Social: Really show correct count (matches + displayed) in SMSG_WHO now (switch position of 2 numbers).
--HG--
branch : trunk
2010-12-18 16:09:50 +01:00
leak 04e4561134 Prevent completing quests by packet manipulation
--HG--
branch : trunk
2010-12-18 15:29:11 +01:00
Machiavelli e867481ccb Fix a typo in 52d8bc05c3
--HG--
branch : trunk
2010-12-17 19:27:09 +01:00
Machiavelli 0a8c99e02c Core/Social: Fix SMSG_WHO. Packet should contain number of players matching given criteria + number of players displayed, instead of total number of players online + number of players displayed.
Fixes issue #4886

--HG--
branch : trunk
2010-12-17 16:36:01 +01:00
Shauren 82f45966fc Core/Unit: Renamed addUnitState/hasUnitState/clearUnitState to AddUnitState/HasUnitState/ClearUnitState
Core/Vehicles: Allow the vehicle to always damage the passenger (removed unneded dbc hacks from scripts)

--HG--
branch : trunk
2010-12-17 13:43:24 +01:00
Anubisss 6d9029c12e Make some cleanup.
My thank goes to Az@zel for the code analysis.

--HG--
branch : trunk
2010-12-16 18:08:23 +01:00
Spp 4671500172 Core/Dungeon Finder: Move all LFG data from Player and Group classes to internal LFG data classes.
--HG--
branch : trunk
2010-12-16 10:53:21 +01:00
Spp 451a6f40d4 Core/Dungeon Finder: Use full guid of players instead of lowguid
Note: This change is done in preparation of other changes that will come later.

--HG--
branch : trunk
2010-12-16 04:20:22 +01:00
Spp 382fef1958 Core: Some warning fixes
--HG--
branch : trunk
2010-12-15 10:44:06 +01:00
azazel 23e3909221 Core/Arena: avoid arena match loss when leaving queue before actual invitation to match (by VladimirMangos)
--HG--
branch : trunk
2010-12-15 14:25:10 +06:00
azazel b39b8fdd0d DB Schema/Characters: removed columns auctionhouse.item_template, character_inventory.item_template, guild_bank_item.item_entry and mail_items.item_template and created item_instance.itemEntry column instead of them.
As a side effect moved related queries to prepared statements.
As one more side effect fixed not shown and lost mail items in returned expired mail (patch by Quriq14).

--HG--
branch : trunk
2010-12-15 14:08:12 +06:00
Shauren 58a9b15443 Core: Fixes some warnings
Core/SmartAI: Fixed DamageTaken and DamageDealt hooks

--HG--
branch : trunk
extra : rebase_source : 062f1c68cd1d318d192b294a493db17a1943bee2
2010-12-14 22:45:23 +01:00
Machiavelli 3b0297f912 Core/CharacterHandler: Fix ¨[ERROR] GetUInt32() on non-numeric field¨ on a certain query.
Author: toshik.777
Closes issue #5068

--HG--
branch : trunk
2010-12-14 19:14:54 +01:00
Shauren 314376e32c Scripts: Fixed uninitialized variables, unreferenced parameters and virtual overrides
--HG--
branch : trunk
2010-12-14 16:24:59 +01:00
Shauren f4581f67b8 Core: Fixed uninitialized variable warnings
--HG--
branch : trunk
2010-12-14 15:58:45 +01:00
click 48b234022f Core: Change HandleEjectPasenger to HandleEjectPassenger (English thank you)
--HG--
branch : trunk
2010-12-14 14:09:14 +01:00
click 2d8e73fab5 Core: Fix up opcode-mess from previous commit, and move CMSG_DECLINE_CHANNEL_INVITE handling to its correct opcode (0x0410)
(Please report back any findings of erranous behaviour to the tracker, or into this commit)

--HG--
branch : trunk
2010-12-14 02:23:28 +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
Spp 89a33bbf61 Core/Dungeon Finder: Fix a crash in Join when there are no dungeons available for that group (And probably other random crashes that appear when having DF enabled)
Core/Dungeon Finder: Tab2spaces + remove trailing spaces in LFG* files.

Notes to self:
- assign NULL to a pointer parameter will not change the pointer value outside the scope of the function
- deleting a const_iterator can lead to mem corruption

--HG--
branch : trunk
2010-12-13 21:31:55 +01:00
Spp 865f35a637 Core/Dungeon Finder: Minor optimization in handler code
Note: LfgDungeonSet and LfgLockStatusMap were being used without using the existing typedef (to avoid including LFGMgr.h).
Now those functions use a struct as param that is forward declared so still LFGMgr.h is not needed and redefinition of LfgDungeonSet/LfgLockStatusMap is removed.

--HG--
branch : trunk
2010-12-13 21:28:36 +01:00
Shocker 4b0ffeb0bd Core/ChatHandler: Cleanup in HandleMessagechatOpcode. Now commands are parsed and security checks are made in all channels
--HG--
branch : trunk
2010-12-11 17:47:43 +02: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 0e33e73d39 Core/ChatHandler: Allow GM/server-commands to be executed through whisper-channels - patch by Ramus
Closes issue 5006.

--HG--
branch : trunk
2010-12-11 03:25:31 +01:00
Spp b434273ed8 Core/Dungeon Finder: Some optimizations
- Reduce core dependencies with LFGMgr
- Remove reduntant calculations in RoleCheck code
- Remove no longer needed functions
- Fix some packet data (Missing 0 when arrays were null)
- Add some debug msgs

closes issue 5042

--HG--
branch : trunk
2010-12-08 21:29:43 +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
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
click bc098658c6 Core/Chat: Configure automatic owner declaration for custom chat channels (patch by leak)
Closes issue 4974.

--HG--
branch : trunk
2010-12-02 03:54:52 +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