Commit Graph
309 Commits
Author SHA1 Message Date
click df66aee929 Yet more copyright header updates
--HG--
branch : trunk
2010-10-07 13:38:35 +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
Spp e27976102d Core/: Fix warnings
--HG--
branch : trunk
2010-09-28 14:48:17 +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
Rat bbf86641a1 Core/Scripts/SmartAI: removed test code
Core/CreatureTextMgr: added reload command
handle text from DB
handle grouped texts
handle repeatable/single texts based on probability
todo: sound/emote, code cleanup

--HG--
branch : trunk
2010-09-26 20:48:25 +02:00
Rat 9ea9effadd Core/Scripts/SmartAI: add test for TextMgr (temp)
Core/CreatureTextMgr: added basic chat function, you can now experiment with it if bored

--HG--
branch : trunk
2010-09-25 23:52:17 +02:00
click 461590832a Core: Generic cleanup (tab2spaces/whitespace removal)
--HG--
branch : trunk
2010-09-25 22:03:57 +02:00
Rat 28e90bbb60 Core/Scripts/SmartAI: added SmartAI files
Core/DBLayer/Texts: added CreatureTextMgr files
BuildSystem: added cmake for above files
Note: these are still under development and NOT USABLE
should not effect anything now

--HG--
branch : trunk
2010-09-25 18:47:03 +02:00
Liberate d036f7726e Core/PetAI: Implement a more correct way of findng if your pet's target has Crowd Control on it. Stuns like Hammer of Justice will not make your pet stop attacking anymore.
Pet's will only stop attacking if the Crowd Control is casted by the owner of the pet.
Fixes issue #4037

--HG--
branch : trunk
2010-09-18 12:33:16 +02:00
Liberate 23a49147cd Fix a typo in previous rev. I thought renaming a function shouldn't be too hard. I guess I was wrong...
--HG--
branch : trunk
2010-09-15 14:38:22 +02:00
Liberate 97a93573cb Core/PetAI: When commanding your pet to attack while being Passive, it will actually start attacking.
Fixes the PetAI so that your pet stops attacking when the target is Crowd Controlled (including Frost Nova, Fear, etc) unless you specifically ask it to.
Tested extensively with click.

--HG--
branch : trunk
2010-09-15 14:16:10 +02:00
click 88d0744f1b Core/PetAI: Make pets respect being in passive mode (fixes a few "stuck in front of target"-issues with pets on certain occations)
- setting pet into passive mode before reaching its target (after an attack-command) will break attack (return "home" to follow/stay position)
- setting pet into passive mode and fully attacking target will make it return home properly

--HG--
branch : trunk
2010-09-14 18:36:56 +02:00
Shauren 9bf50057a3 Typofix from previous revision
--HG--
branch : trunk
2010-09-12 19:23:52 +02:00
Shauren e0ffae436c Core/Quests: Fixed remaining issues with quest crediting (note: previous commits did not introduce issues, only revealed them)
Core/DBLayer: Fixed more compile warnings
Core/Spells: Corrected code style from revision 634af79146

Closes issue #3956.

--HG--
branch : trunk
2010-09-12 19:17:58 +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
click 128c60c84a Core/PetAI: Add additional safeguard against possible crash if me->GetCharmerOrOwner() is NULL in agressiontest
Patch by JacB667. Fixes issue #3766.

--HG--
branch : trunk
2010-09-03 22:47:03 +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
Spp 405f312918 Core: Fix more warnings
--HG--
branch : trunk
2010-08-30 15:25:15 +02:00
Shocker f81dcf55bb Add HealReceived event for Creature AI to be used in scripts
--HG--
branch : trunk
2010-08-29 06:01:14 +03:00
Shauren 73d3f210a9 Scripts/Icecrown Citadel: Add script for Deathbringer Saurfang (only missing alliance outro due to need of spawning and moving a transport)
Scripts/Icecrown Citadel: Corrected Lord Marrowgar, should no longer target tanks with Bone Spike Graveyard, his Coldflame should now spread properly
Core/Scripts: Moved Lady Deathwhisper Mana Barrier handler to scripts
Core/Scripts: Allow AuraScript to prevent default effects by effect index
Core/Scripts: Added Is25ManRaid() method to ScriptedAI, obviously used to check if raid is 25man
Core/Achievements: Pass m_caster to UpdateAchievementCriteria for ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET

--HG--
branch : trunk
2010-08-21 20:50:38 +02:00
azazel 5fa14f58dc Core/Cleanup:
* move repeating code into separate method for storing locale strings in ObjectMgr (copy/paste sucks, you know)
* fix 'signed/unsigned' warnings (at least in VS)
* fix some other warnings and cleanup relative code

--HG--
branch : trunk
2010-08-26 15:54:56 +06:00
azazel 341e6303ef Core:
* add helping methods for manipulating unit's health and use it where applicable
* fix some conversion warnings and cleanup code (formatting, CRLF, tabs to spaces)

--HG--
branch : trunk
2010-08-26 01:20:57 +06:00
silinoron 9b75f358ba Implement ACTION_T_MOUNT_TO_ENTRY_OR_MODEL (43) for creature eventAI.
Read doc/EventAI.txt for details.
Originally by NoFantasy.

--HG--
branch : trunk
2010-08-24 10:34:35 -07:00
silinoron 8649bee17f Replace World::getConfig with World::getFloatConfig, World::getIntConfig, and World::getBoolConfig.
Also fix a warning from a previous commit.

