Commit graph

555 commits

Author SHA1 Message Date
VladimirMangos
5e2553ff7e [7239] Support multiply items loot and not normal loot items in Player::AutoStoreLoot.
Use this function in more cases and simplify and fix some related code.
2009-02-07 10:34:11 +03:00
VladimirMangos
7d63f4ce02 Fixes and cleanups in loot code.
* Move not-normal loot tables generation in single place (Loot::FillLoot function) for group and non group case.
* Simplify LootView code.
2009-02-07 10:34:02 +03:00
VladimirMangos
7dffae89da [7236] Prevent lost spells dependent from skills learned before non-dependent spell loading from DB.
For example spell 2764 will correctly show in spellbook after re-login.
2009-02-07 02:47:57 +03:00
VladimirMangos
cb0ebde926 [7234] Now correct patch version: Use spell_loot_table for item creating in case SPELL_EFFECT_CREATE_ITEM_2 (157) and itemType==0 2009-02-06 07:57:45 +03:00
VladimirMangos
c98726ea3c Fixed pahse seelction for gameobject/creature spawn for GM-mode without phase auras. 2009-02-06 06:01:47 +03:00
VladimirMangos
f94377622e Use spell_loot_table for item creating in case SPELL_EFFECT_CREATE_ITEM_2 (157) and itemType==0 2009-02-06 06:00:01 +03:00
nugu100
160777848a [7228] Implement empty bag swap with equipped non-empty bag with items exchange.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

More early checks and proper swap bank bags in patch.
Correct error messages in fail case.
2009-02-05 00:36:27 +03:00
VladimirMangos
fdd8176d74 [7227] Implement prismatic sockets. Related code cleanups.
Big thanks to TOM_RUS for help in reseach!
2009-02-04 02:09:46 +03:00
VladimirMangos
2c7216ac8c [7226] Avoid 2 mQuestStatus[quest_id] calls from AddQuest code for speed and possible aliasing problems.
Original patch provided by zhenya.
2009-02-03 02:19:40 +03:00
DiSlord
14a50bfce9 Add custom chance for some spells in 16180 and ranks (added in 308)
Show enchant id in error log

Signed-off-by: DiSlord <dislord@nomail.com>
2009-01-31 19:41:42 +03:00
VladimirMangos
aa24bd836e [7207] Phase system development continue for DB/in_game objects
* Store phase mask for creatures/gameobjects/corpse in DB
* Propertly set phase for summoned creatures/gameobjects/pets/corpses/spell related dynobjects
* Select proper phase for spawned creature/gameobjects and save it in DB

TODO: in game commands.
2009-01-31 06:11:50 +03:00
VladimirMangos
b5da610388 Phase system development continue.
* Use WorldObject phase mask field instead explicit aura scan. This allow have phase for any world objects.
* Add phase checks to packet broadcasters/object searchers. This let correctly work say/yell/area
  and multi/random target spells/aggro assistance in phased areas or target selection.
* In GM-mode character presense (see and visible) in all phases except normal visibility efects including GM-visibility.

TODO: summoned objects phase set base at owner phase, load phase mask for creatures/gameobjects from DB, in game commands.
2009-01-31 06:06:01 +03:00
VladimirMangos
a1b5c3cb02 Cleanup code for UNIT_FIELD_BYTES_1 parts.
Move defines to Unit (values can be used with creatures)
Better gameobject barber chairs check at loading.
2009-01-31 05:55:10 +03:00
VladimirMangos
430c634fd3 [7195] Implement SPELL_AURA_PHASE (261) and basics of phases system work (for player/creatures/pets only) 2009-01-27 19:17:52 +03:00
ApoC
b27fbe8e4e [7192] Fixed glyph opening order for lvl 30 and 50.
Signed-off-by: ApoC <apoc@nymfe.net>
2009-01-27 13:42:37 +01:00
VladimirMangos
8292567376 [7191] Some command related fixes.
* Allow use spell shift-link in .aura and .unaura commands
* Drop commented code and update .reset level command for support DK case.
  Also command for other classes will reset leve not to 1 but to config starting level value
