Commit graph

199 commits

Author SHA1 Message Date
Lynx3d
1ffde196ce [11620] Make equipment manager handle "ignore this slot" option properly.
Also fix SQL fields to use unsigned values as expected in code, otherwise large values will get lost.
2011-06-10 18:51:33 +02: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
719e298795 [11470] Final cleanup uint64 guid cases
Also drop logout player update fields cleanup that in any cases not saved.
2011-05-11 21:36:27 +04:00
BThallid
7237fe7f62 [11436] Really save/load item 5/6 objectives counters in quest status.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-05-08 01:55:32 +04:00
zergtmn
6498941ead [11430] Introduce GuildMgr
Move all guild-related functions from our overpowered ObjectMgr to GuildMgr.
Thx leak for idea.
2011-05-06 19:27:36 +06:00
TOM_RUS
730a907252 Use enum InventoryResult as return type for few functions. 2011-04-24 02:48:35 +04:00
TOM_RUS
83b41546aa Dropped old code. 2011-04-18 06:59:32 +04:00
TOM_RUS
0f8c46878b Updated some structs and enums. 2011-04-14 08:14:03 +04:00
Ambal
8fd323a09a [11317] More SQL requests to use prepared statements.
Signed-off-by: Ambal <pogrebniak@gala.net>
2011-04-06 00:13:12 +03:00
zergtmn
4687fa8cb4 [11299] Handle aura durations in SpellAuraHolder
- Unit::CalculateSpellDuration split into two functions
    - CalculateSpellDuration taking into account combo points and caster-side spell mods
    - Unit::CalculateAuraDuration taking into account target-side spell mods
- Diminishing is now applied before duration reduction mods
- Implement saving per-effect periodic timers to DB (required for auras affected by haste)
2011-03-30 23:29:01 +06:00
VladimirMangos
52b0748282 [11246] Provide mail template items for offline players
Implemented generation mail template items at mails loading in case when
original mail send in time when receiver has been offline. Before like
receiver not receive items.

Small change in mail.has_items meaning. Now it set also in cases when items
generated for template but none items really added to mail. This not affect
mostly existed code work aceept case when mail with template loading.
2011-03-14 23:20:37 +03:00
Schmoozerd
bbdd04d1ab [11172] Implement ACHIEVEMENT_CRITERIA_TYPE_ON_LOGIN (type 74)
Also implement new criteria requirements:
  - ACHIEVEMENT_CRITERIA_REQUIRE_NTH_BIRTHDAY
  - ACHIEVEMENT_CRITERIA_REQUIRE_KNOWN_TITLE

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-02-16 02:17:57 +03:00
VladimirMangos
cf685da47a [11139] Use for Creature/GameObject local per-map guids
* Creature/GameObject guid generators moved to Map
* For avoid wrong not converted cases generic function in ObjectMgr has been replaced by
  specilized guid generation function like sObjectMgr.GeneratePlayerLowGuid().
  This let catch all cases that need update in custom code or scripts.
* Drop many ObjectAcessor.h now dead code. This is also make mangos more thread safe.
* Restore one more time unix build broken in prev. commits.

Note: many cases when something not wotk in instance but work in continents
possible magicly start work after this commit. For example, some gm commands.
From large systems that need more chnages for start work in full power in instances
can be referecned pool/gamevent system. Last need just small hacks drop changes but
in will addded in independent commit.
2011-02-12 09:52:16 +03:00
Ambal
631ce36680 [11045] Rewrite internals of DB layer. Simplify code and use less locking. Spawn and use separate connections for sync and async DB requests. Implement database connection pool for SELECT queries. Up to maximum 16 connections supported. Disable 'autocommit' mode for MySQL.
UPDATE YOUR CONFIGS!

Defaults:
LoginDatabaseConnections = 1
WorldDatabaseConnections = 1
CharacterDatabaseConnections = 1

If you are not using <mtmaps> patch do not change the default settings - this is useless. You can try following option in your MySQL config to squeeze even more performance from your DB:

[mysqld]
transaction-isolation = READ-COMMITTED

Great thanks to Undergarun, kero99 and selector for making tests and providing very useful feedback and DB statistics! Have fun :)

Signed-off-by: Ambal <pogrebniak@gala.net>
2011-01-19 22:05:20 +02:00
VladimirMangos
bf0ecf6e71 [10947] Update copyright notice for 2011 year. 2011-01-01 20:33:43 +03:00
Ambal
b11820593c [10924] Send time diff between Update() calls for object - should help with mob respawn on inactive grids etc. Based on patches by VladimirMangos and cipherCOM. All issues from previous patches should be finally fixed now.
Signed-off-by: Ambal <pogrebniak@gala.net>
2010-12-27 22:27:20 +02:00
NoFantasy
f72e2ccee8 [10861] Large flightless birds (emu) think they are invisible, even when they are not.
Only if _not_ isGMVisible, invisible notification can be sent :)

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-12-11 21:51:09 +01:00
mns
f1e46c8f1f [10853] Report about GM invisible state at login if enable.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-12-11 04:59:55 +03:00
VladimirMangos
a8a7f3c796 [10815] Use in social lists API ObjectGuid form.
0 GUID_LOPART uses in code. :)
2010-12-02 08:32:46 +03:00
VladimirMangos
090bdf1dc7 [10803] Use ObjectGuid in player loading code. 2010-12-01 15:27:41 +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
rsa
5bc0ba05e3 [10702] Fixed loading mails broken after [10692]
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-08 22:57:59 +03:00
blueboy
ee8cc71e38 [10692] Fixed wrongly use %d for guids in DB queries.
This can affect correct result in cases big guid values
(out of range for possitive part of int32 range) at x86 platforms.