--HG--
branch : trunk
2010-08-23 19:56:47 -07:00
Spp 16d95d3115 Core: Fix some warnings
--HG--
branch : trunk
2010-08-23 07:51:19 +02:00
silinoron 5cbae843d5 Core/Game: fix all warnings related to converting doubles and floats.
--HG--
branch : trunk
2010-08-22 12:39:39 -07:00
click 670964803f Core: Fix more warnings, add new function sLog.outStaticDebug() that replaces DEBUG_LOG
--HG--
branch : trunk
2010-08-22 01:57:04 +02:00
Spp 572f7bbd1d Core: Remove "may be used uninitialized in this function", "unused parameter ‘xxx’" and "'xxx' defined but not used" warnings
--HG--
branch : trunk
2010-08-21 23:08:54 +02:00
Spp e7856a831c Core: Remove "enumeration value 'xxx' not handled in switch" warnings
--HG--
branch : trunk
2010-08-21 20:55:31 +02:00
Spp c3343638cb Core: Remove lots warnings:
- All "'xxx' will be initialized after 'yyy' when initialized here"
- Some "unused variable"
- Some "enumeration value 'xxx' not handled in switch"

--HG--
branch : trunk
2010-08-21 20:08:47 +02:00
Shauren d7814e88d8 Scripts/Icecrown Citadel: Added Lady Deathwhisper script, huge thanks to wowgargamel for script parts, timers and sniffs
Core/Scripts: Added GetPhaseMask() method to EventMap

--HG--
branch : trunk
2010-08-21 11:09:58 +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
azazel 0fad74e44a Cleanup in CreatureEventAI code (based on changes by SilverIce and VladimirMangos)
--HG--
branch : trunk
2010-08-16 17:07:02 +06:00
azazel e5c797cef6 * Fix remaining errors in scripts project
* Remove now obsolete ScriptedInstance.h file

--HG--
branch : trunk
2010-08-09 00:56:10 +06:00
QAston 617a56ba29 *Implement spell casting on transports (no more out of range error, etc)
*Add MO transports to ObjectAccessor storage
*Add functions Position::RelocateOffset and Position::GetPositionOffsetTo to help offset manipulations - BIG thanks to azazelkon for creating formulas!
*Add function to output debug info for MovementInfo and SpellCastTargets
*Throw ByteBufferException on incorrect packGUID read
*Add rfinish function to finish bytebuffer read.

--HG--
branch : trunk
2010-08-08 20:32:14 +02:00
click 1f80c7b3c0 Sourcefile sleanups -> tabs to spaces, remove whitespace - also update the cleanupscripts very slightly
--HG--
branch : trunk
2010-08-08 19:45:53 +02:00
azazel 590199d8e1 * Rename InstanceData to InstanceScript
* Rename *mgr to their new names in scripts project
* Mass convert all the scripts (NEEDS THOROUGH TESTING, because it was done automatically) Please, report bugs on issue tracker.

--HG--
branch : trunk
rename : src/server/game/Instances/InstanceData.cpp => src/server/game/Instances/InstanceScript.cpp
rename : src/server/game/Instances/InstanceData.h => src/server/game/Instances/InstanceScript.h
2010-08-08 22:54:58 +06:00
XTZGZoReX 87965e764e * Remove empty ScriptedSmartAI files.
--HG--
branch : trunk
2010-08-08 05:36:51 +02:00
XTZGZoReX 9083271a2f * Some singleton renames for consistency:
accmgr -> AccountMgr
objmgr -> ObjectMgr
auctionmgr -> sAuctionMgr
spellmgr -> sSpellMgr
CreatureEAI_Mgr -> sEventAIMgr
achievementmgr -> sAchievementMgr
gameeventmgr -> sGameEventMgr
sInstanceSaveManager -> sInstanceSaveMgr
poolhandler -> sPoolMgr

--HG--
branch : trunk
2010-08-08 05:25:45 +02:00
XTZGZoReX 93fc24ece9 * Remove lame ScriptedInstance define.
--HG--
branch : trunk
2010-08-08 05:09:27 +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
click 1565fe4ff4 Adjust maximum sizes of some healthcalculations over to utilize 64-bit uint
--HG--
branch : trunk
2010-08-06 05:11:28 +02:00
QAston 6353e7dd8c *Update movement enums - thanks to Zor for info.
*Add functions for position data streaming.

--HG--
branch : trunk
2010-08-04 14:39:45 +02:00
silinoron 14827321bf Add support for CreatureAI::DamageDealt used in a Zul'Aman script. Thanks joshwhedon.
--HG--
branch : trunk
2010-08-02 14:18:30 -07:00
QAston e5881d9590 *Cleanup in single target auras (thanks to JuliuSZS some useable debug info)
*Add ToInstanceMap() and ToMapInstanced() typecast functions and CAST_INST macro to use in scripts.

--HG--
branch : trunk
2010-07-31 01:41:32 +02:00
QAston 48b360097c *use ASSERT macro instead of regular assert for better output.
--HG--
branch : trunk
2010-07-30 20:04:28 +02:00
QAston d666ba26c1 *Thread safe player searcher in scripts.
--HG--
branch : trunk
2010-07-30 15:51:07 +02:00
click c595eb8ae9 First part of petAI logic cleanup : Hunter PetAI change: Ignore attacking CC'ed targets unless explicitly asked for by player
(thanks to QAston, Shauren, Liberate for the discussions and codehelp to sort this out properly)

--HG--
branch : trunk
2010-07-28 19:39:56 +02:00
click ba36f1eb23 Clean up old (and partially unused) Aggro() function and use EnterCombat() instead + fix some minor enum-typos (INTURRUPT -> INTERRUPT)
(fix by Azazel)

--HG--
branch : trunk
2010-07-19 14:17:30 +02:00
click 673c652ba6 change "IN_MILISECONDS" to proper english "IN_MILLISECONDS"
--HG--
branch : trunk
2010-07-12 00:30:17 +02:00