2009-01-27 03:31:57 +03:00
VladimirMangos
be64293da3 [7182] Finally remove vanity pet slots related code. Vanity pets stored as learned spells. 2009-01-25 21:59:41 +03:00
ApoC
5aa204958c [7179] Fixed build at Unix/Linux. 2009-01-25 20:29:56 +03:00
VladimirMangos
d8355f27f5 [7178] Fixed character save fail at spell save in special case.
Case description: Spell save fail at attempt save into `character_spell` "new" spell loaded from DB
with exactly same settings after it learned from spell cast triggered by loading another spell from DB.
Reapeatable for shamans with known talent 16268.

Also speedup code with remove redundent Player::_removeSpell function.
2009-01-25 19:40:03 +03:00
Gorlum13
4e72f3bb33 [7174] Implement new option GM.Visible for set original GM visibility state at login.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-25 16:26:32 +03:00
VladimirMangos
939ef7612d [7173] Some fixes for resent spell learn/unlearn system changes.
* Fixed profession unlearn using skill unlearn button in skill list
* Update action bar to spell low rank at unlearn spell only for .unlearn command.
  This will avoid show unexpected "Learned spell" chat message for low rank at unlearing
  high rank and at all ranks unlearning.
2009-01-25 16:26:10 +03:00
GriffonHeart
1f54ffd398 [7172] Implement area requirements for spell 54119.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-25 10:44:31 +03:00
VladimirMangos
521c8bc31b [7170] Implement special default skill levels for created DK character. 2009-01-25 10:02:15 +03:00
VladimirMangos
4dc06d6d9e [7168] Spell shift-link and command improvements.
* Support Htrade shift link (it created by client at click by crafting profession spell icon in spellbook)
  in spell comands.
* Support "all" second arg for .learn for learning not provided spell id but it's all ranks.
* Drop support range for .unlearn command but support instead "all" second arg for unlearn not specific spell id but it's all ranks.
* In .list auras output print spell names as shift links for better readable view.
* Add to beggining Chat.cpp lists all supported by commands shift-links (client generated and server-side)
2009-01-25 07:53:18 +03:00
VladimirMangos
df13468ee1 [7165] More strict checking for client casted spells.
Allow explictly cast character spell from client only if it non-passive and show in spellbook/etc base at server data.
2009-01-25 00:13:33 +03:00
ApoC
302dc70eab [7162] Converted some uint16 spellid parameteres to uint32. It can provide little speedup.
Signed-off-by: ApoC <apoc@nymfe.net>
2009-01-24 18:42:14 +01:00
yad02
94d064be6f [7160] Implement (un-)learning skill level dependent spells at skill level change.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

Some related cleanups using new functionality.
2009-01-24 12:43:42 +03:00
VladimirMangos
bbf8fd0742 Not store dependent spells in character_spell
* Mark spells learned in result character creating, another spell learning, skill grow,
  quest reward as dependent and not store its in `character_spell`.
* Prevent re-learning known spell in expected state
* Prevent re-learning low rank spell as active if higher rank known.
* New type of non-stacked ranked spells check: skill dependent spell bonuses.
* Activate (show propetly and cast if need) lesser spell rank
  for non-stackable in spellbooks spells at unlearn high rank
2009-01-24 12:03:43 +03:00
GriffonHeart
25b120877e [7154] Move allow player fly check to function.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-23 15:57:23 +03:00
freghar
11ed0e99a8 [7146] Trailing whitespace code cleanup
Signed-off-by: freghar <compmancz@gmail.com>
2009-01-22 18:10:16 +01:00
GriffonHeart
17916d3dc8 [7144] Implement DK specific way for talent points calculation.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-22 06:35:10 +03:00
Energy
f26d6151c8 [7141] Implement heroic raid instance mode support.
* Heroic mode player amount for instances in DB. Can be used for any instances but added for heroic raid instance.
* Output transfer error at max playrs limit.
* FIXME notes ;) for raid required implementing store 2 reset time and do global reset for 2 modes. But currently raid have inmmap entry data
same reset time for both cases.
* Update instances list where mounts allowed.
* Simplify and fix code for SMSG_RAID_INSTANCE_INFO.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-22 03:27:59 +03:00
Butch3r
3adbf3e00f [7138] Prevent spam aura add in logs. Output only in detail mode.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-22 00:14:32 +03:00
VladimirMangos
6bc449d053 [7136] Check mount existance at loading not completed taxi path at login. 2009-01-21 19:41:26 +03:00
VladimirMangos
2b91a790bc [7133] Re-implement explicit spell discovery code.
* Replace reqClass by reqSkillVlaue field in `skill_discovery_template`
  and check expected skill points amount for specific reipe discovery.
