Commit Graph

115 Commits

Author SHA1 Message Date
Machiavelli
8e8ff7c660 Core/Conditions: Remove some useless checks in Condition::Meets against a value that's _supposed to be_ const 0 in database. 2012-02-29 13:57:16 +01:00
Machiavelli
7567d5e359 Core/Conditions: Fix grouping for CONDITION_SOURCE_TYPE_SPELL_CLICK_EVENT
Perhaps in the future a more generic solution can be implemented to prevent lots of repetitive code
2012-02-22 11:54:01 +01:00
Spp
1e246cb66c Fix build (gcc) and fix warnings 2012-02-22 09:15:57 +01:00
QAston
18948755ca Merge. 2012-02-21 20:17:45 +01:00
QAston
f09b5a6bea Core/Db/Conditions:
-Drop condition CONDITION_SPELL_SCRIPT_TARGET, use other condition types instead
-Change CONDITION_SOURCE_TYPE_SPELL_SCRIPT_TARGET to CONDITION_SOURCE_TYPE_SPELL_IMPLICIT_TARGET:
--allow using this condition for more spell implicit target types (not just ENTRY)
--SourceGroup value for this src type is now effMask and it's now required

Core/Spells: Unify the way implicit targets are handled, fully implement some partially implemented target types, fix some minor bugs found on the way, general improvements and cleanup.
2012-02-21 20:17:45 +01:00
Machiavelli
16818d7548 Core/Conditions: Convert npc_spellclick_spells data to condition system. This implements CONDITION_SOURCE_TYPE_SPELL_CLICK_EVENT (previous CONDITION_SOURCE_TYPE_UNUSED_18). Wiki needs to be updated accordingly. 2012-02-20 23:25:59 +01:00
Subv
c6f4ab10e1 Core/Scripts: Fixed Thrall's weapon and shield models in Old Hillsbrad Foothills.
closes #3904

Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-02-19 19:01:03 -05:00
click
5411e1ce52 Core: Clean up whitespace and tabs in the base sourcetree 2012-02-18 16:52:08 +01:00
Spp
03c34ee507 Fix a lot of warnings 2012-02-16 13:56:28 +01:00
QAston
e47ec04b4d Core/Db/Conditions: Drop CONDITION_CREATURE_TARGET, CONDITION_TARGET_HEALTH_BELOW_PCT, CONDITION_TARGET_RANGE and 3rd parameter for CONDITION_AURA. Instead of those use other available conditions, which are not limited to player's selection only. 2012-02-16 13:16:43 +01:00
QAston
ad6613261c Core/Db/Conditions: Drop usage of CONDITION_ITEM_TARGET and CONDITION_SOURCE_TYPE_ITEM_REQUIRED_TARGET and use CONDITION_SOURCE_TYPE_SPELL instead. 2012-02-16 12:09:09 +01:00
QAston
de706b3211 Core/Db/Conditions: Add new condition targets for:
- CONDITION_SOURCE_TYPE_CREATURE_TEMPLATE_VEHICLE ConditionTarget = 1 - check vehicle
- CONDITION_SOURCE_TYPE_VEHICLE_SPELL ConditionTarget = 1 - check vehicle
- CONDITION_SOURCE_TYPE_GOSSIP_MENU = 1 - check gossip provider
- CONDITION_SOURCE_TYPE_GOSSIP_MENU_OPTION = 1 - check gossip provider
2012-02-15 22:13:27 +01:00
Subv
ded43242eb Fixed build 2012-02-14 13:53:33 -05:00
Subv
8a72aede16 Codestyle: Renamed some variables to fit codestyle, corrected order in structure/class fields to match alignment (they use slightly less memory now)
Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-02-14 12:46:26 -05:00
Subv
d790adefe0 Codestyle: Renamed some variables to fit codestyle
Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-02-12 20:10:09 -05:00
Matthew Goff
b0145e3b39 Core/Quests: Correct use of parenthesis in IsAutoComplete and IsAutoAccept
Closes #5195
2012-02-11 22:26:53 +00:00
Pitcrawler
6bb7f15092 DB/NPCs: Remaining Grizzly Hills gossips
Scripts|SAI: Convert npc_kingdom_of_dalaran_quests to SAI
Closes #4845
2012-02-11 20:01:06 +00:00
Nay
605d3ffa52 Copy paste is bad, mkay? 2012-02-11 19:51:03 +00:00
Nay
5c62fd1d6a Core/Db/Conditions: Add conditions for world state and phasemask
CONDITION_WORLD_STATE - 11 - index - value - 0
CONDITION_PHASEMASK - 26 - value - 0 - 0
Idea by @LiMCrosS
2012-02-11 19:46:41 +00:00
Subv
5d93b33f0f Fixed codestyle from last commit 2012-02-11 10:53:33 -05:00
Subv
c5e2e189de Core/Conditions: Allow to set SAI conditions to both the invoker and the object using ConditionTarget column.
ConditionTarget 0 = invoker
ConditionTarget 1 = object

Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-02-11 10:49:28 -05:00
QAston
784d58c023 Core/Db/Conditions: Add new condition types:
- CONDITION_OBJECT_ENTRY
- CONDITION_TYPE_MASK
- CONDITION_RELATION_TO
- CONDITION_REACTION_TO
- CONDITION_DISTANCE_TO
- CONDITION_ALIVE
- CONDITION_HP_VAL
- CONDITION_HP_PCT
2012-02-11 15:17:33 +01:00
QAston
9d455c1e6f Fix build with GCC (it seems like it doesn't allow using references to temporary objects). 2012-02-11 00:15:05 +01:00
QAston
ce4a4ffe50 Core/Db/Conditions: Add ContidionTarget column which allows selection of objects which will be checked by condition, depending on SourceTypeOrReferenceId.
So far usable only with CONDITION_SOURCE_TYPE_SPELL:
ContidionTarget = 0 - check caster
ContidionTarget = 1 - check explicit target
2012-02-10 23:42:08 +01:00
QAston
46b9942f97 Core/Db/Conditions: remove ConditionValue2 parameter CONDITION_SPELL which was used for checking if player doesn't have spell and use NegativeCondition parameter instead. 2012-02-10 18:49:40 +01:00
Nay
ed3e5d816a Core/Db/Conditions: CONDITION_NOITEM and CONDITION_NO_AURA became deprecated with NegativeCondition
Wiki updated.
2012-02-10 16:32:26 +00:00
QAston
586a76e3a0 Core/Db/Conditions: Add 3rd parameter to CONDITION_ITEM so it can now perform a check if item exists in bank aswell as in equipment. 2012-02-10 16:47:58 +01:00
QAston
f2f1150761 Fixed build. 2012-02-10 15:43:19 +01:00
QAston
676151f6ac Core/Db/Conditions: Don't use ConditionValue3 as a reference id for template conditions - ConditionTypeOrReference serves this purpose. 2012-02-10 15:30:33 +01:00
QAston
8713b44ee7 Core/Db/Conditions: Prepare conditions system to work on objects of different type than players.
Warning: API has changed a bit:
ConditionScript::OnConditionCheck(Condition* condition, Player* player, Unit* invoker) is now
ConditionScript::OnConditionCheck(Condition* condition, WorldObject* object, WorldObject* invoker)
2012-02-10 14:18:59 +01:00
QAston
e0ad0f0e8d Minor correction to a7fc2586e7 - load columns from db in the same order they're stored. 2012-02-10 12:54:34 +01:00
QAston
a7fc2586e7 Core/Db/Conditions: Add NegativeCondition column to conditions table which allows to check whenever player does not meet condition specified by ConditionTypeOrReference column (ConditionTypeOrReference and ConditionValue3 set to reference id are not affected by the change) 2012-02-10 12:46:01 +01:00
QAston
0b1da6c0ad Core/Db/Conditions: update error log. 2012-02-09 18:18:06 +01:00
QAston
e0c699b0f3 Core/Db/Conditions: allow CONDITION_SOURCE_TYPE_ITEM_REQUIRED_TARGET to be used for spells with any spell using unit as explicit target instead of just TARGET_UNIT_TARGET_ANY and TARGET_UNIT_TARGET_ENEMY. 2012-02-09 18:12:47 +01:00
Subv2112
29f8e4309e Core/Conditions: Allow using guid (negative value) in SAI conditions 2012-01-31 09:50:02 -05:00
Subv2112
74b64150bb Core/Conditions: Implemented SAI conditions, only usable with events in which the invoker is a player.
sourceType = 22
sourceEntry = entryorguid
sourceGroup = eventId + 1
sourceId = SAI sourceType (0 = creature, 1 = gameobject, etc)

Also refactored some code

Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-29 13:49:19 -05:00
Subv2112
59f378ea89 Core/Conditions: Fixed the error introduced in the previous commit 2012-01-28 12:45:27 -05:00
Subv2112
ff81a2455b Core/Conditions: Make CONDITION_CLASS and CONDITION_RACE use a mask, this will reduce the amount of conditions needed
Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-01-28 12:25:44 -05:00
Machiavelli
5dd6b8b2dc Core/Conditions: Change CONDITION_REPUTATION_RANK. It now no longer explicitly checks if ConditionValue2 is equal to the reputation rank. It now checks if the player's reputation rank is in the bitmask of ConditionValue2, where each bits are (1 << ReputationRank).
Idea by Aokromes and Malcrom
Data conversion query by Malcrom (*WATCH OUT WITH CUSTOM CONTENT AS THIS DELETES ALL CONDITION TYPE 5's AND RE-ADDS STOCK DATA ONLY*)
2012-01-17 14:31:22 +01:00
kiper
8299627ed9 Update headers for 2012. HAPPY NEW YEAR!!! 2012-01-01 00:32:13 +01:00
Shauren
3ff67fb257 Core/Achievements: Refactored HasAchieved to take only achievement id as parameter 2011-12-12 18:19:26 +01:00
Spp
b16d2245bb Cosmetic: Multiple cosmetic changes
- Added missing space to 'if', 'for', 'while' and 'switch' when it's followed by '('
- Added missing space after a comma and remove space before comma (with some exceptions)
- Remove trailing spaces
- Convert tab to spaces

Note: Only affects files with extension "cpp" and "h" under /src/server
2011-09-29 12:43:05 +02:00
Spp
af05915b9e [Cosmetic] Apply codestyle "XXX * " and "XXX *" changed to "XXX* " (with some exceptions) 2011-09-15 14:12:57 +02:00
QAston
a077a26aa5 Core/Spells: update the core to the changes from 1fb1988d46 . To make your custom code work with those changes simply lookup the value of Targets enum value from prev rev, and update the name in your code. 2011-08-16 19:44:18 +02:00
QAston
73bbc3aca8 Core/Spells: Update some targeting related attribute definitions to make them more clear and consistent. 2011-08-16 16:06:21 +02:00
Spp
473f341012 Core/GameEvent: Minor code optimization. (Also cosmetic changes in other unrelated files) 2011-08-04 14:27:10 +02:00
Shauren
b9a6e2333c Core/Spells: Removed implicit casts from SpellImplicitTargetInfo, fixed copypaste mistakes and one crash 2011-07-27 12:35:59 +02:00
QAston
b0fe236265 Core: Use new SpellInfo class in core. Sadly, this commit is not compatibile with some of the custom code. To make your code work again you may need to change:
*SpellEntry is now SpellInfo
*GetSpellProto is now GetSpellInfo
*SpellEntry::Effect*[effIndex] is now avalible under SpellInfo.Effects[effIndex].*
*sSpellStore.LookupEntry is no longer valid, use sSpellMgr->GetSpellInfo()
*SpellFunctions from SpellMgr.h like DoSpellStuff(spellId) are now: spellInfo->DoStuff()
*SpellMgr::CalculateEffectValue and similar functions are now avalible in SpellEffectInfo class.
*GET_SPELL macro is removed, code which used it is moved to SpellMgr::LoadDbcDataCorrections
*code which affected dbc data in SpellMgr::LoadSpellCustomAttr is now moved to LoadDbcDataCorrections
2011-07-26 23:09:28 +02:00
kaelima
b9e8694540 Core: Continued cleanup
If and for whitespaces.
2011-06-12 02:30:32 +02:00
click
158966dc79 Core: Codestyle cleanup 2011-06-11 22:35:29 +02:00