Commit graph

173 commits

Author SHA1 Message Date
tomrus88
57126880cf Guild bank hopefully fixed. 2009-12-17 18:57:35 +03:00
VladimirMangos
ed7d561597 [8963] Make bindpoint field private and add required functions for use. 2009-12-10 12:22:17 +03:00
hunuza
4a6da1ad32 [8874] Extract player skills from data blob.
Thanks to vladimir for the update query.

Please make sure to make BACKUPs before you update your database.

The update might take a while depending on the size of your database.

Signed-off-by: hunuza <hunuza@gmail.com>
2009-11-25 18:22:22 +01:00
VladimirMangos
fe1fae46ee [8830] Restore build at *nix. Make MAKE_PAIR* users includes explicit.
Comment for recently added field also.
2009-11-18 23:57:20 +03:00
XTZGZoReX
0734adb746 [8789] Rename several singleton macros to use more consistent names.
* objmgr -> sObjectMgr
 * spellmgr -> sSpellMgr
 * WaypointMgr -> sWaypointMgr
 * poolhandler -> sPoolMgr
 * objaccessor -> sObjectAccessor
 * mapmgr -> sMapMgr
 * sInstanceSaveManager -> sInstanceSaveMgr
 * ticketmgr -> sTicketMgr
 * CreatureEAI_Mgr -> sEventAIMgr
 * auctionmgr -> sAuctionMgr
 * achievementmgr -> sAchievementMgr
2009-11-08 12:11:34 +01:00
XTZGZoReX
dc725ad6b8 [8785] Use macro instead of explicit call to singleton Instance().
* For: ObjectAccessor, MapManager.
2009-11-08 03:54:41 +01:00
Andeeria
8baee4a73f [8728] Store current realmid for online account in realm Db account table.
* Replace old `account`.`online` field by `account`.`active_realm_id`.
  It have 0 if account offline.

NOTE: this break all scripts that use `online` field for seelct online characters, and it required update.
But from other side this reolve
* Bug with reset online state active realm at restart another realm.
* Let easy select online accounts for some specific realm if need.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-10-25 03:22:08 +03:00
tomrus88
4a8431f581 Merge commit 'origin/master' into 320
Conflicts:
	src/game/DBCStructure.h
	src/game/DBCfmt.h
	src/game/MiscHandler.cpp
	src/game/ObjectMgr.cpp
2009-09-04 21:16:59 +04:00
arrai
3b1b68595b [8445] Fixed redundant calculation of v and s on every login
The SRP-6 specifications clearly say, that v and s are only to be
calculated on registering a user and changing his password; calculating
them on every login is plain waste.
2009-09-01 02:42:50 +02:00
tomrus88
77af8018e1 Fixed typo, account data saving should work now. 2009-08-29 16:03:30 +04:00
tomrus88
d26712c6ba Merge commit 'origin/master' into 320
Conflicts:
	src/game/CharacterHandler.cpp
	src/game/Opcodes.cpp
	src/game/WorldSession.h
2009-08-29 12:01:39 +04:00
VladimirMangos
5cf72882ad [8433] Implement proper store and use character specific account data.
* Base at TOM_RUS reseach save/load character specific account data in new table `character_account_data`
* Move its in sql update from `account_data` to new table.
* For client packets that can be send in loggined state or just after logout but assocualted
  with recently logout character add new login status STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT
* Store low guid for loggedin player or recently logout into WorldSession.
2009-08-29 11:26:57 +04:00
tomrus88
f553cf2887 Merge commit 'origin/master' into 320
Conflicts:
	src/game/CharacterHandler.cpp
	src/game/DuelHandler.cpp
	src/game/ItemHandler.cpp
	src/game/Mail.cpp
	src/game/MiscHandler.cpp
	src/game/MovementHandler.cpp
	src/game/TaxiHandler.cpp
	src/game/WorldSession.h
	src/game/WorldSocket.cpp