* Add new `spell_loot_template` loot table for store item selection data for spells.
  At this moment for expclicit recipes discovery spells.
* Code cleanups.
2009-01-21 06:39:54 +03:00
VladimirMangos
9e590f7ceb [7114] Code cleanups.
Remove redundant `inline` for in-class function definitions.
Fixed float -> int implicit casts.
2009-01-19 15:13:57 +03:00
ApoC
be051a706c [7112] Fixed glyphs apply on character load.
Signed-off-by: ApoC <apoc@nymfe.net>
2009-01-19 02:10:06 +01:00
VladimirMangos
64073f65c0 [7107] Output skill points (current, max, perm/temp bonus) for known skill in .lookup skill. 2009-01-18 22:18:13 +03:00
McBen
1d80a7a788 [7102] Fixed .showarea/,hodearea commands.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-18 05:07:39 +03:00
DiSlord
4add3d2128 [7099] Implement some item/enchants mods from 303:
ITEM_MOD_ATTACK_POWER
 ITEM_MOD_RANGED_ATTACK_POWER
 ITEM_MOD_FERAL_ATTACK_POWER
 ITEM_MOD_SPELL_HEALING_DONE
 ITEM_MOD_SPELL_DAMAGE_DONE
 ITEM_MOD_MANA_REGENERATION
 ITEM_MOD_SPELL_POWER

Signed-off-by: DiSlord <dislord@nomail.com>
2009-01-18 01:34:50 +03:00
VladimirMangos
a1e0900d37 [7093] Speedup spell learning code. 2009-01-17 00:23:48 +03:00
DiSlord
014ab283dd [7092] Work vs XP per level data
Add new table "player_xp_for_level" for this
Fill table data 1-79 level
Remove old code

Signed-off-by: DiSlord <dislord@nomail.com>
2009-01-16 01:00:41 +03:00
DiSlord
7cd3fa8680 Rename some UnitFlags
Signed-off-by: DiSlord <dislord@nomail.com>
2009-01-15 19:55:26 +03:00
VladimirMangos
633cad5a56 [7089] Implement ITEM_ENCHANTMENT_TYPE_USE_SPELL support.
This allow cast spells at item used from engineering recipes 54999, 54736, 54998, 55002, 55016, 54793.
2009-01-15 03:08:45 +03:00
arrai
b19c0da601 [7088] Cleaned up Player::m_isunderwater, fixed a bug which caused SPELL_AURA_WATER_BREATHING to prevent lava damage 2009-01-15 00:42:12 +01:00
arrai
022e7ad2b5 Removed Unit::waterbreath. This information is not needed for creatures and can be obtained for players by Unit::HasAuraType(SPELL_AURA_WATER_BREATHING) in constant time 2009-01-15 00:17:02 +01:00
VladimirMangos
950df723d7 [7083] Implement support for cast-spells in trainer lists for riding also. 2009-01-14 02:41:19 +03:00
VladimirMangos
5b50e2f9e8 [7077] Implement support castable trainer spells for profession ranks. 2009-01-13 21:09:43 +03:00
VladimirMangos
16dc210e24 [7072] Fixed typo in prev commit. :/ 2009-01-12 02:02:55 +03:00
VladimirMangos
76f7a25f2d [7071] Fixed recent problem with pacified aura for druids with flight forms. Cleanups code. 2009-01-12 01:50:03 +03:00