Commit Graph

439 Commits

Author SHA1 Message Date
kaelima
ca276292dc Core/BG:
- Force removal of stealth and invisible auras when using gameobjects with type GAMEOBJECT_TYPE_FLAGSTAND and GAMEOBJECT_TYPE_FLAGDROP
- Do not allow players to use unfriendly battleground objects (prevents flag cap with Nitro Boosts active for example)
2012-10-17 16:56:35 +02:00
kandera
104b86f3d4 Merge pull request #8042 from Retriman/SpellBarkskin
Core/Spell:
2012-10-11 05:41:24 -07:00
Retriman
d02298509f Core/Spell:
*Barkskin can be used to stun and sleep.
2012-10-11 01:32:28 -04:00
Spp
7831ecdb18 Core: "Initial support for C++11 compilers" 2012-10-02 15:06:19 +02:00
Spp
380db44583 Core/Utilities: Use generic templates with AddPct, ApplyPct and CalculatePct 2012-10-02 12:17:42 +02:00
Spp
8c5f011e79 Core/Achievements: Force all calls to AchievementMgr be done through Player functions (Remove GetAchievementMgr)
Note: No real use in 3.3.5 but will be used in 4.3.4
2012-09-18 14:29:53 +02:00
Shauren
bc912af806 Core/Spells: Defined and implemented SPELL_ATTR5_DONT_TURN_DURING_CAST.
This attribute controls whether unit can turn during casting spells (fixes Ingvar's Dark Smash)
2012-09-16 23:34:30 +02:00
Spp
358c6a26d6 Core: Warning fixes (Also some -pedantic under game folder) 2012-09-10 13:04:31 +02:00
Shauren
97a92036d1 Core/Spells: Fixed typo in previous commit 2012-09-09 19:22:30 +02:00
Shauren
53002dfe03 Core/Spells: Set UNIT_FIELD_CHANNEL_OBJECT also for spells that don't have explicit target unit but use NEARBY selection, fixes #7246 2012-09-09 17:52:27 +02:00
Subv
be181b2ccd Core/Spells: Use the UNIT_FIELD_CHANNEL_OBJECT field instead of Spell::m_targets to select the channel targets of a triggered spell.
Closes #7246
2012-09-08 07:51:57 -05:00
tobmaps
fb3a360575 Core/Spells: fix intervening dead targets Closes #2090 2012-09-06 11:05:45 -04:00
kaelima
7c971be3c5 Core/Misc: Fix some warnings and logic mistakes found by static code analysis 2012-09-05 17:18:05 +02:00
e
f9a1fabc7b [Spell::CleanupEffectExecuteData] Remove this confusing and potentially worthless function, use memset instead. 2012-09-04 22:38:59 -04:00
Nay
73172c67f0 Misc: Convert from CRLF to LF in cs_misc.cpp
Also cleanedup whitespace
2012-09-04 16:14:15 +01:00
kaelima
a3f9eee4e5 Core/Spells: Fix memory leak when Load() fails from spell/aura-scripts 2012-09-04 17:03:30 +02:00
Nay
80b61fa584 Core/Spells: Hard-limit the number of hit and miss targets sent in SMSG_SPELL_GO to 255 (each), fixes client crashes
Closes #3873
2012-09-03 02:45:27 +01:00
Myran2
908ae08a0a Scripts/Commands: Create a new group of commands, .cheat, and add new and move old commands to it:
Changes:
- .explorecheat is now .cheat explore
- .waterwalk is now .cheat waterwalk
- .taxicheat is now .cheat taxi

New commands:
- .cheat god
- .cheat casttime
- .cheat cooldown
- .cheat power

(Descriptions available in the SQL file / in-game)

Inspiration on ArcEmu commands
Closes #7569
2012-08-31 01:26:21 +01:00
Nay
e3d9768a50 Core: Fix many "errors"/warnings and coding style (3)
Game

Errors were found using Cppcheck, open-source static analysis tool
2012-08-30 22:44:33 +01:00
Vincent-Michael
ccb20a1947 Core/Spells: Fix Pick Lock calculation
Closes: #4323
2012-08-27 18:18:27 +02:00
Vincent-Michael
6891fe6248 Core/Battlefield: Add missing stuff for wintergrasp 2012-08-21 23:03:30 +02:00
Kandera
b9f60fe56c Core/Wintergrasp: finish implementation for battlefields. this is highly experimental enable at you're own risk. will almost definatly cause issues with the wintergrasp patch floating around 2012-08-20 16:23:24 -04:00
Manuel Carrasco
d7a7a9800b Battlefield: Make sBattlefieldMgr a pointer. By Subv. 2012-08-20 13:48:47 -04:00
Vincent-Michael
9afbb75321 Core/Spells: Fix Divine Shield and Ice Block casted in Cyclone 2012-08-05 04:18:22 +02:00
Spp
55ce180f28 Core/Logging: Add Asyncronous logging with Loggers ("What to log") and Appenders ("Where to log") system. Will allow to select to full log some parts of core while others are not even logged.
- Logging System is asyncronous to improve performance.
- Each msg and Logger has a Log Type and Log Level assigned. Each msg is assigned the Logger of same Log Type or "root" Logger is selected if there is no Logger configured for the given Log Type
- Loggers have a list of Appenders to send the msg to. The Msg in the Logger is not sent to Appenders if the msg LogLevel is lower than Logger LogLevel.
- There are three (at the moment) types of Appenders: Console, File or DB (this is WIP, not working ATM). Msg is not written to the resource if msg LogLevel is lower than Appender LogLevel.
- Appender and Console Log levels can be changed while server is active with command '.set loglevel (a/l) name level'

Explanation of use with Sample config:

Appender.Console.Type=1       (1 = Console)
Appender.Console.Level=2      (2 = Debug)

Appender.Server.Type=2        (2 = File)
Appender.Server.Level=3       (3 = Info)
Appender.Server.File=Server.log

Appender.SQL.Type=2           (2 = File)
Appender.SQL.Level=1          (1 = Trace)
Appender.SQL.File=sql.log

Appenders=Console Server      (NOTE: SQL has not been included here... that will make core ignore the config for "SQL" as it's not in this list)

Logger.root.Type=0            (0 = Default - if it's not created by config, server will create it with LogLevel = DISABLED)
Logger.root.Level=5           (5 = Error)
Logger.root.Appenders=Console

Logger.SQL.Type=26            (26 = SQL)
Logger.SQL.Level=3            (2 = Debug)
Logger.SQL.Appenders=Console Server SQL

Logger.SomeRandomName.Type=24 (24 = Guild)
Logger.SomeRandomName.Level=5 (5 = Error)
Loggers=root SQL SomeRandomName

* At loading Appender SQL will be ignored, as it's not present on "Appenders"

* sLog->outDebug(LOG_FILTER_GUILD, "Some log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomName is found but it's LogLevel = 5 and Msg LogLevel=2... Msg is not logged

* sLog->outError(LOG_FILTER_GUILD, "Some error log msg related to Guilds")
  - Msg is sent to Logger of Type LOG_FILTER_GUILD (24). Logger with name SomeRandomeName is found with proper LogLevel but Logger does not have any Appenders assigned to that logger... Msg is not logged

* sLog->outDebug(LOG_FILTER_SQL, "Some msg related to SQLs")
  - Msg is sent to Logger SQL (matches type), as it matches LogLevel the msg is sent to Appenders Console, Server and SQL
    - Appender Console has lower Log Level: Msg is logged to Console
    - Appender Server has higher Log Level: Msg is not logged to file
    - Appender SQL has lower Log Level: Msg is logged to file sql.log

* sLog->outDebug(LOG_FILTER_BATTLEGROUND, "Some msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). As Logger has higher LogLevel msg is not sent to any appender

* sLog->outError(LOG_FILTER_BATTLEGROUND, "Some error msg related to Battelgrounds")
  - Msg is sent to Logger root (Type 0) as no Logger was found with Type LOG_FILTER_BATTLEGROUND (13). Msg has lower LogLevel and is sent to Appender Console
    - Appender Console has lower LogLevel: Msg is logged to Console
2012-08-03 14:20:18 +02:00
Spp
5a99dfad14 Warning fixes + compile fix after the merge 2012-07-30 10:07:26 +02:00
Shauren
537caf33e9 Core/SpellScript: Implemented OnObjectTargetSelect hook for use with spell target that selects a single object 2012-07-03 12:35:06 +02:00
Shauren
2bee0e6e37 Core/SpellScript: Corrected when OnObjectAreaTargetSelect hooks are called (must be before splitting unit/go targets) 2012-07-01 21:05:53 +02:00
Shauren
c8d20004a5 Core: Minor code style corrections 2012-06-30 16:07:09 +02:00
Shauren
067c27d299 Core/SpellScript: Corrected error messages and in-source documentation for OnObjectAreaTargetSelect hook and allow using that hook only for area spell targets 2012-06-30 00:06:17 +02:00
Shauren
e0997874f5 Core/SpellScripts: Changed OnUnitTargetSelect hook to OnObjectAreaTargetSelect, it will now work with WorldObject instead of only Units and call it even for empty target lists 2012-06-29 21:53:35 +02:00
QAston
e53b44b6ba Merge pull request #6491
Core/Spells: convert some spell effects to SpellScripts
Closes #6491
2012-06-14 19:12:03 +02:00
Kandera
5daa540d3a Core/Spells: handle SPELL_AURA_MOD_DEBUFF_RESISTANCE only for auras. fixes sacred cleansing causing the whole spell to be resisted. 2012-06-13 12:34:59 -04:00
joschiwald
8ab6d578ce fix typos - i failed so hard :( 2012-06-08 22:25:33 +02:00
joschiwald
7e454b26ac more updates 2012-06-03 02:35:00 +02:00
Nay
e83f913fc5 Core/Spells: Ignore LoS when spells are cast/triggered by gameobjects
... and this is why you shouldn't use the so called hacks. You will just
 keep adding sh*t on top of more sh*t (like this).
Currently, GO spell casts spawn an invisible WORLD_TRIGGER (npc 12999)
 inside of the gameobject (for certain forms of gameobjects) (and
 this is why the LoS check was failing).
It shouldn't be like that. GOs should be able to cast the spells without
 having to spawn an auxiliary creature.

Fixes "Eye of Acherus" and others
2012-05-28 22:17:17 +01:00
joschiwald
cd7ab6f3a5 Merge branch 'master' of github.com:joschiwald/TrinityCore into spellscripts
Conflicts:
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Spells/Auras/SpellAuraEffects.cpp
	src/server/game/Spells/Spell.cpp
	src/server/game/Spells/SpellEffects.cpp
	src/server/scripts/Spells/spell_paladin.cpp
2012-05-28 04:27:51 +02:00
joschiwald
ca07f30d03 Core/Spells: convert some spell effects to SpellScripts 2012-05-28 04:07:51 +02:00
Kandera
d1e0dc3fe0 Core/Spells: fix dispel aggro in a less hacky way! 2012-05-18 13:49:59 -04:00
Kandera
1037f96e4f Core/Spells: Damage should be dealt AFTER m_damage has been set. possibly fixes scourge strike damage calculations. 2012-05-18 12:31:13 -04:00
Kandera
01b2bf8057 Core/Spells, DB/Conditions: convert checkcast cpp to conditions for spell 52264 (deliver stolen horse) 2012-05-18 12:09:35 -04:00
Kandera
edf1de6d93 Core/Spells: move rocket boots spell cast check to spell script. add event for checkcast for deathcoil (dk) heh i forgot it >.< 2012-05-18 11:56:23 -04:00
Kandera
7688c7609f Core/Spells: remove holy shock and death coil (dk) from checkcast and add them to the checkcast of the spell script. also check if unit is in front for damage spell of death coil (dk) Closes #6027 2012-05-18 11:44:38 -04:00
Subv
1a06e197fd Core/Spells: Proc the spells that have DEST target when there is no other target info
Closes #6443
Closes #6277
Closes #6331

Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-05-13 19:39:06 -05:00
Vincent-Michael
e8bfcb686f Core/Spell: Fix not using Disengage while rooted 2012-04-28 02:56:29 +02:00
MrSmite
e9fd6d1979 Fix pets attacking on non-harmful spells 2012-04-20 20:22:40 -04:00
Subv
3d8aaabaf3 Core/Spells: Do not proc spells with PROC_FLAG_DONE_SPELL_MAGIC_DMG_CLASS_(NEG|POS) if there is no target, reimplemented Storm, Earth and Fire talent in another way
Closes #3367
Closes #2424

If you find more spells that are broken because of this, please notify us
Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-04-14 20:08:16 -05:00
Subv
397ee8ceb5 Core/Spells: Execute spell procs after the healing effects of a spell
Closes #216

Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-04-11 17:41:36 -05:00
Subv
38d5fbac0e Core/Spells: You should be able to revive pets from anywhere without summoning them first
Closes #1090
Signed-off-by: Subv <s.v.h21@hotmail.com>
2012-04-08 16:22:19 -05:00
Machiavelli
bc96df1aae Core/Shared: Move container functions to shared project under Trinity::Container namespace. Also implement RandomResizeList which takes a predicate function as parameter.
Core/ScriptedAI: Extend SummonList::DoAction to take a predicate function as parameter and allow specifying a maximum number of units to be selected.
2012-04-08 17:40:05 +02:00