Commit graph

1186 commits

Author SHA1 Message Date
SilverIce
70a6a1ce76 [11825] Implement creature offhand attack. based on patch from maxxx2021
also drop some archaic Unit's code
2011-10-16 00:01:06 +03:00
PSZ
1606bb2e45 [11822] Add more functionality to CONDITION_QUESTTAKEN
Add options 1/ 2 in second argument to check if a quest is INCOMPLETE/ COMPLETE, default will behave like currently

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2011-10-14 18:05:30 +02:00
SilverIce
df0715284f [11819] move SetActiveObjectState to WorldObject level 2011-10-13 20:08:49 +03:00
stfx
5b0c0c9fa4 [11814] Use the same variable to store the message for AFK and DND
Also make code in this area easier to read

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2011-10-07 17:22:27 +02:00
stfx
e89d5db5e3 [11813] Receiving whispers while being dnd
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2011-10-07 14:26:42 +02:00
Vinolentus
a9e435c078 [11797] Do not remove item on unrelated auraholder remove
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2011-09-18 02:17:20 +02:00
Vinolentus
3c073c283f [11789] Remove ApplySpellMod body from header. We can explicitly instantiate possible variants.
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2011-09-05 21:01:04 +02:00
Vinolentus
dc932024ab [11784] Fix restoring of phase mask when turning gm off
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
2011-09-04 02:24:03 +02:00
Laise
68eb5f118c [11767] fix spell mod sending 2 2011-08-05 08:53:22 +03:00
VladimirMangos
0220101f7e [11759] Fixed money reward for max level and repeatable quests
* Remove excluding normal repeatable quests not first cases for money/xp
   rewards. This is not confirmed functionality and possible related wrong
   repeating flag set for "first" repeating quest versions. Whern exist
   normal quest and second repeating quest with same details.
 * At max level positive RewOrReqMoney already included in RewMoneyMaxLevel
   and then not need rewarded\
 * When RewOrReqMoney > RewMoneyMaxLevel then RewMoneyMaxLevel values
   ignored and always used RewOrReqMoney as money reward.

Thanks to Lynx3d for original problem research.
2011-07-28 18:49:56 +04:00
Laise
ab062be208 [11752] fix spell mod sending 2011-07-25 07:23:44 +03:00
Laise
e178c79d51 [11748] Replace SpellModifier struct by direct aura access (this should fix charge drops of 36032) also revert [11740] 2011-07-20 15:41:39 +03:00
VladimirMangos
3e0cacbdaf [11743] Fixed auction crash in case missing localization for only some items
Source crash in missing locale strings array size check before access
to it in locale structure.

Also move repeating code for access to wide used localization string arrays to ObjectMgr functions.
2011-07-19 02:34:16 +04:00
rowman
222612fa51 [11740] Restore spellmod charges used by fail spell cast
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

Also

 * Prevent more one charge use for same spell cast
 * Cleanup enum SpellState from unused cases
 * Propertly remove spellmod charges at spell finish in case pet/totem caster
2011-07-16 10:14:03 +04:00
Laise
0254ad6bf9 [11738] make armor bonuses from certain items be unaffected by base armor mods 2011-07-14 12:13:13 +03:00
SilverIce
94133107c7 [11727] Interrupt spline movement at teleporting
this fixes the position desync issue caused by teleport packets
2011-07-09 19:23:53 +03:00
SilverIce
9d566398ad [11720] Implement spline movement subsystem
Spline movement controls movements of server-side controlled units (monster movement, taxi movement, etc).
Proper implementation of effects such as charge, jump, cyclic movement will rely on it.
However, need improve our states system before.

Technical changes:

 1. Added linear, catmullrom and bezier3 splines which based on client's algorthims. They can be reused for proper transport position interpolation.
 2. Precission increased. There are no more position desync issues since client's position calculation formulas used.
 3. Now possible to move by paths with multiple points, send whole path to client.
2011-07-08 17:25:13 +03:00
VladimirMangos
f4be64ff48 [11715] Remove World::setConfigPos for uint32 and move check to all uint32 config values.
As part changes move to int32 list as expected by values:
 * CONFIG_INT32_QUEST_HIGH_LEVEL_HIDE_DIFF
 * CONFIG_INT32_QUEST_LOW_LEVEL_HIDE_DIFF

