Commit graph

569 commits

Author SHA1 Message Date
VladimirMangos
7974e1ebcb Merge branch 'master' into 320 2009-09-10 05:46:08 +04:00
ApoC
71e736abc6 [8478] Removed dependency on getMSTime() for last mana use.
Signed-off-by: ApoC <apoc@nymfe.net>
2009-09-06 01:40:22 +02:00
Trazom
dffa5d43bd [8477] Implemented "on demand" regeneration of power in Spell::CheckPower (limited to 500ms frequency).
Correctly set UNIT_FLAG2_REGENERATE_POWER to notify client to stop/start regen in bar.
thx. also for nos4r2zod

From original patch was removed usage of getMSTime() and rewrited this part.

Signed-off-by: ApoC <apoc@nymfe.net>
2009-09-06 01:39:13 +02:00
balrok
bd30769dec [8475] fixed some gcc-warnings
all warnings from Wunused
and some from Wall

cause unused may be most interesting for some:
they were in following files:
src/game/Level2.cpp
src/game/Map.cpp
src/game/SpellAuras.cpp
src/game/Unit.cpp
src/mangosd/Master.cpp
but i guess mostly someone just fogot to remove this code

for some unsigned vs signed warnings i used:
ack "for.*int .*size\(\)" | ack -v uint

also note for coding:
if you do something like
    if( a && b || c)
