Commit Graph

61 Commits

Author SHA1 Message Date
SeTM
fade2383cc Core/Spells: Implemented SPELL_ATTR5_HIDE_DURATION. Duration of auras with this attribute will not be displayed clientside 2011-05-28 21:53:32 +07:00
Shauren
bafa57618c Core/Spells: Documented 2 spell attributes 2011-05-26 22:11:44 +02:00
Shauren
5f5af1e95d Core/Spells: Implemented SPELL_ATTR3_IGNORE_HIT_RESULT. Spells with this attribute will only be subject to own spell modifiers, ignoring enemy avoidance auras such as Cloak of Shadows or Deterrence 2011-05-25 18:31:10 +02:00
Ramusik
def928a3bd Core/Spells: Rename some spell attributes to reflect their true meaning 2011-05-17 02:34:39 +07:00
tobmaps
cb6fca4646 Core/Spells: Implement SPELL_ATTR5_HASTE_AFFECT_DURATION. Haste rating should decrease duration of these auras
Closes #1020
2011-05-12 18:59:49 +07:00
tobmaps
8ecde2f96b Core/Spells: rename MECHANIC_PACIFY to MECHANIC_SLOW_ATTACK and fix a bug with Frost Fever removing by PvP trinket
Closes #457 & #836 & #1195
2011-05-11 23:20:15 +07:00
tobmaps
ce7f024945 Core/Spells: Implement SPELL_ATTR4_DAMAGE_DOESNT_BREAK_AURAS. Damage from spells with this attribute flag shouldn't break breakable by damage auras 2011-05-11 01:46:13 +07:00
tobmaps
f3a12453a0 Core/Spells: added more spell attributes to enum 2011-05-10 18:00:13 +07:00
leak
1003f30448 Add spaces after commas 2011-04-29 20:47:02 +02:00
leak
e2e9431ca3 Core/ObjectMgr: Refactor sGOStorage 2011-04-28 22:54:30 +02:00
Shauren
aa91187e97 Core/Spells: Cast proper vehicle spells on vehicle summon 2011-04-24 10:22:58 +02:00
Shauren
542bc3008d Core/Player: Fixed interaction rules with dead creatures 2011-04-18 12:17:45 +02:00
Shauren
0d477ab132 Core/Creatures: Dismount creatures without CREATURE_TYPEFLAGS_MOUNTED_COMBAT when entering combat 2011-04-18 11:43:50 +02:00
pek2011
337b75cafc Core/Cleanup: Drop some unused code and update some unknown player flags (from Mangos).
Closes #1167
2011-04-07 15:10:10 +03:00
Shauren
7d49d37e6e Core/Battlegrounds: Fixed displaying Call to Arms for Isle of Conquest and Strand of the Ancients 2011-03-20 21:49:15 +01:00
VladimirMangos
3384dc3a24 Core/Misc: Drop unused define GAMEOBJECT_FISHINGNODE_ENTRY 2011-03-18 07:01:51 -06:00
Shauren
36f848a4c2 Scripts/Icecrown Citadel: Only one Mutated Abomination can exist during Professor Putricide encounter
Scripts/Spells: Added blizzlike error messages for certain spells
Scripts/Items: Removed obsolete scripts
2011-03-04 23:53:11 +01:00
Shauren
7120f1eff8 Core/Spells:
* Implemented on CheckCast spell script hook
* Added possibility to send SPELL_FAILED_CUSTOM_ERROR and added enum with all possible options for it

