Commit Graph
297 Commits
Author SHA1 Message Date
_manuel_ 3ee05b26ce Core/Spells: Now you can cast the Water Elemental's Freeze without cancelling its Waterbolt.
Author: dr.tenma

Fixes issue #4215

--HG--
branch : trunk
2010-10-22 17:22:38 -03:00
click 30542a442d Core/PetHandler: Implement CMSG_PET_STOP_ATTACK - thanks to zergtmn for the original code
--HG--
branch : trunk
2010-10-22 01:10:39 +02:00
Spp 959ef0878a Core/Groups: Use the proper RemoveMethod when player leaves a group
--HG--
branch : trunk
2010-10-19 18:32:04 +02:00
azazel c0faed2251 Core/Guilds: guild code was completely refactored and rewritten.
* OOP desing and implementation;
* all the queries are moved to prepared statements;
* guild loading is optimized;
* all the possible interaction with guild's data is done inside the guild class;
* added more hooks to GuildScript class;

WARNING: Make sure you backup your characters database before applying this change (just in case).

Known problems with guilds:
* when new member is added to the guild, MOTD is not displayed for him in guild tab of social window;
* if you add item with random property to guild bank visual representation of item below it becomes wrong (it displays wrong stack number);
* packets order differs from official: currently guild bank packet traffic is twice as more than on offy.

--HG--
branch : trunk
2010-10-17 19:54:13 +06:00
Xanadu f5911917b4 Core/Vehicles: Mammoth mount vendors no longer jump off the mount when talked to.
--HG--
branch : trunk
2010-10-17 03:09:01 +02:00
silinoron 8716264eda Core/Misc: Implement opcode CMSG_HEARTH_AND_RESURRECT - thanks to Blaymoira and tom_rus
--HG--
branch : trunk
2010-10-16 16:40:25 -07:00
linencloth ae213dd580 Core: Improve constant channel handling
- Implement area restrictions
  - Disable constant channels in arenas
  - Implement city requirement
- Implement global constant channels
- Fix some packets

--HG--
branch : trunk
2010-10-16 12:59:53 +02:00
Shauren 324de6fb4c Core: Added some anti-WPE filter checks to prevent putting non-empty bags into other bags/gbank/mail/auction, original patch from mythcore
Core: Changed inventory saving - will no longer abort operation at single item fail

Closes issue #1994.

--HG--
branch : trunk
2010-10-09 17:36:53 +02:00
Shauren a20dd32de0 Core/Trade: Fixed crash in WorldSession::moveItems, thx Derex for pointing it out
Closes issue #4216.

--HG--
branch : trunk
2010-10-09 17:33:19 +02:00
click 613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02:00
click f0c4241ea4 Remove the accidental additions of CRLF-crap from the header updates
--HG--
branch : trunk
2010-10-07 15:35:36 +02:00
click dd29d9e422 More copyright header updates (will this ever end?)
--HG--
branch : trunk
2010-10-07 14:50:05 +02:00
click a67d7c9afd Copyright header updates - part 3... (and some whitespace cleanups)
--HG--
branch : trunk
2010-10-07 14:00:52 +02:00
click df66aee929 Yet more copyright header updates
--HG--
branch : trunk
2010-10-07 13:38:35 +02:00
click 8ea4b32fab Update copyright headers (following the same standard in all files = good)
--HG--
branch : trunk
2010-10-07 12:41:56 +02:00
Spp e7817a4a49 Core/Dungeon Finder: After a new player have been found for a existing LFG group, teleport player to any of the players inside dungeon not to the entrance. Also do not teleport players inside dungeon to entrance
--HG--
branch : trunk
2010-10-06 15:52:39 +02:00
_manuel_ 6246d79b55 Core/Dungeon Finder: Modified LFGMgr to use DF quests to reward.
* In this way we will store the character's day progress in the db, preventing to lose the information because of a crash/restart/shutdown.

Patch by Gyullo and me, thanks to Spp & linencloth for help.

* The next commit will modify the current Quest System to support DF quests.

--HG--
branch : trunk
2010-09-28 00:19:37 -03:00
Rat 395df76860 Core/Commands: added .debug areatriggers
-if turned on it will print the trigger id to chat if you get near it