2009-08-17 10:31:02 +04:00
arrai
a24f39a36f [8378] Use exceptions instead of explicit size checking for each packet
CHECK_PACKET_SIZE was pretty error prone; once it was forgotten mangosd
could crash due to the asserts in ByteBuffer.h. That was exploitable by
malicious players.
Furthermore, there were duplicate checks: Additionally to
CHECK_PACKET_SIZE, the ByteBuffer assertions keept an eye
on not exceeding the packet boundaries - just to crash the server for
sure in such a case.
To prevent memory leaks or other undesirable states, please read in
every handler all variables _before_ doing any concrete handling.
2009-08-16 23:50:22 +02:00
tomrus88
2c30020c7e Login with 3.2.2.10257 should work now. 2009-08-15 14:24:04 +04:00
tomrus88
f07363e9e0 Merge commit 'origin/master' into 320
Conflicts:
	src/game/MovementHandler.cpp
	src/game/Player.cpp
2009-08-09 20:18:41 +04:00
ApoC
6d9448dd7f [8339] Improved storing/restoring BG entry point
* Introduced new table character_battleground_data
* Entry point is now stored on BG enter event not join event
* Entry point for dungeons is now correctly set to nearest graveyard
  (this prevent well known assert in GetInstance because of porting to already destroyed instance)
* Teleporting from BG correctly restore mount state
* Teleporting from BG correctly restore taxi flight
  (in multipath flight you will end up in nearest transition point on the route)

Signed-off-by: ApoC <apoc@nymfe.net>
2009-08-09 11:00:37 +02:00
tomrus88
3b67be525d Enable creation of both faction charaters on PvP realms. 2009-08-07 23:49:38 +04:00
tomrus88
f97da77cbd Merge commit 'origin/master' into 320 2009-08-05 14:52:29 +04:00
VladimirMangos
8af151eee7 [8304] Move standup code to login, remove other not needed data change at save.
Now players saved as-is without any modifications.
2009-08-04 12:52:01 +04:00
redcore
cc20be1012 [8286] Correctly show talent points after talents reset at login by "at login" flag.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-08-01 15:09:52 +04:00
tomrus88
4363516299 Replaced some hardcoded values with enum. 2009-07-11 12:09:42 +04:00
tomrus88
2066de036f Updated auras enum, dbc comments. 2009-07-11 10:36:56 +04:00
VladimirMangos
715470a898 [8126] Improvemets in player/pet/charter name checks.
* Implement new config options for minimal player/pet/charter name length (2 by default)
* Better error reporting at problems in names.
* Add check from max pet/charter name length (same as for player names at client side)
2009-07-05 20:30:33 +04:00
VladimirMangos
1baec77845 [8098] Support uint32 spell ids in code.
* Propertly work with uint32 spell ids in player action bar
* Fix in same time bug with not save equipment set button with id==0
* Merge misc field in character_action and playercreateinfo_action to action field as 3 byte
* Propertly load uint32 spell ids from character_spell
* Fixed types for some pet/creature related structure for spell id storing.
2009-06-30 11:25:32 +04:00
hunuza
8a32a19bad [8072] First step to get rid of data blob.
Adds new fields gender, level, xp, money, playerBytes, playerBytes2 and playerFlags to characters table.

The update will not work if your database contains characters with an old data field (not fitting to the actual client version).

It's recommended to backup your character database before applying this patch.

Signed-off-by: hunuza <hunuza@gmail.com>
2009-06-23 17:51:48 +02:00
VladimirMangos
d56de2cd77 [8053] At character talents reset using chat command also reset talents for all character pets.
This applied to .reset talents and .reset all talents commands.
2009-06-21 00:29:46 +04:00
VladimirMangos
08fe4933c5 [8015] More dislpay id selection fixes...
* Allow have only A2 or H2 display ids for less strincted DB field data.
* Check model data existance for all provided display ids atserver startup.
* Avoid explicit access to creature info display fields but use display selection functions.
* Rename GetTaxiMount to more clear for returned value GetTaxiMountDisplayId.
* Check display ids in `creature_model_info` at server load.
2009-06-14 21:57:56 +04:00
tomrus88
1f87157edf Merge commit 'origin/master' into 310
Conflicts:
	src/game/UpdateData.cpp
2009-06-07 21:42:02 +04:00
VladimirMangos
5ac6b2f34b [7971] Implement support exotic pets limtations related to hunter telent 53270.
Note: before this commit hunters can tame exotic pets like any other.
      After patch like not propertly contriolled pets will auto-dismiss at loading
      if talent not learned.