Some other cases addded in addition to original patch fixes
where %d wrongly/unsafe used for unsigned values.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-07 22:10:37 +03:00
VladimirMangos
f48e768a70 [10662] Implement partly item looting
* Not deleted normal item loot at first loot window close.
* Save current item loot content to DB for later continue looting.
* Cleanup spell effect SPELL_EFFECT_OPEN_LOCK check code
* Cleanup Player::AutoStoreLoot calls
2010-11-01 02:04:08 +03:00
NoFantasy
a38f97f71c [10655] Add support for monthly quests
Quest that can repeated each month are set by quest_template.SpecialFlags |0x04 flag
Quest are reset at midnight the first day of each month.
Note: for the time being, quest must also be set repeatable (SpecialFlags |0x01)

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-10-29 20:39:01 +02:00
VladimirMangos
851e15c70a [10635] Convert many opcode handlers to ObjectGuid use.
Also re-enabled anticheating check for bank window open
base at .bank command access rights.
2010-10-21 10:43:14 +04:00
VladimirMangos
54d991ef3a [10469] Rename some opcode handler to better follow used naming style 2010-09-11 14:38:22 +04:00
VladimirMangos
f2406c1962 [10377] Simplify use Guild::BroadcastEvent 2010-08-19 07:27:19 +04:00
Lynx3d
40f70138da [10364] Restore build with gcc and cleanup includes a bit. 2010-08-17 19:42:20 +02:00
VladimirMangos
5f44c4da21 [10363] More wide use ObjectGuid in way remove MAKE_NEW_GUID uses.
Also
* Fixed some amount wrong uses low guids as full player guids.
* Add private without body ObjectGuid(uint32 const&) for catch wrong assigns low guids to ObjectGuid.
  In some cases need assign "0" guid, then use ObjectGuid() instead.
* Fixed .pdump commands work.
2010-08-17 08:22:28 +04:00
VladimirMangos
779e40d5ff [10332] Save cast item guid for auras also.
This must fix another way duplicate aura adding to DB error.
It also prevent wrong stacking work for weapon equip bufs
in cases when its allowed for both wepoan indepndently apply.
2010-08-09 06:17:23 +04:00
VladimirMangos
af50d03f16 [10297] Drop CMSG_SET_FACTION_CHEAT support.
No reported long time and now finaly broken by spillover rep changes.
2010-07-31 07:21:36 +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
Laise
a32b3063a2 [10156] Add shared object for auras of same spell and move spell proc code to its own file, also spread procs by auras and effect indexes. 2010-07-07 19:08:26 +03:00
Grinder
f244e68c59 [10102] Rename loginDatabase for consistence with other global db object names
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-06-24 02:55:26 +04:00
VladimirMangos
d6138f01a6 [10077] Add delayed far teleports for opcode handlers
Some opcode handlers have many code with possible deep calling
far teleports by some reason (death, quest script, etc).
This can be triggering unexpected lost Map context and crashs result.

Note: player login opcode still have disbled delayed teleports (old way work)
just becase Player object created in it and not have flag set.
Calling point look not 100% safe but at this commit this way not chnages for while.
2010-06-19 05:56:55 +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
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
Olynn
9d8aab98e6 [9801] Typo in enum name.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-04-29 11:45:42 +04:00
DasBlub
26cbb01556 [9793] Add 'Logout Player' output to the Char.log 2010-04-25 18:30:24 +02:00
VladimirMangos
6ef88699d1 [9710] Add gm possibilities reset talents for all specs.
* At login reset '.reset all talents' will reset all spec talents.
* New command '.reset specs' will reset its online/offline.
* Command '.reset talents' now not support offline player case.
2010-04-09 22:43:11 +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
VladimirMangos
6bcbbc321b Merge branch 'master' into 330 2010-04-07 06:58:42 +04:00
VladimirMangos
d78117bbc8 [9687] Add to mangos.conf options for daily/weekly reset time.
* Quests.Daily.ResetHour (0..23) for daily quests
* Quests.Weekly.ResetWeekDay (0..6) and Quests.Weekly.ResetHour (0..23) for weekly quests.
* Drop time from character_queststatus_daily and use same way as weekly quest reset time store.
2010-04-07 05:48:14 +04:00
GriffonHeart
fdddf9188a [9686] Implement support weekly quests cooldowns.
Part code provided by zhenya.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-04-07 04:24:51 +04:00
tomrus88
d131f137cc Merge remote branch 'origin/master' into 330 2010-04-03 11:33:45 +04:00
Laise
7fb7c47de5 [9661] Implement dual talent specializations in talent switch part.
* Implement talent specs switch functionality.
* Only gossip part still not implemented.
* At update server to this commit or later character talents will be reset
  with some spam in logs about wrong places talents in character_spell.
  It can be ignored as part of conversion to new table support.

Thanks to all getmangos.com community members who take part
in creating and updating original dual spec patch.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-04-03 00:02:55 +04:00
tomrus88
7e8533adae Merge remote branch 'origin/master' into 330 2010-03-28 19:39:02 +04:00
hunuza
8e25d43443 [9635] Restore load/save shown action bars.
Signed-off-by: hunuza <hunuza@gmail.com>
2010-03-28 15:25:22 +02:00
tomrus88
7b1e8cae76 Merge remote branch 'origin/master' into 330 2010-03-28 04:32:10 +04:00