--HG--
branch : trunk
2010-10-01 00:07:14 +02:00
Shocker 78803c9f09 Magic numbers cleanup:
- Replace many magic numbers with constants
- Use enum for vehicle flags/seat flags
- Correct structure for ItemRandomSuffixEntry

--HG--
branch : trunk
2010-09-28 08:21:51 +03:00
Spp b1c97f15bf Core/Dungeon Finder: Remove Spell 72221 when leaving a dungeon using the portal
--HG--
branch : trunk
2010-09-27 23:27:52 +02:00
Machiavelli a9e9a2c884 Core/DBLayer:
- DB Threading model update
* Get rid of ThreadBundleMask and bundled connection
* Implement configurable amount of Synch threads for databasepools
* Use modulus based algorithm to check for free synchronous connections instead of previous ¨get connection by thread key or bundlemask¨ feature
* Locks on mysql context objects are now managed outside the mysql query methods

Fixes issue #4058
Fixes issue #4059
Introduces a ton of more issues. Use at own risk. You were warned. Really.

Don´t forget to update your worldserver.conf

--HG--
branch : trunk
2010-09-27 00:20:56 +02:00
silinoron 7375951ea8 merge
--HG--
branch : trunk
2010-09-26 12:25:01 -07:00
silinoron ededb13915 Core/World: Move some packet code out of World.cpp
--HG--
branch : trunk
2010-09-26 12:23:29 -07:00
Shauren 2e2951d037 Core/Players: Fixed action bar issues when changing active spec
--HG--
branch : trunk
2010-09-26 21:15:15 +02:00
silinoron 64378832c8 Core: Some cleanup in AddonHandler.
--HG--
branch : trunk
2010-09-26 12:06:16 -07:00
Spp ef16cc9109 Core/Dungeon Finder: Add lfg state to know if a player is using lfg or lfr
- Do not allow to join battleground if using lfg/lfr

Closes issue 4189

--HG--
branch : trunk
2010-09-26 13:59:51 +02:00
click 461590832a Core: Generic cleanup (tab2spaces/whitespace removal)
--HG--
branch : trunk
2010-09-25 22:03:57 +02:00
Shocker 6b65e886f2 Core/Chat: Use universal language for party leader too when allowing twoside groups
--HG--
branch : trunk
2010-09-25 18:50:36 +03:00
Machiavelli a312a667cb Core/Player: Correctly send social list to player on login. Fixes display of number of online friends in the icon on the chat pane.
Fixes issue #3807.

--HG--
branch : trunk
2010-09-25 17:08:55 +02:00
Machiavelli 3c6dc32030 Core/DBLayer:
- Rewrite Field class to be able to store both binary prepared statement data and data from adhoc query resultsets
- Buffer the data of prepared statements using ResultSet and Field classes and let go of mysql c api structures after PreparedResultSet constructor. Fixes a race condition and thus a possible crash/data corruption (issue pointed out to Derex, basic suggestion by raczman)
- Conform PreparedResultSet and ResultSet to the same design standards, and using Field class as data buffer class for both
* NOTE: This means the fetching methods are uniform again, using ¨Field* fields = result->Fetch();¨ and access to elements trough fields[x].
* NOTE: for access to the correct row in prepared statements, ¨Field* fields = result->Fetch();¨ must ALWAYS be called inside the do { }while(result->NextRow()) loop.
* NOTE: This means that Field::GetString() returns std::string object and Field::GetCString() returns const char* pointer.

Still experimental and all that jazz, not recommended for production servers until feedback is given.

--HG--
branch : trunk
2010-09-24 22:16:21 +02:00
Spp b8cc05f747 Core/Opcodes: Re-enable error log for received opcodes marked as not allowed
--HG--
branch : trunk
2010-09-24 15:08:52 +02:00
Spp 9b56aadde1 Core/Opcodes: Add unhandled status, by balrok
--HG--
branch : trunk
2010-09-24 14:41:07 +02:00
Shauren d8ddf38453 Core/Items: Implemented trading soulbound loot items
Core/DBLayer: Converted more more player-related queries into prepared statements
Core/Items: Fixed loading of enchantments

