Commit Graph
293 Commits
Author SHA1 Message Date
Spp d7bcc25e38 Core/Map: Reenable error msg to find missing graveyards and use a better msg when a zone id is not found
--HG--
branch : trunk
2010-10-25 11:47:23 +02:00
Spp f381e74c10 Core/Map: Add log to find bad zone ids when trying to find a graveyard
--HG--
branch : trunk
2010-10-25 11:28:42 +02:00
Spp 739f336618 Core: Fix warnings
--HG--
branch : trunk
2010-10-25 11:25:42 +02:00
linencloth 2d692e9e87 Core/DBLayer: Optimize waypoint script loading
--HG--
branch : trunk
2010-10-25 02:31:19 +02:00
Shauren d03aeab9ad Scripts/Icecrown Citadel: Added Blood Prince Council script
Scripts/Icecrown Citadel: Festergut will not cast Vile Gas on melee targets if there are at least 3 (25 man: 8) ranged targets
Scripts/Icecrown Citadel: Festergut and Rotface gates will close with delay (when Putricide reaches the balcony)
Scripts/Icecrown Citadel: Replaced ASSERT(instance) with code disabling the AI if not inside instance
Core/Spells: Fixed TARGET_DEST_TARGET_RANDOM usage
Core/Scripts: Extended DamageDealt in AI to accept damage type as 3rd parameter
Scripts/Quests: Fixed quest "Unholy Infusion" (24749)

--HG--
branch : trunk
2010-10-24 21:27:02 +02:00
click de0a8f9777 Core/Guilds: Adjust size of guildMap by 1 element, not 512 (fix by machiavelli)
--HG--
branch : trunk
2010-10-22 21:07:11 +02:00
azazel db04f13777 Core/Guilds: fixed small logical error when counting total loaded guilds
--HG--
branch : trunk
2010-10-19 18:50:50 +06:00
azazel 64c1b6b465 Core/Guilds: replace container type for guilds (use vector instead of map).
Scripts/Misc: remove another warning (I can't pass by such things and I don't want to make separate commit for such changes).

--HG--
branch : trunk
2010-10-19 16:17:54 +06: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 91a97c7b83 DB-Schema/World/creature: Added possibility to override npcflag, unit_flags, dynamicflags in creature table
Core/Player: Fixed bad query in previous revision

--HG--
branch : trunk
2010-10-09 17:52:00 +02:00
runningnak3d 04566e5be9 Core/GameObject: Make chests (type 3) GOs active even if they have no loot if
a questID is defined and active for the player. It is possible for events to
happen even if the GO has no loot.
Original Author: NoFantasy
Optomized by: kamikazetg

--HG--
branch : trunk
2010-10-06 18:21:42 -06:00
runningnak3d 89833567d2 Core/WorldPacket: Add support for generic (type 5) GOs sparkling if objective
of quest.
Author: NoFantasy

--HG--
branch : trunk
2010-10-06 16:36:50 -06:00
click 613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02:00
click f0c4241ea4 Remove the accidental additions of CRLF-crap from the header updates
--HG--
branch : trunk
2010-10-07 15:35:36 +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
QAston caaa77deb2 Core/ScriptSystem:
Add basic code for runtime checks of function calls in AuraScripts
 Make AuraScript::PreventDefaultAction() do not take parameters and add description for the function
 Remove PreventDefaultEffect() from aura script, use PreventDefaultAction() instead
 Unload aura scripts memory on aura delete

--HG--
branch : trunk
2010-10-04 17:44:49 +02:00
Shocker 78803c9f09 Magic numbers cleanup:
- Replace many magic numbers with constants
- Use enum for vehicle flags/seat flags
- Correct structure for ItemRandomSuffixEntry

--HG--
branch : trunk
2010-09-28 08:21:51 +03:00
click ee705bba32 Core/OjectMgr: Properly load guildbank items (and some minor cleanups)
- fixes issues where guildbanks looked empty but weren't
- kudos to Linencloth for the discussion and thorough breakdown of this issue
Closes issue 4199.

