Commit graph

90 commits

Author SHA1 Message Date
VladimirMangos
54d991ef3a [10469] Rename some opcode handler to better follow used naming style 2010-09-11 14:38:22 +04:00
NoFantasy
25d9fd265b [10293] Correct a not exitan...non-existin... a word that is often spelled wrong
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-07-30 18:26:08 +02:00
VladimirMangos
9350c9990d [10250] Select auction store by house id only.
After this commit auction auctioneer guid used only for select auction house in packet or loading.
Next task replace it in DB by houseid, dependence DB data from creature guid isn't good.
2010-07-23 18:06:08 +04:00
Timawyn
6b0746b49b [10228] Missing send packet in empty vendor item list case.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-07-19 23:38:22 +04:00
a1ien
e9e7aff5bb [10225] Propertly show empty vendor list for empty item list.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-07-19 11:13:14 +04:00
VladimirMangos
20a5551739 [10207] Implement ITEM_FLAGS2_EXT_COST_REQUIRES_GOLD use instead sign of ExtendedCost field. 2010-07-17 19:23:38 +04:00
VladimirMangos
9882bc811f [10206] Implement ITEM_FLAGS2_HORDE_ONLY and ITEM_FLAGS2_ALLIANCE_ONLY
* Check item_template data
* Check at equip/use
* Skip at loot if not compatible
* Skip in vendor list if not compatible
2010-07-17 08:21:23 +04:00
VladimirMangos
4e16982d18 [10203] Rename item_template.Faction to Flags2 and define some values for it.
Thanks to Shauren for research flag ITEM_FLAGS2_COST_REQUIRES_GOLD meaning
and inspiring in general what must be done long time ago with field rename
and other enum values listing.
2010-07-17 04:51:25 +04:00
VladimirMangos
09d61040e6 [10180] Implement ITEM_FLAGS_NO_EQUIP_COOLDOWN support.
Also server side check for ITEM_FLAGS_INDESTRUCTIBLE
2010-07-11 21:35:30 +04:00
VladimirMangos
ce553c9997 Merge remote branch 'origin/master' into 335 2010-06-28 16:58:45 +04:00
VladimirMangos
b8246b1dbb [10100] Fixed some cases assign low guid to full guid update field. 2010-06-23 10:51:38 +04:00
tomrus88
40b00f26fb Updated to latest PTR build. 2010-06-13 15:46:08 +04:00
VladimirMangos
e823b30f4f [10021] Move item disenchanting static req. checks to server start. 2010-06-02 14:58:35 +04:00
VladimirMangos
e55551013d [9969] Additional check for HandleAutoBankItemOpcode. 2010-05-24 11:30:29 +04:00
VladimirMangos
67b8ca03b5 [9957] Alow sell item for money and extanded coset without momey in same time.
npc_vendor.ExtandedCost can be negative now that meaning:
price excluded default item BuyPrice and use only abs(ExtandedCost) items).
For example expected used for item 36908.
2010-05-22 19:49:07 +04:00
VladimirMangos
722135b326 [9838] More log filters and macro uses.
* LogFilter_Weather
* LogFilter_PeriodicAffects
* LogFilter_PlayerMoves
* LogFilter_SQLText
* LogFilter_AIAndMovegens
* LogFilter_PlayerStats
2010-05-05 18:46:10 +04:00
VladimirMangos
9304d7509d [9729] Client not like vendor slot 0 so restore send slots counted from 1
This is must fix not selling first item in list by vendor.
2010-04-11 23:29:11 +04:00
VladimirMangos
c6b56b512c [9723] Finaly cleanup usage ventorslot values.
This is also fix recent showup problem buy items
from vendors in case when some items usable (and then show in list)
only for some class/races.
2010-04-11 00:25:31 +04:00
VladimirMangos
25c2a76b63 [9716] Allow to vendor have same items in list with different extanded price. 2010-04-10 05:41:30 +04:00
VladimirMangos
24f2d03485 [9702] Drop now redundent item_text table.
* In beggining bad news: at 3.3.3 switch has been forgoted item_instance.data field chnage.
  In result items with texts (mail copy in to inventory, some other) lost text content.