2009-06-06 21:21:27 +04:00
tomrus88
cae3f0a532 Merge commit 'origin/master' into 310
Conflicts:
	src/game/SpellAuras.cpp
2009-05-31 12:16:25 +04:00
VladimirMangos
2a27a44e2a [7918] Improve portability in work with uint64 string format specifiers and in code literals.
* Replace platform seelction MaNGOS code for select format descriptor for uint64 by using ACE define.
  I64FMTD renamed to UI64FMTD for more clear name.
* Add new define UI64LIT (base at ACE seelction) for build portables uint64 literals.
  Please always use UI64LIT(0x00001) instead less portable 0x00001LL
2009-05-30 22:44:20 +04:00
tomrus88
42f8ce5f3e [7911] Applied coding style. 2009-05-29 19:07:28 +04:00
tomrus88
ebb03b7b9f Merge commit 'origin/master' into 310
Hope it works with live 3.1.2.9901 client
2009-05-20 10:53:55 +04:00
SilverIce
b7f09eb37c [7841] Fixed: Prevent loading maps/vmaps when building enum.
Signed-off-by: AlexDereka <dereka.alex@gmail.com>
2009-05-17 19:58:43 +04:00
tomrus88
6734694a90 Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
2009-05-16 00:47:37 +04:00
Foks
dbf1f4323b [7822] Avoid declined names form show in case disabled config option with russian client at non-russian realm.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-05-14 11:31:04 +04:00
tomrus88
0db4ccc692 Partly fixed MSG_LOOKING_FOR_GROUP opcode. 2009-05-10 00:46:11 +04:00
tomrus88
5e26a2a152 Just a few renames. 2009-05-09 16:01:31 +04:00
tomrus88
c9f5062955 Merge commit 'origin/master' into 310 2009-05-08 15:31:27 +04:00
tomrus88
930f3304de Fixed SMSG_PET_SPELLS opcode. 2009-05-08 15:30:39 +04:00
VladimirMangos
3989212ad1 [7797] Use DBC data for mount model selection in more cases.
* Use alt.team mount data for take player team model id if DB not provide own team creature id in spell taxi call case.
* Remove unddeded hacks for model ids from Spell::EffectSendTaxi
* Provide spell target for SPELL_EFFECT_SEND_TAXI for spell with target mode 0 for this effect.
2009-05-07 22:40:37 +04:00
tomrus88
908f41b031 Attempt to fix quests. Some other fixes. 2009-05-07 02:04:43 +04:00
tomrus88
6b71704ac0 Added CMSG_EQUIPMENT_SET_USE opcode structure. 2009-05-05 11:52:58 +04:00
tomrus88
7e938af972 Updated to latest PTR client build 9868. 2009-05-05 10:41:22 +04:00
tomrus88
d4323e0071 Merge commit 'origin/master' into 310
Conflicts:
	src/game/CharacterHandler.cpp
	src/game/Player.cpp
2009-04-29 11:51:15 +04:00
zhenya
8144f30199 [7730] Some optimizantion and code style.
Signed-off-by: AlexDereka <dereka.alex@gmail.com>
2009-04-29 01:05:21 +04:00
tomrus88
9b20869a32 Merge branch 'master' into 310
Conflicts:
	src/game/Player.cpp
2009-04-12 14:37:33 +04:00
VladimirMangos
eb198f8239 [7645] Fixed problems wit temporary unsummoned pets and cleanup code.
* Save temporary unsummoned pet to current slot (instead non_in_slot mode) and
  prevent save as current pet summoned while temporay unsummon (arena)
* Prevent overwrite temporary summoned pet data
* At player loading set temporary unsummoned pet data instead pet loading
  if pet expected to be temporary unsummoned in current player state (loading in taxi flight/etc)
* Restore proper pet at arena leave and unsummon in arena summoned.
2009-04-11 08:46:48 +04:00
VladimirMangos
263bf2ab22 [7644] Fixed pet slot values using in pet save.
Problem exist from client version switch when stable slot amount changed.
In result this has been source problems with stable use (3-4 slots) and possible pet lost in some cases
or "not save state" for summoned pets.
Use enums to avoid repeating problem, use more safe value for not-in-slot save (for summoned pets)
Fixed data preparing for MSG_LIST_STABLED_PETS.
2009-04-10 09:02:04 +04:00