--HG--
branch : trunk
2010-09-27 04:16:41 +02:00
click 461590832a Core: Generic cleanup (tab2spaces/whitespace removal)
--HG--
branch : trunk
2010-09-25 22:03:57 +02:00
Machiavelli 3c6dc32030 Core/DBLayer:
- Rewrite Field class to be able to store both binary prepared statement data and data from adhoc query resultsets
- Buffer the data of prepared statements using ResultSet and Field classes and let go of mysql c api structures after PreparedResultSet constructor. Fixes a race condition and thus a possible crash/data corruption (issue pointed out to Derex, basic suggestion by raczman)
- Conform PreparedResultSet and ResultSet to the same design standards, and using Field class as data buffer class for both
* NOTE: This means the fetching methods are uniform again, using ¨Field* fields = result->Fetch();¨ and access to elements trough fields[x].
* NOTE: for access to the correct row in prepared statements, ¨Field* fields = result->Fetch();¨ must ALWAYS be called inside the do { }while(result->NextRow()) loop.
* NOTE: This means that Field::GetString() returns std::string object and Field::GetCString() returns const char* pointer.

Still experimental and all that jazz, not recommended for production servers until feedback is given.

--HG--
branch : trunk
2010-09-24 22:16:21 +02:00
azazel eae0e5c822 Scripts/DB_Scripts: massive cleanup of SCRIPT_COMMAND_* related staff
* add union into ScriptInfo structure (thanks NoFantasy for the idea);
* move scripts methods from Map.cpp to new file MapScripts.cpp;
* remove magic numbers and introduce eScriptFlags enumeration.

It's just a beginning and more changes to come. Stay tuned!

--HG--
branch : trunk
2010-09-22 18:13:57 +06: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
Rat cf93313316 Scripts/DB_Scripts: enable DB scripts to use CHAT_MSG_RAID_BOSS_WHISPER (42) as chat type
--HG--
branch : trunk
2010-09-20 21:58:14 +02:00
Shauren a509976369 Core/DBLayer: Converted player login queries into prepared statements
Core/DBLayer: Added missing implementation for SQLQueryHolder::SetPreparedQuery

--HG--
branch : trunk
2010-09-20 18:20:40 +02:00
Machiavelli 188165b7bf Core/ObjectMgr: Fix another possible crash in guild loading. This should be the last of them.
--HG--
branch : trunk
2010-09-19 17:37:59 +02:00
Machiavelli 21c85a155c Core/ObjectMgr:
- Fix a startup crash in guild loading when loading from the guild subtables with an invalid guild ID.
- Abort loading guild subtables if no entries were found in guild table
- Code style cleanup in affected functions
Fixes issue #4095

--HG--
branch : trunk
2010-09-19 15:41:26 +02:00
Machiavelli a25ef43223 Core/DBLayer,ObjectMgr: ´linkedGuid´ parameter WORLD_REP_CRELINKED_RESPAWN should be uint32
--HG--
branch : trunk
2010-09-19 10:53:20 +02:00
silinoron 65a50ed3a2 Core/DBLayer: Some more prepared statements in ObjectMgr.
Core/ObjectMgr: Some additional cleanup.

--HG--
branch : trunk
2010-09-18 19:49:17 -07:00
silinoron 1e127eef73 Core/DBLayer: Change some regular statements to prepared statements.
Patch by [email protected].
Fixes issue #3774

--HG--
branch : trunk
2010-09-18 19:21:03 -07:00
linencloth 6bad14d5a2 Core: Revert async query handling in the guild loading code to remove coding style issues.
Also fixes the compiling on Linux.

--HG--
branch : trunk
2010-09-19 01:31:39 +02:00
linencloth 33babfa2d2 Core: Optimize guild loading
--HG--
branch : trunk
2010-09-18 21:24:05 +02:00
linencloth 19a76020bc Core: more cleanup at locale handling.
Also fixes some problems mainly with non English languages.

--HG--
branch : trunk
2010-09-17 19:55:54 +02:00
Shauren 164d6cce65 Core: Better tracking of quest POI loading (progress bar)
--HG--
branch : trunk
2010-09-17 14:58:30 +02:00
linencloth d8a854d6e0 Core: Cleanup locale handling.
It also fixes the recent problem of strange strings.