just place parentheses around (a && b) && always will have
precedence over || but without parentheses this could be overseen
quite fast (at least that's my guess why gcc will warn for this)

Signed-off-by: balrok <der-coole-carl@gmx.net>
2009-09-05 13:47:47 +02: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
AlexDereka
a65d3a1560 [8467] Fixed some typos. 2009-09-04 18:52:17 +04:00
sixsixnine
63e7c092f1 [8458] Re-implement SPELL_AURA_MOD_TARGET_ARMOR_PCT in more porper way for weapon dependent cases.
(cherry picked from commit 7efab7fd38c3a753e967648ca8ef1f2cdfbac76c)

Signed-off-by: VladimirMangos <vladimir@getmangos.com>

With some fixes and rewrites.
2009-09-04 02:16:17 +04:00
VladimirMangos
c8b717ab7d [8449] Deprecate healing/damage item mods and merge internal data in to spell power.
* Report at loading about deprecated ITEM_MOD_SPELL_HEALING_DONE and ITEM_MOD_SPELL_DAMAGE_DONE
  and drop support code.
* Merge healing/damage base spell bonus fields and function to spell power field/function.
2009-09-01 22:45:56 +04:00
Opterman
eec534f1f6 [8446] Update ACHIEVEMENT_CRITERIA_TYPE_FALL_WITHOUT_DYING only for real alive cases.
This fix problem with temporary "alive" cases for prist talent for example.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>

* Use final damage for check
* Also fix CMSG_REPOP_REQUEST read warning spam.
2009-09-01 15:55:09 +04: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
828c91a808 More misc fixes. 2009-08-29 02:45:37 +04:00
tomrus88
2015f21fa8 Even more fixes. 2009-08-29 00:50:34 +04:00
tomrus88
fdc20af337 Some fixes. 2009-08-28 22:33:52 +04:00
tomrus88
2d65ce8b87 Merge commit 'origin/master' into 320 2009-08-28 17:26:09 +04:00
VladimirMangos
e79a92cd3b [8431] Avoid unlearn class skills at unlearn spell learned at skill learn. 2009-08-28 11:39:40 +04:00
VladimirMangos
5d50bb16b8 [8426] Use upper/lower iterator pairs as result instead 2 function calls. 2009-08-27 10:56:20 +04:00
tomrus88
3882772658 Merge commit 'origin/master' into 320
Conflicts:
	src/game/Player.cpp
2009-08-27 01:54:04 +04:00
VladimirMangos
45dd7140b5 [8422] Implement far sight like spells work for long distance.
* Added basic infrastructure for visibility update in case difference player and current view point.
  Just for note: seletect additional arg way beacuse repeatable search object will slow but store pointer will not safe,
  so use middle case: get view point pointer early as possible at visibility updates.
* Implement dynamic object and creature activisation while it's target of far sight spell effect
* Use this for SPELL_AURA_BIND_SIGHT, SPELL_AURA_FAR_SIGHT and SPELL_EFFECT_ADD_FARSIGHT.
* Note2: some spyglass like spells let look _around_ at long distance, this hard implement in current grid loading system
  Without additional changes and not implemented (you will see empty area without creatures in likes case)

* Also fixed warning spam at CMSG_MOVE_SET_CAN_FLY_ACK receive by use proper packet sructure reading.
2009-08-26 08:30:40 +04:00
VladimirMangos
208c84556e [8416] Fixed problem with double cast form passives at loading.
* Drop learning form passives at form psell learning, and cast it explictly from code in all cases.
* Drop cast form passives at learning.
* Note: talents that have dependent form time passives still work in original way: learned and casted at learn if need.
* Drop hack for spell 24907 casting at form apply: it casted fines as result normal triggered effect in related form spell.

Original patch provided by nos4r2zod.
2009-08-25 08:45:49 +04:00
tomrus88
33149b8f04 Merge commit 'origin/master' into 320 2009-08-24 00:58:11 +04:00
Triply
efa24ced49 [8409] Fixed guild creation date loading, and added another guild loading optimization - last one.
Signed-off-by: Triply <triply@getmangos.com>
2009-08-23 18:13:09 +02:00
tomrus88
935c0a44c2 Merge commit 'origin/master' into 320 2009-08-23 18:57:07 +04:00
Triply
38fa6b241c [8402] Optimalized guild_eventlog and guild_bank_eventlog loading from database.
Added config options to set count of eventlog records stored in DB.
Attached SQL files will DROP existing and create new tables. Make sure you create backup (if you need old data).
Renamed few variables in Guild class.
Signed-off-by: Triply <triply@getmangos.com>
2009-08-21 09:42:21 +02:00
tomrus88
373a837aa5 Merge commit 'origin/master' into 320 2009-08-18 09:30:02 +04:00
VladimirMangos
74d27294aa [8381] Some refactoring work in Unit::m_currentSpells code.
* Restrict access, use enum args, move some repeated code parts to function.
* Make m_selfContainer set only part of Unit::SetCurrentCastedSpell
2009-08-18 02:12:56 +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
ApoC
a7564128bb [8373] Correctly set bgInstanceID to 0 when log in into alredy ended BG.
This should fix problem that players who logged off during BG are after every
next login into game teleported to BG entry position.

Signed-off-by: ApoC <apoc@nymfe.net>
2009-08-15 22:35:31 +02:00
tomrus88
48a470dfc1 Merge commit 'origin/master' into 320 2009-08-15 10:16:27 +04:00
NoFantasy
88cf55928c [8355] Implement QUEST_STATUS_FAILED and simplify related code.
Use FailQuest for all quests that can fail and remove no longer needed function FailedTimedQuest.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2009-08-12 13:08:47 +02:00
VladimirMangos
93ed08e886 [8343] Extand level allowed range for item use to upper values if it end at max player level.
Also add DEFAULT_MAX_LEVEL define for store current used client expection about max player level.
For example for current supported this is 80.
2009-08-10 14:22:50 +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
d24461e300 Merge commit 'origin/master' into 320 2009-08-07 23:48:00 +04:00
XTZGZoReX
ba170f92f2 [8316] Remove duplicate player stat output.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-08-05 16:22:42 +04:00
tomrus88
f97da77cbd Merge commit 'origin/master' into 320 2009-08-05 14:52:29 +04:00
VladimirMangos
3c47e6117a [8308] More generic code for new continent spell casting including fly form/mounts.
* Check new continent requirement by SPELL_ATTR_EX4_CAST_ONLY_IN_OUTLAND in
  SpellMgr::GetSpellAllowedInLocationError.
* Also in this function let ignore any area requirement in GM-mode (except client side checks ofc if use spellbook/item)
* For fly form/mount auras check only speciaal reqirement like special fly skill and ignore it for dead state.
* Drop explicit fly auras drop at zone update, now this part GetSpellAllowedInLocationError functionality.
* Allow in `spell_area` have data deepndent from ghost auras

This all allow implement apply spells 55173/55164 to player ghost wiht DB support in `spell_area`
2009-08-04 23:43:35 +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
VladimirMangos
359229100e [8303] Allow save and restore at login forms/stances.
Small changes also to prevent visual "fall" flight form for viewer at login,
and another changes to prevent recasting default warrior stance.
This also resolve bug with not removing some form bonuses at lost form at re-login.
2009-08-04 02:06:30 +04:00
VladimirMangos
8f08d03a14 [8302] Drop now not used Player::MinimalLoadFromDB 2009-08-04 00:14:19 +04:00
VladimirMangos
27e12424e5 [8299] Move zone update form SendInitialPacketsBeforeAddToMap to SendInitialPacketsAfterAddToMap.
This must retore correct apply zone dependent auras at far teleport and login.
Also must be restored chat channels update at far teleport.
2009-08-03 03:01:30 +04:00
Necro
4841fae910 [8294] Some playercreateinfo_action fixes. Also DK food initial amount fix in code.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-08-02 09:44:48 +04:00
tomrus88
b99565ef42 Merge commit 'origin/master' into 320 2009-08-01 09:22:30 +04:00
VladimirMangos
47f96447b8 [8284] Use BuyCound instead Stackable for seelction original items amount for new character. 2009-07-31 18:04:29 +04:00
tomrus88
be8eaf4e46 Just merge commit 'origin/master' into 320
Conflicts:
	src/game/MiscHandler.cpp
2009-07-28 17:05:38 +04:00
Ambal
64f11bedf7 [8252] Move DB scripting code from global World to Map.
This one more step to pre-map events proccesing and parallel in future.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-07-26 12:20:59 +04:00
tomrus88
299f40ac0c Merge commit 'origin/master' into 320 2009-07-26 10:52:21 +04:00
VladimirMangos
7ac4dc6f13 [8251] Store in some DB tables only data for first rank.
* Allow add to DB data only for first rank in table `mangos_spell_bonus_data` and `mangos_spell_proc_event`.
* Copy data for other ranks for speedup use at loading for this data and data from `spell_proc_item_enchant`.
2009-07-26 10:46:36 +04:00
nos4r2zod
13b709a10b [8249] Implement support spell_proc_item_enchant table for ppm item enchantments triggering at hit.
* Added a new SQL table, spell_proc_item_enchant, for "custom" ppmRates on Item Enchants that do not use auras.
  With table data this must fix ppm for effect from 8033 and ranks enchanting, and item 6947/10918 and ranks enchanting.

* Implemented SPELLMOD_FREQUENCY_OF_SUCCESS (26).
  That must fix work talent 14113, spell 32645 with ranks, glyph 41094 and item set effect 64917 in frequency part.

Thanks to MaS0n as author alternative patch that partly used in this patch.
Thanks to Thenecromancer as author alternative patch that ideas inspire MaS0n's patch writing and then this patch also.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-07-26 04:58:46 +04:00