* That why in current commit item_text droped without convertion. In result all itesm with texts
  will lost text. Sorry for this as i think small porblem :(
* Now text stored in item itself.
2010-04-09 02:10:36 +04:00
tomrus88
a248015501 Implemented SMSG_BUY_BANK_SLOT_RESULT opcode. 2010-04-03 15:11:53 +04:00
VladimirMangos
d7c1e06d1b [9636] Move item real-time/in-game duration counting flag to new extraflags field.
Client expected only positive duration values, so stop use duration field as signed.
2010-03-29 09:52:59 +04:00
VladimirMangos
2bf75e7a10 111 2010-03-13 16:12:13 +03:00
VladimirMangos
c71f79584d [9501] Implement item limit category inventory mode.
* Now expected item limit categories (for example for item 5513 and related)
  correctly limited by its amount in inventory.
* Provide and use additional arg in SendEquipError for alt. way get affected
  item prototype. This let send to function item id and prevent crash client at
  limit category equip errors that required item prototype data.
2010-03-02 14:10:38 +03:00
VladimirMangos
df652c56c0 [9425] More achievement types support.
Implemented new achievement criteria requirement:
* ACHIEVEMENT_CRITERIA_REQUIRE_S_EQUIPED_ITEM_LVL (item level and item quality equiped in specific slot)

Implemented suppoprt achievement types:
* ACHIEVEMENT_CRITERIA_TYPE_EQUIP_EPIC_ITEM (required DB data)
* ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL (required DB data)

Also achievment types used only for statistics:
* ACHIEVEMENT_CRITERIA_TYPE_CREATE_AUCTION
* ACHIEVEMENT_CRITERIA_TYPE_WON_AUCTIONS
* ACHIEVEMENT_CRITERIA_TYPE_MONEY_FROM_VENDORS
* ACHIEVEMENT_CRITERIA_TYPE_GOLD_EARNED_BY_AUCTIONS
* ACHIEVEMENT_CRITERIA_TYPE_LOOT_EPIC_ITEM
* ACHIEVEMENT_CRITERIA_TYPE_RECEIVE_EPIC_ITEM
2010-02-21 03:20:26 +03:00
VladimirMangos
4995a6d298 [9227] More wide check item looting state at item operations.
Move some checks from packet handlers to Player::Can functions

Patch base at idea suggested originally by zhenya.
2010-01-21 11:35:03 +03:00
VladimirMangos
fe6e2e1746 [9122] Updated copyright notice for new year.
Also fix some lost in past cases.
2010-01-08 00:02:21 +03:00
Wowka321
e2afc328b1 [8911] Show item expire time in realtime case.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-12-03 02:50:30 +03:00
VladimirMangos
5186046c5e [8897] More stricted checks for store operations.
* Use stricted definition valid pos for expected explicit pos cases
* Prevent attempts add bag to self at autostore.
2009-11-30 16:55:49 +03:00
NoFantasy
10ebadcadf [8871] Avoid use StopMoving when creature is already stopped.
Some additional code cleanup in related code.
2009-11-25 12:16:08 +01: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
1f23884757 Don't use singleton to access static functions.
* This affects especially ObjectMgr functions:
   - GetCreatureInfo
   - GetGameObjectInfo
   - GetInstanceTemplate
   These are in fact static functions.
2009-11-08 03:54:27 +01:00
SilverIce
023b13f348 [8627] Avoid not needed too oftent send update data, cleanups.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-10-11 19:31:57 +04:00
VladimirMangos
59befa2e0e Merge branch 'master' into 320 2009-10-02 19:09:06 +04:00
VladimirMangos
30105b8a0d [8577] Remove redundent #include "ObjectAccessor.h" 2009-10-01 19:30:30 +04:00
VladimirMangos
47bf1dbce6 [8571] Avoid use ^ bitmask operation for bool values compare in general.
Also drop HandleSet32Bit logn unused and wrong coded chat command code.
2009-09-30 19:39:44 +04:00
tomrus88
2d86aa4535 Misc fixes. 2009-09-14 18:11:15 +04:00
tomrus88
9c8a0d615e Merge commit 'origin/master' into 320
Conflicts:
	src/game/WorldSession.cpp
2009-08-30 15:52:20 +04:00
Fog
016dc29e5d [8438] Correctly update achievement at bank bag slot buy instead next login.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-08-29 23:31:56 +04:00
tomrus88
fec1a1954c Merge commit 'origin/master' into 320
Conflicts:
	src/game/MovementHandler.cpp
2009-08-20 16:24:37 +04:00
VladimirMangos
35121cdd34 [8389] Implement check really read received packet size and warning it not all data read.
* This let more easy catch packet structure chnages at client switch.
* Fixed structure CMSG_GUILD_BANK_SWAP_ITEMS
* Fixed structure CMSG_SPLIT_ITEM, CMSG_SELL_ITEM
* Added read data amount fixes for some other packets.

Thanks to TOM_RUS in help check correct packets structure.

Note: not all packets possible fixed. Please report for not fixed cases at errors:
"opcode %s (0x%.4X) have unprocessed tail data (read stop at %u from %u)"
2009-08-19 00:45:24 +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
1df1f7cff5 Fixed player movement.
Fixed multinode taxi.
Removed some unhandled opcode spam.
2009-08-09 18:08:14 +04:00
tomrus88
299f40ac0c Merge commit 'origin/master' into 320 2009-07-26 10:52:21 +04:00
VladimirMangos
bd1ea72043 [8244] Skip cheating check for buy bank slot opcode.
This is not big problem in any case and will allow buy slots
in bank windows open using .bank command.
2009-07-25 06:47:05 +04:00
tomrus88
a26e90019b /played command should work once again. 2009-07-22 01:25:15 +04:00
tomrus88
3de88aef12 Updated to 10116 client build. 2009-07-17 17:01:47 +04:00
tomrus88
87930a6d07 Merge commit 'origin/master' into 320 2009-07-08 22:08:09 +04:00
VladimirMangos
b4302d61e5 [8121] Cleanup and more safe code in Player::BuyItemFromVendor use.
* Move bag search by bag guid code to WorldSession::HandleBuyItemInSlotOpcode
* Really reject unexisted bag cases.
2009-07-05 17:45:45 +04:00