Commit Graph
1721 Commits
Author SHA1 Message Date
ariel- 6283cce52f Core/Player: fix build 2016-11-27 03:10:07 +01:00
Aokromes c0ba6c2dfe Core/Auras: Rewritten conditionally applying SPELL_AURA_MOD_WEAPON_CR…
…IT_PERCENT, SPELL_AURA_MOD_DAMAGE_DONE and SPELL_AURA_MOD_DAMAGE_PERCENT_DONE auras

* Now the entire aura is removed when changing equipment
* All aura types can now depend on equipped items
2016-11-27 03:09:29 +01:00
Aokromes b2c17b4881 Core/Guild: avoid data integrity problems wrapping delete+insert statements in a transaction 2016-11-27 02:41:25 +01:00
Aokromes ba8791ddcd Core/Player: recheck shapeshift bonus auras when switching spec.
- Fixes Leader of the Pack stuck when switching specs while shapeshifted
2016-11-27 01:53:19 +01:00
Aokromes 6c76eff031 Core/Unit: fix some SPELL_AURA_MOD_DAMAGE_PERCENT_DONE effects being …
…applied more than once

No more overpowered dps for you
2016-11-27 01:36:22 +01:00
Richard b66a4f8dcb [3.3.5] Core/Loot: Fix conditional Master Loot (#17943)
* Core/Loot: Fix master looting of conditional items

follow_loot_rules was a flag intended to force certain quest items to be
master looted. It should not be used for the
NonQuestNonFFAConditionalLoot.

The flag was originally introduced in 869ea349
"Core/Loot: fix the way quest items are handled. so far ive only found 3
quest items that should be able to be masterlooted. added a new flag to
item_template.flagsCustom to allow for making a quest item always follow
loot rules. a bonus may be the fix of the handlelootmasteropcode crash!"

* Core/Loot: Rename QuestItem to NotNormalItem

QuestItem struct was being used for quest items, ffa items, and
conditional items. Renaming it to avoid confusion when working with ffa
and conditional items

* Core/Loot: Use existing AddAllowedLooter rather than reaching into allowedGUIDs directly

* Core/Loot: Rename NotNormalItem to NotNormalLootItem
2016-11-04 12:26:09 +01:00
Aokromes 6d49df2635 Core/GameObject: added possibilty for gameobjects to contain money loot 2016-11-02 05:47:52 +01:00
Aokromes fa05752893 Core/Quest: Only delete all quest bound items from inventory on turn …
…in if the quest is not repeatable
2016-11-02 03:46:16 +01:00
Aokromes a81a44174b Core/Auras: don't save auras casted by items
- Drop useless field from DB (itemGuid was being saved, but never used, see Prepared Statements)
- This type of auras (like Water Bucket, Precious Ribbon, etc) will be recasted on login anyways.
2016-11-02 03:36:16 +01:00
ariel- 469870a141 Core/Player: cleanup single target auras on spec switch
Closes #806
2016-11-02 03:12:09 +01:00
Aokromes 6e191748ab Core/Conditions: merge CONDITION_SOURCE_TYPE_QUEST_SHOW_MARK with CONDITION_SOURCE_TYPE_QUEST_ACCEPT 2016-11-02 03:01:05 +01:00
Aokromes eaa2533ded another compile fix try 2016-10-24 16:44:16 +02:00
Aokromes cb052ff0f3 another compile fix try 2016-10-24 16:29:25 +02:00
SnapperRy 4f313746e0 Core/Quest: show DIALOG_STATUS_AVAILABLE instead of DIALOG_STATUS_REWARD for non-repeatable autocomplete quests. 2016-10-24 13:55:18 +02:00
SnapperRy 51c6209922 Core/Quest: send correct packet when a quest cannot be rewarded for item-related errors. 2016-10-24 13:55:04 +02:00
SnapperRy d77b366703 Core/Quest: do not set a quest to failed if it's rewarded or has no status at all (not taken). 2016-10-24 13:47:32 +02:00
SnapperRy adb3889885 Core/Item: fix wrong error message triggered when trying to equip two items with the same ItemLimitCategory. 2016-10-24 13:12:58 +02:00
Aokromes 2057e6de4a Core/Items: Defined all item flags
(cherry picked from commit ef29f32)
2016-10-24 13:01:00 +02:00
SnapperRy a6eb8d9b11 Core/Wintergrasp: cleanup and codestyle. 2016-10-22 10:53:40 +02:00
Aokromes 7315052d34 Core/Channel: revamp channel system (#17980)
* Core/Channel: change the way channels are stored and sent to client.

- Fixes multiple channels per zone when using different locales
- Connected clients will receive locally the name of the channel for their apropiate locale (if available)
- In other cases default locale name will be sent, so as to prevent breaking channel chat for those players
2016-10-22 10:21:18 +02:00
Aokromes 57d0a5d16d Revert "Core/Spells: Implementation of QAston proc system"
This reverts commit a70e4e26b3.
2016-10-21 07:27:04 +02:00
Aokromes a70e4e26b3 Core/Spells: Implementation of QAston proc system
- Move checks from Unit::IsTriggeredAtSpellProcEvent (old system) to Aura::IsProcTriggeredOnEvent (new system)
- Templatize SpellModOp param of Player::ApplySpellMod, also killed charge counter from SpellModifier and Player system for handling charges... no point in having 3 different systems doing the same thing
- Automatically add default entries to spellProcMap, based on spellinfo (else auras won't proc without an entry) Based on old Unit::ProcDamageAndSpellFor
- Old Unit::ProcDamageAndSpellFor renamed to Unit::ProcSkillsAndReactives and made private, will no longer handle auras.
- Start making use of HealInfo::AbsorbHeal in unit calculations, add effective healing info to HealInfo struct
- Changes in spell reflection system, emulates old behaviour, delaying aura drop
- Removed old charge count hacks in SpellMgr::LoadSpellInfoCorrections
- Removed bogus error log when procChance is 0: Some auras have initial 0 procChance but modified by SPELLMOD_CHANCE_OF_SUCCESS
- Fixed TriggerAurasProcOnEvent logic that tried to trigger twice from actor.
- Allow non damaging spells with DamageClass Melee or Ranged to proc character enchants. Ref issue #17034:

  * http://web.archive.org/web/20110309092008/http://elitistjerks.com/f47/t49865-paladin_retribution_pve/
  * When an auto-attack lands (does not dodge/parry/miss) that can proc a seal the of the following things happen independently of each other (see 2 roll system).

  * 1) A "hidden strike" which uses melee combat mechanics occurs. If it lands it refreshes/stacks SoV DoT. Only white swings can trigger a refresh or stack. (This hidden strike mechanic can also proc things like berserking..)
  * 2) A weapon damage based proc will occur if you used a special (CS/DS/judge) or if you have a 5 stack (from auto attacks). This attack can not be avoided.

  * Holy Vengeance is the "hidden strike" it has an apply aura effect and damage class melee.
- Fixed Blood Tap interaction with Death Runes (btw, don't know what was going on with those MiscValueB, spell 45529 doesn't have any MiscValueB in SPELL_EFFECT_ACTIVATE_RUNE)
- Ported some AuraEffect checks from old Unit.cpp function. added new AuraScript hook to check procs of an specific effect
- Allow only AuraEffects that passed the check to proc, this won't block whole aura from proccing (and lose charges) if at least one of the effects procs, though
- Changes in spell mod system (for SPELLMOD_CASTING_TIME). fixes #17558.
- Added an exception for SPELLMOD_CRITICAL_CHANCE too, fixes #15193
2016-10-05 13:19:51 +02:00
SnapperRy 828026bede Core/Quest: send INVALIDREASON_QUEST_ALREADY_DONE if player tries to accept a quest that is already rewarded. 2016-10-04 06:35:17 +02:00
ariel- 6ee820afe4 Core/Player: correct logic for IsUsingTwoHandedWeaponInOneHand
Fixes penalty not being applied when we are using a 2H in offhand, and a unarmed MH.
MH may do unarmed attacks in this case. (reciprocal of 2H MH, unarmed OH, only uses MH normally, OH doesn't unarmed attack)
2016-10-03 14:57:51 +02:00
Aokromes 576cfa8328 Core/Player: unconditionally remove Titan's grip penalty aura on Spel…
…l removal

Was causing an issue when switching spec, because off hand weapon was still equipped
2016-10-03 14:53:39 +02:00
Aokromes d9ae70396b Core/Player: Implemented Titan's Grip damage reduction 2016-10-03 14:51:20 +02:00
joschiwald de1322f134 Core/Player: fixed math error
(cherry picked from commit cc1e2fd452e83281a6fe4c60ed1ee277a0e7a16d)
2016-10-03 14:42:19 +02:00
SnapperRy 83dafd5886 Core/Spell: set quest to rewarded instead of complete when targeted by SPELL_EFFECT_QUEST_COMPLETE. (#18021)
Prevents people from ending up with strange quests in their quest logs.
2016-10-01 16:47:49 +02:00
SnapperRy 7dff45e2af Core/Gossip: improve gossips related to Dual Talent Specialization 2016-09-24 07:01:49 +02:00
Aokromes 9182a19aa5 Core/Fishing: implement retail-like fishing skill-up functionality 2016-09-14 15:13:04 +02:00
Rochet2 19ed813f6b Core/Scripts: Enhance quest status hook by making it catch more status changes (#17865) 2016-09-10 14:25:57 +02:00
Aokromes df2c6972c4 Whitespace clean-up 2016-08-29 01:20:31 +02:00
Ryan e344fc9cbf Core/Instance: Fix GetInstanceSave sometimes checking the wrong map (#17856) 2016-08-26 00:01:40 +02:00
ariel- f404226fb1 Channel Followup: avoid setting an invisible gm as Channel owner (#17597)
* Core/Chat: avoid setting an invisible gm (as in .gm visible off) as channel owner, giving it away to other players.

- This can now only happen if the channel is empty or every other member is an invisible gm, too.

Fixes #17424

* Feedback based changes
2016-08-25 15:00:55 +02:00
ariel- 716ad14257 Core/Entities: fix a crash that would happen whenever a player logged back in to an ended arena battle. Thanks Nawuko for the input
Closes #17825
2016-08-21 13:15:52 +02:00
SnapperRy c2f65d822b Core/SpellArea: only check against spell_area entries for the current quest when updating quest status
Closes #17804
2016-08-20 18:26:31 +02:00
Aokromes 8d12a82f5b Core/Player: readd player to battleground after a login (but only after adding it to map, preventing a crash). 2016-08-20 06:18:56 +02:00
treeston 77e4a1e487 Revert "Creature/Loot: Fix a bug that prevented players from looting creatures that only had gold on them (no items)."
This reverts commit 63f577a7ef4df2d6ebf90fc137c3cb8902b29d0a.

See discussion in commit comments.
2016-08-16 23:34:40 +02:00
treeston 0ffd02f540 Creature/Loot: Fix a bug that prevented players from looting creatures that only had gold on them (no items). 2016-08-16 15:35:01 +02:00
ariel- b92ba1e11d Core/Player: Do not kick AFK player from BG if it's a GM 2016-08-16 12:26:54 +02:00
Aokromes 34c249458f Fix compile after coding style 2016-08-14 21:04:15 +02:00
Aokromes 6443c02225 Compile fix 2016-08-14 20:26:57 +02:00
PORTELAS Michael 6f22ed66c3 Update Player.cpp 2016-08-14 18:04:41 +00:00
PORTELAS Michael 41fbfa3b14 Update Player.cpp 2016-08-14 17:05:08 +00:00
treeston 1fc6f18024 Entities/Player: Fixed an edge case bug that could cause a character to get stuck in forced recustomization indefinitely if two or more appearance properties were out of bounds. 2016-08-14 10:16:32 +02:00
Aokromes 0852050e68 Core/Logs: Fine tune more logs
And move others to more logical appenders
2016-08-12 12:18:19 +02:00
Aokromes 6a9c753029 Build fix, this time yes 2016-08-12 07:51:26 +02:00
Aokromes 7ab4915b13 compile fix 2016-08-11 05:05:33 +02:00
Aokromes 64a693a4ae Core/Chat: general cleanup and revamping: (#17576)
- Remove duplicate ObjectGuid in Channel (both as key and value member)
- Add const-ness to Channel methods
- NULL->nullptr
- const type* -> type const*
- Removed all instances of std::map::operator[] except where it is actually INTENDED to insert an element
- Use Trinity::StringFormat instead of snprintf
2016-08-11 03:56:10 +02:00
Aokromes e51220bf87 Core/Handlers: actually check allowed trainer classes and races to avoid spoofing 2016-08-10 21:04:30 +02:00