Closes issue #4130.

--HG--
branch : trunk
2010-09-21 21:55:16 +02:00
Shauren 38be7aab55 Core/Player: Fixed client crashes at login (issue introduced in revision 1c33354f20)
--HG--
branch : trunk
2010-09-21 16:16:58 +02:00
Shauren a509976369 Core/DBLayer: Converted player login queries into prepared statements
Core/DBLayer: Added missing implementation for SQLQueryHolder::SetPreparedQuery

--HG--
branch : trunk
2010-09-20 18:20:40 +02:00
Spp 33dc6b9d5f Core/Dungeon Finder: Multiple changes
- Code Style
- Explicit removal of the proposal if player leaves the queue (do not waits to ::Update)
- Force to leave LFG system if group/player is joining and its already in
- Change some debug msgs and fix some typos (error --> debug)
- Offer to continue: Remove duplicate checks
- Move body functions from .h to .cpp
- Revert 11e39d620d and check if group recently joined by comparing joinTimes

--HG--
branch : trunk
2010-09-20 14:06:21 +02:00
Rat 2fb80e4a86 Core/ConditionMgr: You can now hide/show the quest marks with conditions (! ?)
note: check only runs at quest giver query!
Using together with CONDITION_SOURCE_TYPE_QUEST_ACCEPT you can totally hide quests

--HG--
branch : trunk
2010-09-20 10:19:20 +02:00
click 1d6d11d367 Core/CharHandler: Correction on SQL-statement - fixes logincrashes when testing for banned characters
--HG--
branch : trunk
2010-09-20 03:37:49 +02:00
Shauren 97aeb251b8 Core/Players: Added support for single character bans
Core/Commands: Renamed .ban character to .ban playeraccount (.ban character will ban only the player, not account)

This revision reaches 10000, congratulations and thanks to everyone who contributed!

--HG--
branch : trunk
2010-09-19 17:02:14 +02:00
Shauren 639a906664 Core/Pets: Fixed range check for water elemental Freeze
Closes issue #3628.

--HG--
branch : trunk
2010-09-19 17:02:08 +02:00
silinoron 52282986e1 Core/Movement: Some cleanup in MovementHandler.cpp.
--HG--
branch : trunk
2010-09-18 19:08:18 -07:00
linencloth 19a76020bc Core: more cleanup at locale handling.
Also fixes some problems mainly with non English languages.

--HG--
branch : trunk
2010-09-17 19:55:54 +02:00
linencloth d8a854d6e0 Core: Cleanup locale handling.
It also fixes the recent problem of strange strings.

--HG--
branch : trunk
2010-09-17 07:04:29 +02:00
Spp c7354dd66b Core/Dungeon Finder: Ignore multiple join queue petitions while joining
--HG--
branch : trunk
2010-09-16 18:55:00 +02:00
click 4d88ce57d2 Core/: Set correct sizes of SMSG_ATTACKSTOP packets
--HG--
branch : trunk
2010-09-16 18:05:50 +02:00
linencloth 9739bea487 Core/Loot: Reimplement the proper check for loot recipient to prevent rewarding loot without tagging the creature by the player.
Also fix the related skinning problem, and do not set the skinnable flag for creatures without any loot recipient.

--HG--
branch : trunk
2010-09-15 17:44:56 +02:00
Spp cc3d4cc823 Core/Scripts: Add OnPlayerLogin, OnPlayerLogout, OnPlayerCreate and OnPlayerDelete
--HG--
branch : trunk
2010-09-15 13:23:07 +02:00
Spp b5172ea7d4 Core/Dungeon Finder: LfgUpdatePlayer and LfgUpdateParty opcodes will be sent only when LfgUpdate is active
--HG--
branch : trunk
2010-09-14 20:09:34 +02:00
Spp 64e60aaeda Core/Dungeon Finder: Add extended debug info to handler
--HG--
branch : trunk
2010-09-14 20:05:30 +02:00
Spp 61bbd284de Core/Player: Add default remove Method to RemoveFromGroup
--HG--
branch : trunk
2010-09-14 16:38:08 +02:00