Commit graph

126 commits

Author SHA1 Message Date
Schmoozerd
2bd41afb3e Various Cleanups (game F-K) 2012-07-19 21:46:24 +02:00
stfx
f3f3349661 [11973] Various Cleanups
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2012-04-22 19:48:05 +02:00
stfx
f153193a02 [11951] Unify loot related code and fix engrish.
Also readd the m_groupLootId check in case the StopGroupLoot will be called from other places

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2012-04-12 17:16:37 +02:00
stfx
e79b80727d [11949] Check group id of group loot timer when timer is started. Close pull request #39
Also fix a small possible bug with loot shared to players at similar position on a different map

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2012-04-11 22:58:51 +02:00
zergtmn
c6a751134c [11928] Some warning fixes 2012-02-16 20:32:17 +06:00
Schmoozerd
bccded7e4b Fix previous commit *headbang. Thx to Reamer for pointing 2012-02-07 12:18:15 +01:00
cyberium
b984d3f787 [11920] Fix possible crash when trying to add playerto group who is not in world
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2012-02-07 11:41:44 +01:00
cyberium
35e991d70e [11898] Prevent resetting instances while offline players are in it
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2012-01-31 22:42:43 +01:00
darkstalker
461be74c3a [11878] Add group looting rules for gameobjects (chests)
Patch based on original work by Wowka321

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2012-01-16 22:54:08 +01:00
Schmoozerd
8068dcf6dd [11875] Update Copyright notice to year 2012
Start timemachine and a Happy new year to all!
2012-01-16 17:43:59 +01:00
zergtmn
5cae1c2211 [11539] Implement group guids with HIGHGUID_GROUP 2011-05-25 19:55:35 +06:00
VladimirMangos
249fb836ca [11490] Alow implicit cast ObjectGuid->uint64 and only explicit uint64->ObjectGuid
Now safe allow this casts in like way after completed convertion to ObjectGuid use.
Also simplify code in result allowed auto cast to uint64.

Please _not_ add new uint64 storages (local and in structures) for guid values.
2011-05-15 22:04:57 +04:00
VladimirMangos
ef6a48fe03 [11465] non-ObjectGuid guids in random places.
Only ChannelMgr code wide use uint64 guids now, and Map object stores.
2011-05-10 21:27:49 +04:00
VladimirMangos
151e5eae9c [11458] Non-item related uint64 guids replaced by ObjectGUids in Player.h
Also let ObjectAccessor::FindPlayer optimize empty guid case work.
2011-05-09 21:54:09 +04:00
TOM_RUS
730a907252 Use enum InventoryResult as return type for few functions. 2011-04-24 02:48:35 +04:00
VladimirMangos
108feb993d [11127] Rename src/game/InstanceSaveMgr.* -> src/game/MapPersistentStateMgr.* 2011-02-10 05:35:07 +03:00
VladimirMangos
dde16bc48c [11126] Rewrite InstanceSaveMgr related code.
* For better fit name to related map type class InstanceMap renamed -> DungeonMap.
  This clarify usage Instanceable()/IsDungeon() because BG/Arenas maps also instanceable maps.

* InstanceSave have many code related to only DungeonMap case, so it replaced by 3 new classes:
   - MapPersistentState as base class, used for non-instanceable maps (continents and some other) (!Instenceable())
   - DungeonPersistentState subclass of MapPersistentState, used for DungeonMap states (IsDungoen())
   - BattlegroundPersistentState subclass of MapPersistentState, used for BattlegroundMap states (IsBattleGroundOrArena())

   Now all dungeon resets code moved to subclass and all player/gpoup bound functions/structures also use it.

* Map::GetInstanceSave renamed to Map::GetPersistentState and DungeonMap have specialized version
  return DungeonPersistentState (same pointer in fact with proper subcalss type)

* InstanceResetScheduler renamed to DungeonResetScheduler
2011-02-10 05:20:56 +03:00
VladimirMangos
bf0ecf6e71 [10947] Update copyright notice for 2011 year. 2011-01-01 20:33:43 +03:00
VladimirMangos
cc0655a402 [10782] Use Team enum types in all appropriate cases and catches bug in result fix.
* Fixed wrong arenaid use at leave arena queue.
* Fixed memory lost and etc at not virtual EndBattleground call
* Fixed crash at arena join with fake data from client.
* Code cleanups.
2010-11-25 01:11:17 +03:00
Ambal
f67d89f109 [10727] Map system re-engineered. Special thanks to Blueboy for tests.
Signed-off-by: Ambal <pogrebniak@gala.net>
2010-11-16 21:08:28 +02:00
VladimirMangos
9c96949da9 [10713] player/group instance binding fixes.
* Use anum instead raw uint8 type in args
* Fixed crash when gm at continent invite to group gm in instance
  and then teleport to instance using .goname.
  When group leader teleport to instance it must get group bind instead solo bind.
* In other semilar cases detection report error as before but replace solo by group bind instead
  assert crash at enter to map.
2010-11-10 04:36:01 +03:00
Revils
050eb8cf5f [10708] Update ACHIEVEMENT_CRITERIA_TYPE_LOOT_* with group roll.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-09 05:43:03 +03:00
VladimirMangos
46d740bbf4 [10641] Fixed use item dynamic/item proto flags.
* List its independelty. Each from this 2 fields have own flags. Cleanup lists.
* Not copy proto flags to item flags update field. This fix heroic item versions
  show in client in result mixed use ITEM_DYNFLAG_WRAPPED (0x8) with ITEM_FLAG_HEROIC (0x8)
