Commit Graph

7107 Commits

Author SHA1 Message Date
click
ace057f1d7 Core/Build: Finalize the non-PCH building - now compiles on all platforms in nonPCH-mode, and in PCH (unless we've fucked up somewhere)
--HG--
branch : trunk
2010-08-21 11:36:52 +02:00
click
d16656bb5d Core/Guild: Compile properly on *nix + fix so we don't delete the same item twice on disband (thanks shauren)
--HG--
branch : trunk
2010-08-21 10:31:46 +02:00
click
f7ad5b2624 Core/Build: Clean up more nonPCH-issues + fix a warning in Timer.h (unsigned/signed cast)
--HG--
branch : trunk
2010-08-21 09:53:04 +02:00
John Holiver
6e6d62def9 Core: Creature should aggro player when players aggro creature during SetInCombatWithZone (otherwise, creature will remain not in combat).
--HG--
branch : trunk
2010-08-21 02:15:19 -03:00
John Holiver
fcca6060d0 Core/Spells/Scripts: Another spell effect needed for ToCr (Paralytic Toxin). Thanks for Dark0r.
--HG--
branch : trunk
2010-08-21 01:02:38 -03:00
Machiavelli
8cfc3782e3 Fix linux build (with PCH enabled, mind you)
--HG--
branch : trunk
2010-08-21 03:44:02 +02:00
Machiavelli
994186f267 DB Layer:
- Make SQL Transactions actual objects used in code. (Thanks to Derex for the idea)
* Uncommitted transactions will be automatically rolled back and cleaned up using ACE_Refcounted_Auto_Ptr, so no need to call Rollback() in the code.
* Prevents recursive transactions and makes developers aware of transactions going on.
* Gets rid of unneccesary overhead iterating over a concurrent map.
- Some cleanups in affected code, including better usage of transaction control in AH / mail related code to prevent data loss.

*** Experimental, use at own risk, recommended to backup your DBs. ***

--HG--
branch : trunk
2010-08-21 03:19:25 +02:00
click
a7498d2f56 Core/Includes: Include ACE as an external dependency, not local (#include "ace/something.h" -> #include <ace/something.h>)
--HG--
branch : trunk
2010-08-21 02:27:12 +02:00
silinoron
d89671727b fix r905a640a2d - tabs to spaces, and add a forgetten break.
--HG--
branch : trunk
2010-08-20 15:22:42 -07:00
Liberate
6f605cb0e5 Fixes silly gossip menus of quest givers.
Fixes issue #3484

--HG--
branch : trunk
2010-08-20 22:03:19 +02:00
silinoron
43b1c2dba4 * Remove support for map-based random number generation (which seems unused).
* Re-add in support for the old mersenne twister for those whose processors don't support SSE2.
* Toggling whether or not you are using SFMT is as easy as checking a CMake flag, USE_SFMT, which defaults to 0.

--HG--
branch : trunk
2010-08-20 12:42:14 -07:00
John Holiver
ca350b4758 Core/Spells/Scripts: Needed spell fixes for some Trial of the Crusader bosses (Leeching Swarm, Slime Pool and Burning Bile)
--HG--
branch : trunk
2010-08-20 14:11:26 -03:00
azazel
812b6694f9 Core/DB scripts:
* provide more information in error messages for DB scripts
* cleanup in DB scripts code

--HG--
branch : trunk
2010-08-20 14:57:05 +06:00
azazel
a200de3b5f Core
* Cleanup in LoadScripts method and related stuff (use enum instead of string to differentiate between script maps)
* Fix creation of id and sanity checks for spell_scripts. Should fix warnings about missing spells with id > 65535

--HG--
branch : trunk
2010-08-20 12:19:14 +06:00
click
8d62f4e6ce Buildsystem: Add helperscripts to detect SSE2 extensions, and optimize platform compileflags for the architecture
+ minifix in scripts (wrong includedir)

--HG--
branch : trunk
2010-08-20 04:09:39 +02:00
click
6501948dc8 Buildsystem/Core: Adjust filenames to their correct case
--HG--
branch : trunk
2010-08-20 02:10:08 +02:00
Spp
c75ab7fd28 Dungeon Finder: Add a check to avoid rolechecks with no dungeon (Only happen with groups loaded from DB)
This fixes a crash in UpdateProposal.

Updates issue 3465

--HG--
branch : trunk
2010-08-20 01:27:05 +02:00
silinoron
ac59ff802b Switch to using SIMD-oriented Fast Mersenne Twister for random number generation.
In testing, reduced random number generation time by a factor of 8-10.
Drops support for processors older than Pentium 4.
Drop Mersenne Twister library; use a C++ SFMT library.

--HG--
branch : trunk
2010-08-19 16:13:10 -07:00
silinoron
d58e19385f Fix combustion crits with area of effect spells - patch by moriquendu.
--HG--
branch : trunk
2010-08-19 10:37:20 -07:00
azazel
5a237a8ea9 Add missing holiday id <-> BG id definition for AB (by Quriq14)
--HG--
branch : trunk
2010-08-19 22:24:22 +06:00
Shauren
a693f49bd1 Vehicles: Prohibit entering vehicle in combat only if it is a multi-passenger mount
Scripts/Icecrown Citadel: Changed Bone Spike id and remove teleport z+3 hack, its a vehicle, thx wowgargamel
Scripts/Icecrown Citadel: Fixed typo in variable name, thx Paradox
Scripts/Icecrown Citadel: Added warning emote for Bone Storm

--HG--
branch : trunk
2010-08-19 16:40:47 +02:00
QAston
30bcf8c659 Scripts/Spell: extend SpellScript class: add target aura accessors and functions which prevent various effects of the spell from being executed. Check out SpellScript.h for details
--HG--
branch : trunk
2010-08-19 14:31:31 +02:00
azazel
d4605c5f7f Fix (in theory) bug (already tapped error) for spells with banish mechanics (Banish, Cyclone).
Closes issue #1945.
Closes issue #2402.

--HG--
branch : trunk
2010-08-19 16:20:06 +06:00
Machiavelli
3932fc8c83 - Fix Linux build (huge thanks to Aokromes for testing as always)
- Some work towards resolving the crash on shutdown by implementing a shutdown task

--HG--
branch : trunk
2010-08-19 00:13:09 +02:00
Spp
fb9c6c96c7 Dungeon Finder: Some optimizations to find algorithm
* Select first match as valid (Before it was storing all possible and later selecting one)
* Add some checks to make sure no unnecessary calcs are done

--HG--
branch : trunk
2010-08-18 22:50:04 +02:00
Spp
eebb36ba58 Dungeon Finder: Fix a possible crash in UpdateProposal
--HG--
branch : trunk
2010-08-18 22:32:11 +02:00
John Holiver
8bf208c0fd Core/Spells: SPELL_ATTR_CU_IGNORE_ARMOR to Impale(65919) several difficulties
--HG--
branch : trunk
2010-08-18 15:21:24 -03:00
Machiavelli
d845a903b1 DBLayer:
- Use ACE_Future and ACE_Future_Set for async SQL queries with callback
* Callbacks will now be executed from the thread and object that scheduled the request, instead of the world runnable thread (and thus are no longer dependent on the 50ms forced sleep time).
* This design gets rid of a potential DOS loophole in the resultqueue system - unique requests will be cancelled when re-requested.
- Drop now redundant SQLQueryTask, SQLResultQueue, SQLResultQueueTask operations.
- Drop now redundant CharacterHandler class
- Change static callback functions in WorldSession to normal functions.

Thanks to Derex and Zor for advice along the way.

--HG--
branch : trunk
2010-08-18 19:48:51 +02:00
QAston
2ffe785765 Core/Spells: add SPELL_ATTR_CU_IGNORE_ARMOR to the avalible custom attribute list, make some spells use the attribute. Research made with JohnHoliver and Shauren
--HG--
branch : trunk
2010-08-18 19:26:07 +02:00
enjoi
b8a613647f Core/ObjectMgr: Prevent vehicleid from having an incorrect value when reloaded with .reload creature_template.
--HG--
branch : trunk
2010-08-18 15:49:51 +01:00
Shauren
71a5320eda Scripts: Added script for Lord Marrowgar
Added base script for Icecrown Citadel instance

--HG--
branch : trunk
2010-08-18 17:19:47 +02:00
QAston
cb70376c6e *Backout radaaba37a4. Brings back command table caching. Thanks to Machiavelli for spotting the issue.
--HG--
branch : trunk
2010-08-18 15:06:28 +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
azazel
9d45f29593 Making sure CreaturesAddon are re-loaded after creature evade (by NoFantasy).
--HG--
branch : trunk
2010-08-18 18:10:42 +06:00
enjoi
e20a541494 Core/Vehicles: Players cannot enter a vehicle when in combat. Fixes issue 1966.
--HG--
branch : trunk
2010-08-18 06:51:59 +01:00
enjoi
774eb840e9 Properly return command table every time it is called, rather then just the first time.
Fixes the issue with .command showing the wrong information.
Fixes issue 3459.

--HG--
branch : trunk
2010-08-18 04:50:22 +01:00
silinoron
d6fe4b23e9 Add support for recruit-a-friend XP and reputation multipliers.
More research needs to be done to implement summoning and granting levels.

--HG--
branch : trunk
2010-08-17 19:18:09 -07:00
Machiavelli
87218eadcd * HIGHLY EXPERIMENTAL - USE AT OWN RISK *
Database Layer:
- Implement connection pooling: Instead of 1 delay thread per database, you can configure between 1 and 32 worker threads that have a seperate thread in the core and have a seperate connection to the MySQL server (based on raczman/Albator´s database layer for Trinitycore3)
- Implement a configurable thread bundle for synchroneous requests from seperate core threads (see worldserver.conf.dist for more info)
- Every mapupdate thread now has its seperate MySQL connection to the world and characters database
- Drop inconsistent PExecuteLog function - query logging will be implemented CONSISTENTLY later
- Drop current prepared statement interface - this will be done *properly* later
- You´ll need to update your worldserver.conf and authserver.conf
- You´re recommended to make a backup of your databases before using this.
* HIGHLY EXPERIMENTAL - USE AT OWN RISK *
* HIGHLY EXPERIMENTAL - USE AT OWN RISK *
etc.

--HG--
branch : trunk
2010-08-18 02:25:52 +02:00
Spp
1ab2bd6d58 Dungeon Finder: Update wait time after a successful proposal
--HG--
branch : trunk
2010-08-18 00:30:17 +02:00
Spp
7a13043af4 Dungeon Finder: Properly remove from current and new queues after a proposal was found (Better fix than b70906fded)
--HG--
branch : trunk
2010-08-18 00:32:11 +02:00
azazel
66fcd52106 Add more methods to SpellScript.
Spells cleanup: move spells from the core to scripts.

* Shaman spells: 39610 Mana Tide Totem, 1535 Fire Nova (and ranks)
* Death Knight spells: 55090 Scourge Strike (and ranks), 49158 Corpse Explosion (and ranks), 50524 Runic Power Feed
* Druid spells: 54846 Glyph of Starfire
* Warlock spells: 6201 Create Healthstone (and ranks), 47422 Everlasting Affliction, 47193 Demonic Empowerment, 63521 Guarded by The Light
* Hunter spells: 37506 Scatter Shot, 53412 Invigoration, 53209 Chimera Shot
* Quest spells: 45449 Arcane Prisoner Rescue (quest 11587), 46023 The Ultrasonic Screwdriver (quest 11730). Closes issue #3068

Clean old code for hunter's Heart of the Phoenix, move script effect of hunter's Master's Call to corresponding script.
Move DK's Hungering Cold to spell_scripts table (needs DB support)

--HG--
branch : trunk
2010-08-18 00:20:23 +06: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
Spp
c23bb8c58d Dungeon Finder: Add null check log to track an error (Will only appear after a server crash with Lfg groups)
--HG--
branch : trunk
2010-08-17 13:36:09 +02:00
Spp
54b4345481 Dungeon Finder: Fix proposals when joining the queue as LfgGroup with 5 members. Success was never possible
This fixes a inconsistency and a possible deadloop

--HG--
branch : trunk
2010-08-17 13:18:18 +02:00
Spp
0c7f37dab3 Dungeon Finder: Properly remove a player/group from queue after a proposal is formed
This should fix some of the inconsistencies

--HG--
branch : trunk
2010-08-17 11:38:30 +02:00
Spp
6009ac3f45 Dungeon Finder: Simplify 'Offer to continue' checks and allow to join non-random dungeon after a random one is assigned
--HG--
branch : trunk
2010-08-17 11:26:31 +02:00
Spp
46d06a859b Dungeon Finder: Drop use of config value CONFIG_INSTANCE_IGNORE_LEVEL
--HG--
branch : trunk
2010-08-17 10:24:52 +02:00
click
407f39cbac Yay for typos...
--HG--
branch : trunk
2010-08-17 12:09:45 +02:00
click
3695accf50 Core: Add support for reloading gossip_scripts + add missing SQL for earlier inserted commands (gossip_menu and gossip_menu_option)
Thanks to Kaelima
Fixes issue 2433

--HG--
branch : trunk
2010-08-17 11:49:53 +02:00
click
26386d1e20 Core: Use enum-size for CONFIG_START_ALL_EXPLORED (was hardcoded to 64, not using the proper size of the enum PLAYER_EXPLORED_ZONES_SIZE)
Fixes issue 2726

--HG--
branch : trunk
2010-08-17 11:27:47 +02:00