Please report if mangosd will report unexpected error (< 0) for some signed config option.
I check manually but maybe miss some...

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-07-07 03:47:34 +04:00
VladimirMangos
cc11366d6b [11702] Alsways attempt generate randomProperty for item in at create if value not pre-selected.
This resolve all existed cases when we miss assign random property id.

Also move random property/suffix check from item creating to server load time.
2011-06-30 19:19:02 +04:00
VladimirMangos
04a469f393 [11670] Implement in proper way ITEM_SPELLTRIGGER_ON_STORE (5)
Item spells with this trigger mode expected casted at item add
to inventory/equip slots (exclude bank), and spell auras (if any)
applied while item in like slots. Item expected destroyed at aura
remove by some reason.

Implementation note: because 2 step way item moves from slot to slot
related auras not removed at internal RemoveItem call and removed only
at directly item destroy/remove from player function calles, or at StoreItem
(if item added to not appropriate slot). So need in future careful with new
RemoveItem call cases.
2011-06-24 22:55:58 +04:00
VladimirMangos
3bea0ec357 [11657] Daily/weekly quests must still reward expirience/max level money at repeating. 2011-06-19 22:11:45 +04:00
mumion
328a62f18f [11656] For not first repeating quest avoid reward money as xp replacement.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-06-19 21:51:32 +04:00
VladimirMangos
45292a9d56 [11650] Group members see same group member ghosts.
Also drop battleground case that just same check in fact.

Original patch and research provided by Den.
2011-06-19 04:00:51 +04:00
Den
f1fcefce4f [11648] Breath/fatigue/fire damage timers tick each 2 sec. 2011-06-19 02:46:09 +04:00
cmaranec
2d7768a5ab [11646] Implement support item converting at expire
Example: items 44623->44625->44627 convertion chain

* New table `item_enchantment_template` store original->final item pairs
  Original item must have duration setup.
* Small change in GetItemConvert for consistence (now 0 returned if no convert pair instead original entry id)

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-06-18 21:15:20 +04:00
VladimirMangos
a97370a7f0 [11645] Fixed work EffectSummonChangeItem, for example, for item. 17223
Also
* Move item comvert code from spell effect to new function.
* Some code style cleanups.
2011-06-18 21:09:42 +04:00
SeTM
9300842b04 [11643] Restore skill/level checks at traning non-prof spells.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-06-18 17:11:11 +04:00
VladimirMangos
74e7d5ddcd [11642] Fixed some added in prev commit warnings. 2011-06-18 06:07:55 +04:00
VladimirMangos
4bedd22a3f [11640] Implement TradeSkill.GMIgnore.* config options
Options let set GM level that allow ignore at training level/skill/maxprofs
Mostly for allow avoid use commands when need learn prof ranks.
2011-06-18 04:06:44 +04:00
zergtmn
75c4578be8 [11636] Add two missing initial world states 2011-06-17 23:29:03 +06:00
zergtmn
54f623d2b8 [11632] Revert part of 11631 2011-06-17 16:27:06 +06:00
zergtmn
10865b633f [11631] Fix wrong overriding aura stack amount and proc charges at loading
Need to consider spell mods, partial dispels and etc...
2011-06-17 16:14:38 +06:00
VladimirMangos
6190894330 [11627] Restore spelmods apply after ClassFamilyMask commit. 2011-06-12 21:09:40 +04:00
VladimirMangos
c686697c2d [11623] Implement ClassFamilyMask as wrapper for uint64+uint32 spell family masks
Inspired by patch suggested by darkstalker

Also
* Remove existed enums for family masks as contra-productive for developement.
* Drop one from horrible hack checks in SpellMgr::IsNoStackSpellDueToSpell
  (spells for any fimilies with exactly 0x800 mask) I fail find useful cases
  for current spell data with this check. All cases expected work correct without it.
  If will some problems detected with this please report for fix in less strange way.