Scripts/Spells:
* Added example script for CheckCast hook with SPELL_FAILED_CUSTOM_ERROR (profession research and Book of Glyph Mastery)
2011-03-04 21:19:43 +01:00
Machiavelli
3ac80ee3a4 Core/Vehicles: Correct usage of npc_spellclick_spells instead of blatant hacks for vehicle entry.
Note: This may break a few vehicles, but only due to the absence of proper, non-hackish data.
2011-02-26 23:00:09 +01:00
Machiavelli
38816cb1df Core/Spells: Implement SPELL_ATTR6_IGNORE_CROWD_CONTROL_TARGETS (0x00000100). Spells with this attribute flag (Avenger's Shield, Hammer of Righteousness, Shield of Righteousness, Felguard Cleave, Fel Iron Bomb) will ignore secondary targets that are under the effect of crowd control aura's.
Thanks to Shauren for advices.
2011-01-15 19:40:06 +01:00
Machiavelli
957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +01:00
click
088ed9404b Core/Entities: Fix a minor disrepancy in the handling of weapon specializations introduced in revision a83f26ef71 - patch by Dr.Tenma
Fixes issue 5059.
Fixes issue 5265.

--HG--
branch : trunk
2010-12-25 04:03:04 +01:00
linencloth
59da698189 Core: Rename spell attributes, use more general names
--HG--
branch : trunk
2010-12-19 05:15:47 +01:00
linencloth
22928e23bd Core: Replace spell attribute defines with enums
--HG--
branch : trunk
2010-12-19 04:11:44 +01:00
Spp
4671500172 Core/Dungeon Finder: Move all LFG data from Player and Group classes to internal LFG data classes.
--HG--
branch : trunk
2010-12-16 10:53:21 +01:00
Spp
e621f5fe98 Core/Dungeon Finder: Code cleanup and minor optimizations
- Extend LfgState to keep control of the state of group and players using LFG
- Move scripts to its own class and initialize only if Dungeon finder is enabled
- Updated comments to doxygen format
- Use constructor initialization list
- All variables are declared in the inner most scope
- Fix some mem leaks
- Remove no longer needed code (Cleaner)
- Normalize handler function names

--HG--
branch : trunk
2010-12-05 17:50:26 +01:00
Spp
25ac835507 Core/Groups: Move all function definition from .h to .cpp
Core/Groups: Remove Group.h dependency from any .h file

--HG--
branch : trunk
2010-11-29 07:50:31 +01:00
Shocker
a3ade4a49a Core/Spells: Partially implement SPELL_ATTR_EX_USE_RADIUS_AS_MAX_DISTANCE. Currently used for correctly setting destination, still needs handling for shared sight removal/controlled unit despawn when max distance is reached
--HG--
branch : trunk
2010-11-14 23:31:32 +02:00
linencloth
bf888285aa Core:
- Redesigned stealth and invisibility handling
  - Implemented the handling of multiple stealth types
- Implemented fake inebriation
- The message deliverer no longer sends packets from a non-visible source
  - The server won't send that much garbage which just takes bandwith
  - It won't be possible to use cheats to detect invisible objects
- Removed a lot of checks for the Z-coord
  - Fixes visibility problems happening while flying
- Limited the grid activation range of creatures to use less resources
- Implemented Shroud of Death
- Implemented increased visibility range for active objects
- Removed visibility check at spellhit (only sanctuary effects should prevent it)
(And a lot of other changes...)

Closes issue 4208
Closes issue 3049
Closes issue 2097
Closes issue 2198
Closes issue 2384
Closes issue 2197
Closes issue 2319

--HG--
branch : trunk
2010-11-13 17:18:09 +01:00
_manuel_
3ee05b26ce Core/Spells: Now you can cast the Water Elemental's Freeze without cancelling its Waterbolt.
Author: dr.tenma

Fixes issue #4215

--HG--
branch : trunk
2010-10-22 17:22:38 -03:00
Rat
ee32b4b39a Core/Objects: added ToUnit(), ToGameObject() (will be used in future)
Core/Unit:
- added SetFacing() function, using proper packet implementetion (spline type)
- added GetAuraCount() function (will be used in future)
Core/Creature: renamed one unknown type_flag

--HG--
branch : trunk
2010-10-17 21:14:08 +02:00
azazel
c0faed2251 Core/Guilds: guild code was completely refactored and rewritten.
* OOP desing and implementation;
* all the queries are moved to prepared statements;
* guild loading is optimized;
* all the possible interaction with guild's data is done inside the guild class;
* added more hooks to GuildScript class;

WARNING: Make sure you backup your characters database before applying this change (just in case).

Known problems with guilds:
* when new member is added to the guild, MOTD is not displayed for him in guild tab of social window;
* if you add item with random property to guild bank visual representation of item below it becomes wrong (it displays wrong stack number);
* packets order differs from official: currently guild bank packet traffic is twice as more than on offy.

--HG--
branch : trunk
2010-10-17 19:54:13 +06:00
Shauren
8a17d95647 Scripts/Icecrown Citadel: Added Professor Putricide script
Scripts/Icecrown Citadel: Fixed Professor Putricide gate opening when both Rotface and Festergut are dead
Scripts/Icecrown Citadel: Added script updating entries of NPCs at Light's Hammer depending on faction
Scripts/Icecrown Citadel: Rotface should not pick main tank as target for Slime Spray (removed debugging code)
Core/Spells/Conditions : Spell script target condition now accepts ConditionValue3 as affecting effect mask (only search targets with matching mask)

--HG--
branch : trunk
extra : rebase_source : 943e3bac5d9063974d7f7132f144e91946f825d4
2010-10-16 16:34:21 +02:00
runningnak3d
a6170675c6 Core/Misc: Fix typo
Thanks: jamieplucinski

--HG--
branch : trunk
2010-10-08 19:05:52 -06:00
runningnak3d
a667faaa94 Core/GameObject: Create enum GameObjectDynamicLowFlags instead of using hard
coded flags.
Author: NoFantasy

--HG--
branch : trunk
2010-10-08 18:38:58 -06:00
click
613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02:00
click
8ea4b32fab Update copyright headers (following the same standard in all files = good)
--HG--
branch : trunk
2010-10-07 12:41:56 +02:00
Shauren
442b312cbf Core/Spells: Implemented SPELL_ATTR_EX2_ALWAYS_APPLY_MODIFIERS, fixes Aura Mastery and some paladin aura related talent behavior when learning
Closes issue #2457.

--HG--
branch : trunk
2010-09-29 19:56:10 +02:00
Shocker
11b682e4df Core/Spells: Rename SPELL_ATTR_EX7_UNK3 spell attribute to SPELL_ATTR_EX7_DISABLED_CLIENT_SIDE
--HG--
branch : trunk
2010-09-29 00:20:34 +03:00
Shauren
d8ddf38453 Core/Items: Implemented trading soulbound loot items
Core/DBLayer: Converted more more player-related queries into prepared statements
Core/Items: Fixed loading of enchantments

Closes issue #4130.

--HG--
branch : trunk
2010-09-21 21:55:16 +02:00
Shocker
cbe95da41a Core/Spells: Correct meaning & usage of SPELL_ATTR_EX2_NOT_RESET_AUTOSHOOT (now SPELL_ATTR_EX2_NOT_RESET_AUTO_ACTIONS) to ignore timer reset for both melee swings and ranged autoshoots, fixes issue 2639
--HG--
branch : trunk
2010-09-12 23:52:37 +03:00
silinoron
be7d94f24e Add support for character race and faction transfers.
Based (loosely) on patch by Ner'zhul, DarkXuan, and darkshines@sakha.net.
Fixes issue #3429.

--HG--
branch : trunk
2010-09-05 13:12:24 -07:00
QAston
a8de57559b *Allow channeled spells to be casted on dead target
*Define relted spell attributes

--HG--
branch : trunk
2010-08-30 17:32:51 +02:00
QAston
5e78e222c1 Core/Spells: Implement TARGET_DEST_CHANNEL_CASTER(106) and TARGET_GAMEOBJECT_AREA_PATH(108). Rename TARGET_UNIT_CHANNEL to TARGET_UNIT_CHANNEL_TARGET, TARGET_DEST_CHANNEL to TARGET_DEST_CHANNEL_TARGET
--HG--
branch : trunk
2010-08-18 15:04:00 +02:00
QAston
0284ed4cfe *Core/Spells: Implement TARGET_UNIT_SUMMONER
*Rename TARGET_UNIT_MINIPET to TARGET_UNIT_TARGET_PUPPET.

--HG--
branch : trunk
2010-08-17 20:19:06 +02:00
QAston
fa8a826656 *(More) correct implementation of SPELL_EFFECT_PULL_TOWARDS_DEST(145)
--HG--
branch : trunk
2010-08-09 02:31:42 +02:00
XTZGZoReX
909e332579 * Rename: BattleGround -> Battleground.
--HG--
branch : trunk
2010-08-08 04:37:24 +02:00
XTZGZoReX
946adf469c *** New core <-> script library interface - complete rewrite of the old one.
* Removed the misdesigned on_events script/hooks.
* Lots of related cleanups and assertions.
* The interface is now fully object-oriented.
** Scripts no longer use function pointers.
** Scripts no longer use the general-purpose Script struct for everything.
** Script types are split into separate classes which must be inherited depending on what functionality is desired.
* Several script types have been added to allow extending functionality in a code-only manner (some script types require
  assignment in the recently added ScriptName columns in the database, though).
** SpellHandlerScript: Wrapper around spell scripts (returns new SpellScript objects (`spell_script_names`.`ScriptName`)).
** ServerScript: Allows scripting events that occur in the network layer.
** WorldScript: Allows scripting certain world-global events.
** FormulaScript: Allows hooking and interfering with core formulas.
** *MapScript: Allows hooking different map types (including world, instance, and battleground maps (`instance_template`.`ScriptName`)).
** ItemScript: Allows scripting of items (like the old interface (`item_template`.`ScriptName`)).
** CreatureScript: Allows scripting of creatures/AI (like the old interface (`creature_template`.`ScriptName`)).
** GameObjectScript: Allows scripting of gameobjects (like the old interface (`gameobject_template`.`ScriptName`)).
** AreaTriggerScript: Allows scripting triggered area triggers (like the old interface (`areatrigger_scripts`.`ScriptName`)).
** OutdoorPvPScript: Script which should return OutdoorPvP objects for use by OutdoorPvPMgr (`outdoorpvp_template`.`ScriptName`).
** CommandScript: Allows extending the in-core command table.
** WeatherScript: Allows scripting of weather changes (`game_weather`.`ScriptName`).
** AuctionHouseScript: Allows scripting of auction events.
** ConditionScript: Allows scripting of conditions (`conditions`.`ScriptName`).
** DynamicObjectScript: Allows scripting of dynamicobjects.
** TransportScript: Allows scripting of transport events (`transports`.`ScriptName`).
* OutdoorPvP objects are now created through scripts. This effectively means that they'll need to be moved to scripts
  before the they're functional again.
* The whole idea with this new interface is to allow expanding core functionality without touching core code. If further
  hooks are needed to expand functionality of the core, let us know; we'll add them, if we agree that it is appropriate
  to do so.
*** NOTE: The scripts project will _not_ build before it has been adapted to the new interface.
*** Thanks to everyone who helped out with related preparations and suggestions!

--HG--
branch : trunk
2010-08-06 19:23:43 +02:00
Xanadu
eb852f5bbd * Added the option to specify target entry in conditions table for spells with AoE GO targets.
* A few examples where this is desirable are posted on the forum.

--HG--
branch : trunk
2010-07-30 01:51:33 +02:00
QAston
c44b601ac7 *Allow some spell effects to target units not in caster's map - fixes SPELL_EFFECT_SUMMON_PLAYER
--HG--
branch : trunk
2010-07-29 19:48:40 +02:00