--HG--
branch : trunk
2010-09-17 07:04:29 +02:00
linencloth 5de48a67c6 Core: Optimize quest POI points loading
--HG--
branch : trunk
2010-09-17 04:25:00 +02:00
Shauren 05ccd476be Core/Quests: Added index column for quest poi points forcing them to load in certain order
--HG--
branch : trunk
2010-09-16 19:58:06 +02:00
azazel 236356628a Scripts/Quests:
* add support for quest 12634 Some Make Lemonade, Some Make Liquor (implement 51840 spell and Adventurous Dwarf AI, thanks akadabeer)
* implement dummy effect for 49587 Seeds of Nature's Wrath spell (used in quest 12459 That Which Creates Can Also Destroy)
* implement dummy effect for 19512 Apply Salve spell (used in quest 6124/6129 Curing the Sick)
Scripts/Misc: some cleanup in chat log
Core/Locales: fix issue when default locale for trinity_string strings was not used (thanks Aokromes for testing).

--HG--
branch : trunk
2010-09-16 13:14:14 +06:00
Shauren 102e51d620 Core/Pools: Implemented quest pooling
Core/DBLayer: Added GetNumRows() method to PreparedResultSet

--HG--
branch : trunk
2010-09-14 13:56:27 +02:00
Shauren 6d0a031a77 Core/Quests: Some cleanup in quest relation accessing
--HG--
branch : trunk
2010-09-13 13:18:27 +02:00
Spp c7289967b0 Code Style: Tab to spaces
--HG--
branch : trunk
2010-09-13 09:51:40 +02:00
Spp 6e55c22a12 Core: Add function to find players by low guid
--HG--
branch : trunk
2010-09-13 09:16:57 +02:00
click bf664b7a44 Cleanup/Core: Remove whitespace and tabs
--HG--
branch : trunk
2010-09-12 01:40:27 +02:00
Machiavelli a41e99223e Core/DBLayer:
* Rename QueryResult class to ResultSet
* Rename QueryResult_AutoPtr to QueryResult
* Declare ACE refcounted auto pointer for PreparedResultSet class

--HG--
branch : trunk
2010-09-11 21:10:54 +02:00
Spp 279d40efdc Core/Groups: Store group member roles to DB
--HG--
branch : trunk
2010-09-10 13:40:20 +02:00
silinoron be7d94f24e Add support for character race and faction transfers.
Based (loosely) on patch by Ner'zhul, DarkXuan, and [email protected].
Fixes issue #3429.

--HG--
branch : trunk
2010-09-05 13:12:24 -07:00
Shauren 0f9fe8dbeb Core/Players: Don't set instanceId to 0 when player is on transport during loading, there CAN be transports inside instances
Core/Scripts: Added waypoint id to OnRelocate transport hook
Core/Scripts: Make use of ZoneScript::GetGameObjectEntry at gameobject creation (makes it possible to override gameobject entries in instances)
Core/Transports: Call InstanceScript::EventInform for transport events
Core/Transports: Use guid from db for transports, not just its entry - adds partial support for instancing them (still cannot use transports table for it, but can spawn manually now)
Scripts/Icecrown Citadel: Fixed crash in Deathbringer Saurfang when event is started by more than one person (can't do this anymore)

Closes isssue #3749.

--HG--
branch : trunk
2010-09-02 10:40:32 +02:00
Machiavelli 2c1c391597 Core/DBLayer:
- Example implementation of prepared statement in ObjectMgr::SaveCreatureRespawntime
- #include "MYSQLThreading.h" -> #include "MySQLThreading.h" (*really* fixes Linux build)

--HG--
branch : trunk
2010-09-03 00:44:27 +02:00
Shauren cd182a1e8f Fixed build
Fixed wrong header includes in new database files, thx Thyros

--HG--
branch : trunk
2010-09-02 20:22:19 +02:00
Shauren e9ff90a967 Fix *SOME* build errors
--HG--
branch : trunk
2010-09-02 18:20:59 +02:00
Machiavelli 0117af4c37 Core/DBLayer:
- Implement deriviate classes of MySQLConnection for every database type (world, realm, characters)
- Make DatabaseWorkerPool templatized and use the above mentioned classes as parameter
- Implementation of the new types in code
(This is in preparation of prepared statement interface)

--HG--
branch : trunk
2010-09-02 17:47:50 +02:00