* Update uses to proto case use for some cases where before wrongly has been used item dyn.flags
* For ITEM_DYNFLAG_UNLOCKED (0x4) set for item at unlock and check for prevent re-unlocking.
  This mostly for future case when will be implemented partly loting items support.
* For ITEM_FLAG_LOOTABLE (0x4) check loot absent or conflicting setting with containers/casted at use items.
  Report wrong cases art loading.
* Better check related loot tables content using ITEM_FLAG_PROSPECTABLE and ITEM_FLAG_MILLABLE
2010-10-25 16:27:14 +04:00
Lynx3d
47397ff19b [10509] Fix some "foo initialized after bar" gcc warnings and remove some unused variables. 2010-09-20 10:07:25 +02:00
VladimirMangos
09b03b470e [10402] Use ObjectGuid in packets and fix some uint32 guids cases. 2010-08-23 12:37:11 +04:00
VladimirMangos
dbe9c6f190 [10371] More wide use ObjectGuid in group code.
Also drop some unused functions.
And fix some uint32 -> uint6 guid assigns.
2010-08-18 13:43:55 +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
9d8b66cf93 [10246] Restore work killCredit and kill achievements in regular difficulty instances. 2010-07-22 13:11:34 +04:00
VladimirMangos
238b57f93e [10216] Re-implement ROLL_VOTE_DISENCHANT disable case
Also implement NEED_BEFORE_GREED disabling ROLL_VOTE_MASK_NEED
instead skip item as expected in recent client changes.

Thanks to TOM_RUS for help in understanding proper way work.
Hmm, maybe i still do wrong something... ^^

Also count disenchnt roll as greed in ACHIEVEMENT_CRITERIA_TYPE_ROLL_GREED
2010-07-18 05:40:34 +04:00
VladimirMangos
4ef23face4 [10215] Implement ROLL_VOTE_DISENCHANT disable
* for player without reqired enchanting skill
* for item without disenchanting possibility
2010-07-18 02:04:06 +04:00
VladimirMangos
73a00a6807 [10213] Implement ITEM_FLAGS2_NEED_ROLL_DISABLED. 2010-07-17 23:45:56 +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
885c3449b4 [10132] Cleanup code for Group::_homebindIfInstance 2010-07-02 03:22:13 +04:00
VladimirMangos
41f8cfb14c [10123] Fixed recent problem with enter to dungeons in group.
Problem related to implicit get map id from player in Group::GetBoundInstance
when in some cases check done before player mapid update.
2010-06-30 00:45:14 +04:00
VladimirMangos
67a7892075 [10114] Store associated InstanceSave for dungeon map in Map object 2010-06-27 21:11:26 +04:00
VladimirMangos
f28bc74e66 [10085] Allow loot roll value 100 2010-06-20 05:22:24 +04:00
Revils
db93e78f50 [9992] Fixed MSG_PARTY_ASSIGNMENT processing.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-05-28 05:54:38 +04:00
vipertv
4206230f0d [9991] Next step in fix SMSG_GROUP_LIST structure.
Now assistant/main tank/main assistant show properly
for viewer character also.

Thanks to insider42 for posting patch in Under review section.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-05-28 04:38:58 +04:00
SilverIce
d0398b94f6 [9982] Group out of range member must based at client existances.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

Also move empty mask check from build function to caller.
2010-05-27 17:25:21 +04:00
VladimirMangos
94888e52cd [9974] Restore raid functionality broken after one from 3.3.x switches.
* Fixed typo in raid converting code that triggering raid disband at server restart.
* Fixed current subgroup show for character and update group memebers data at move its
  in diff subgroups.
2010-05-26 00:27:07 +04:00
Emme
8a424642e6 [9964] Implement Treshold in Masterloot.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-05-23 18:17:33 +04:00
VladimirMangos
29c0efe9b4 [9951] Fixed bug with raid subgroup size update at move member to another.
Also some code cleanups
2010-05-22 11:38:45 +04:00
zergtmn
ffd2cf874d [9923] Fixed typo in prev commit.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-05-18 10:35:24 +04:00
VladimirMangos
bed8794a75 [9921] In case player who tap creature in group leave group it must anyway rewarded with group. 2010-05-18 04:48:33 +04:00
VladimirMangos
696a4b6db0 [9918] Fixed player's tapped creature loot access by group in diff cases
* If player tap creature in group and leave then group will have access to creature loot if not disbanded
* If player tap creature and after join to group then creature loot will accesable only by player
* Also RewardPlayerAndGroupAtKill divided to simgle player and group reward versions used for group tap
  and single player tap cases.
2010-05-17 12:56:57 +04:00
VladimirMangos
96d50bf55a [9917] Fixes in loot roll timer work and related cleanups.
* Changes include (in fact as part cleanup) fix got NeedBeforeGreed locked item after expire roll timer
  suggested by somedruid@mangos.lighthouseapp.com.
* Added cancel rolling at creatuer corpse remove.
* For NeedBeforeGreed and GroupLoot sued common code for prepare item roll.
2010-05-17 05:29:01 +04:00
VladimirMangos
ec0141261a [9843] Restore need seelction show at loot roll.
Also some clanups including merge 2 roll type enum.
2010-05-07 01:39:52 +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
tomrus88
9836bcbbaa Added enum for SMSG_GROUP_JOINED_BATTLEGROUND opcode.
Use this enum where possible.
Some misc fixes.
2010-04-03 22:22:30 +04:00
tomrus88
dcb0d4e484 Group loot should work now. 2010-03-28 14:25:28 +04:00