2011-06-11 21:20:42 +04:00
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
Feanordev
c11a2b68b7 [11614] Totem/Relic/Sigil etc swapping should tirgger GCD
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-06-06 15:12:55 +04:00
VladimirMangos
44d168d4a3 [11608] Check correct map for enter at far teleport
Not fatal porblem, but let correctly work check for avoid teleport back at teleport fail.
2011-06-05 21:46:07 +04:00
VladimirMangos
108a167c46 [11587] Use SkillRaceClassInfo.dbc data for check spell training.
* Show race/class specific min level in trainer list (for weapon master for example)
  and use it for check spell traing possibility.
* Hide for specific race/class some spells marked by flag  ABILITY_SKILL_NONTRAINABLE
  This possible in cases when spell available for race/class but learned from talent/etc
  and then don't must be show for race/calss pair in trainer list. Single case in 3.3.5a.
* Add to code tables for profession ranks for seelct correct rank related reqlevel
  and check DB side data for it. Note: DB reqlevel values redundant for profession rank
  spells now.
* Use for reqlevel selection (if DB value not provided) learned spell insteed cast-spell
  spellLevel field. This let in more cases select training reqlevel without provided DB value.
  For LogFilter_DbStrictedCheck = 0 mode output data about like redundant reqlevel values
  in traner tables.
2011-06-02 09:55:25 +04:00
VladimirMangos
6092bbf502 [11579] Grrrr.... typo prev. commit. 2011-06-01 03:39:09 +04:00
VladimirMangos
7371bb96e1 [11578] Prevent lost aura from spell applied at use equipped consumable item.
So aura will not removed at unequip like item with multiply charges,
and will not removed at last charge with item deleting in result.

No like items in 3.x known but exist in prev. client versions.
2011-06-01 02:36:17 +04:00
VladimirMangos
e17f7bf4d5 [11569] Remove recently added area switch time duel check.
Only duel start expected to be limited by area.
Duel end controlled only distance/map and outOfBound timer
2011-05-30 12:02:30 +04:00
VladimirMangos
4f214f55d7 [11566] Fixed problem with reuse BG save data not only at first failed login to BG.
Most visible problem result: infinity restart in taxi flight
after join to BG from taxi if character logout in BG and BG finished before re-login.
2011-05-30 05:47:12 +04:00
VladimirMangos
4a087e6bda [11557] Duel related fixes
* Implement duel allowed check base at proper area flag AREA_FLAG_DUEL (0x00000040)
  This allow duels for example in capital area 4570 and allow/fogbid correctly some other zones and areas.
* Implement duel cancel at leave duel allowed area
* Fixed code for duels work in sunctuary if area allow duels.
2011-05-29 03:57:15 +04:00
NoFantasy
8d8abd2afb [11555] Add a comment for SMSG_UPDATE_COMBO_POINTS
Remove another obsolete comment

Signed-off-by: NoFantasy <nofantasy@nf.no>
2011-05-28 20:54:36 +02:00
breakwater
ce14b28ba4 [11552] Implement aura SPELL_AURA_STOP_NATURAL_MANA_REGEN (294)
Also partly implement using it spell 62692.

FIXME: Some spells expected to be working for target under spell 62692 effect
       not working. This need additional research and fixes.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-05-28 05:24:36 +04:00
zergtmn
5cae1c2211 [11539] Implement group guids with HIGHGUID_GROUP 2011-05-25 19:55:35 +06:00
NoFantasy
0fbf2cf7d3 [11538] Add safeguard against weirdness in UpdateCombatSkills
Prevent weapon/defense update also in case of negative skill difference result (may become negative after use of .level -N -command)

Signed-off-by: NoFantasy <nofantasy@nf.no>
2011-05-25 12:25:14 +02:00
SilverIce
4bb2d662a2 [11536] Override Unit::SetPhaseMask for players, move some functionality from Aura::HandlePhase 2011-05-25 04:20:50 +03:00
VladimirMangos
2cbde12458 [11534] Guild disban memory losses and unsafe code.
* Make sure that guild object deleted in all cases after disband.
* Avoid recusive like way call Disband from DelMember
2011-05-25 03:20:28 +04:00
VladimirMangos
d111d1a4b3 [11497] Fixed another source of crash at accept quest from item.
OnQuestAccept script calls moved into Player::AddQuest before
remove/replace quest starting item.
Its still called only at quest accept ofc (questGiver object != NULL only in like case.
2011-05-17 00:42:07 +04:00