Commit Graph

205 Commits

Author SHA1 Message Date
Spp
d1677b2db0 Core/Logging: Performance-related tweaks to logging system
All sLog->out* functions (except outCommand atm) are replaced with TC_LOG_* macros.
    Memleak fix
2013-05-13 15:07:36 +02:00
Shauren
1fbe054bd5 Core/GameObjects: SMSG_DESTRUCTIBLE_BUILDING_DAMAGE needs to be sent for destructible building heals as well 2013-05-11 11:40:12 +02:00
Gacko
7df4d147e3 Core/Gossips: Fix usage of PrepareGossipMenu with GOs 2013-04-04 19:57:06 +02:00
Spp
7c36e3a298 Core/Misc: Minor optimizations (+ code changes to reduce differences with 4.3.4 branch) 2013-03-25 10:36:30 +01:00
Trista
ed378ad63c Core/GameObjects: Implement support for HandleGameObjectUse from vehicle or mount 2013-03-09 05:24:33 +02:00
Nefarion
49fd11ab5a First step of comment style refactoring to doxygen-style. 2013-03-08 21:55:37 +01:00
Shauren
6be5bc71eb Core/GameObjects
* Removed long deprecated code for mining nodes (multiple uses, artifact of TBC)
* Made fishing pools generate use count only on spawn (and respawn) instead of randomizing use count on every fishing attempt - prevents early despawning in some cases
2013-03-02 23:59:42 +01:00
Shauren
944d7290ad Core/Loot: Minor change to previous commit, thanks Vincent_Michael for reminding me about this method in Map class 2013-02-14 11:41:20 +01:00
Shauren
ca280dbe05 Core/Loot: Only 3 items of the same entry can drop on 25 man raid difficulties and 1 everywhere else (non-raid or 10 man) 2013-02-13 20:24:23 +01:00
Spp
802657250c Core/Misc: Apply codestyle to multiple files 2013-01-14 09:50:59 +01:00
Nay
9394dc10b4 Core/Scripts: Drop gameobject_scripts table - empty, deprecated and no longer needed 2013-01-03 19:18:26 +00:00
Spp
2292025bf9 Core/Misc: Replaced some macro definitions with inline functions 2013-01-02 09:07:52 +01:00
Vincent_Michael
cc65aba789 Update copyright note for 2013.
Happy new year.
2013-01-01 00:41:01 +01:00
Shauren
f1170ba0fb Core: Fixed some level 4 warnings (msvc) 2012-12-31 20:43:14 +01:00
Spp
2251d1bfae Core/Misc: Set mode 0644 for files 2012-11-27 13:03:12 +01:00
click
50944711c8 Core: Change phrasing on the logmessage given when a gameobject loses its reference owner 2012-11-27 02:44:30 +01:00
Shauren
4dffccb93f Core/Spells: Corrected radius calculation 2012-11-26 11:11:30 +01:00
ille
2450f4ea56 fishing: set respawntime to now when cant loot, for correct despawn of bobber
removegameobject from player instead cancel spell, for correct remove of fishing aura
2012-11-03 15:31:14 +01:00
Spp
9fbc4c0ae2 Core/Misc: reduced amount of string memory allocations (Step II) 2012-10-24 15:34:48 +02:00
Spp
013fb1f4d9 Core/Misc: reduced amount of string memory allocations (Step I) 2012-10-24 15:34:48 +02:00
Gacko
2c8c7a195d Core: Implement Gameobject::Use() for traps 2012-10-21 14:38:46 +02:00
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
Subv
b06e9cfd41 Revert "Core/Entities: Do not create the model twice for a GameObject."
This reverts commit 0f166336ca.
2012-10-12 09:33:34 -05:00
trickerer
0f166336ca Core/Entities: Do not create the model twice for a GameObject.
Should fix #5218 (Still need to check)
2012-10-07 19:42:06 -05:00
Nay
d641775a1f Core/Traps: Remove hardcoded cooldown value of 1 and use startDelay instead, as per Kaelima suggestion
startDelay is 1 for all hunter traps

Fix non PCH build (boss_elder_madox.cpp)
Remove a double parentheses in LFGGroupScript
2012-10-06 17:01:29 +01:00
Nay
0edd7f4459 Merge pull request #7981 from Retriman/SpellTi
Core/Spell: Traps Hunter.
2012-10-06 08:41:13 -07:00
Retriman
7e651ed729 Core/Spell: Traps Hunter.
*Fix the range of the activation of the traps, according for video and comments.
*Fix armed traps in combat change in 3.0.2. see u http://us.battle.net/wow/en/game/patch-notes/3-0-2
2012-10-05 15:17:14 -04:00
kandera
42c047bebc Merge pull request #7839 from Warpten/soulwell
Core/Spells: Fixed Soulwell charges removal on use.
2012-10-05 06:04:24 -07:00
Spp
7831ecdb18 Core: "Initial support for C++11 compilers" 2012-10-02 15:06:19 +02:00
Nay
91fd408446 Merge pull request #7842 from Elron103/pull-requests2
Core/GameObject: Implement method GetDisplayId, use it for GameObjectModels
2012-09-23 07:49:18 -07:00
Warpten
a2c9c4098a Core/Spells: Fixed Soulwell getting two charges removed (or more) per click. 2012-09-22 21:28:37 +02:00
Elron103
d45a768810 Core/GameObject: Implement method GetDisplayId, use it for GameObjectModels 2012-09-22 18:01:51 +02:00
Subv
7dbc20626e Core/Entities: Fixed GameObject::FindNearestX for objects with the same coordinates.
closes #4581
2012-09-08 15:24:59 -05:00
Vincent-Michael
de15f70501 Core: Fix build 2012-09-04 22:39:04 +02:00
Nay
b4bc78e24b Corrections to previous merged in PR 2012-09-04 19:48:29 +01:00
Kandera
8afecc6572 Core/Gameobject: fix collision for gameobjects 2012-09-04 14:04:47 -04:00
Vincent-Michael
a4c115a494 Core: Fix build 2012-09-04 18:21:00 +02:00
Kandera
26af8ac65a Core/Gameobject: another attempt at fixing collision. chest gameobject initial collision provided by vincent-michael 2012-09-04 12:08:12 -04: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
Kandera
a1b3ec2e21 Core/Gameobject: fix build 2012-08-23 12:10:04 -04:00
Kandera
53db3d9700 Core/Gameobject: fix collision handling. 2012-08-23 11:58:57 -04:00
Vincent-Michael
6891fe6248 Core/Battlefield: Add missing stuff for wintergrasp 2012-08-21 23:03:30 +02:00
Subv
48e50b8254 Misc/Codestyle: Made some changes to function names 2012-08-19 11:07:21 -05:00
e000
65469c9ee9 Core/Gameobject: Properly toggle collision state when a gameobject is activated or spawned. 2012-08-12 20:04:02 +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
Shauren
28f8e42a69 Core/AI: Added EventInform hook for GameObjectAI and implemented it in SAI 2012-06-11 11:10:46 +02:00
Shauren
c7775c8d72 Core/Maps: Moved object respawn time storage from global to map level. This removes unneccessary locking since all objects run within its map's thread. 2012-06-07 23:20:57 +02:00
Shocker
fce6ec014d Merge pull request #6605 from Vincent-Michael/scale
Core/Misc: Add SetObjectScale function
2012-05-29 03:56:47 -07: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
Vincent-Michael
ab77e597b1 Add function for SetObjectScale
Author: NoFantasy
Source: Mangos
2012-05-26 23:14:57 +02:00