aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/TC1_1569_world_scripts.sql3
-rw-r--r--src/bindings/scripts/CMakeLists.txt2
-rw-r--r--src/bindings/scripts/VC71/71ScriptDev2.vcproj2282
-rw-r--r--src/bindings/scripts/VC80/80ScriptDev2.vcproj8
-rw-r--r--src/bindings/scripts/VC90/90ScriptDev2.vcproj8
-rw-r--r--src/bindings/scripts/scripts/zone/razorfen_kraul/def_razorfen_kraul.h21
-rw-r--r--src/bindings/scripts/scripts/zone/razorfen_kraul/instance_razorfen_kraul.cpp119
-rw-r--r--src/bindings/scripts/scripts/zone/razorfen_kraul/razorfen_kraul.cpp53
-rw-r--r--src/game/Chat.h5
-rw-r--r--src/game/Level2.cpp1
-rw-r--r--src/trinitycore/CMakeLists.txt1
-rw-r--r--src/trinitycore/CliRunnable.cpp92
12 files changed, 2575 insertions, 20 deletions
diff --git a/sql/updates/TC1_1569_world_scripts.sql b/sql/updates/TC1_1569_world_scripts.sql
new file mode 100644
index 00000000000..afe0759e711
--- /dev/null
+++ b/sql/updates/TC1_1569_world_scripts.sql
@@ -0,0 +1,3 @@
+-- Razorfen Kraul
+UPDATE `instance_template` SET `script` = 'instance_razorfen_kraul' WHERE `map` = '47' LIMIT 1;
+UPDATE `creature_template` SET `ScriptName` = 'npc_deaths_head_ward_keeper' WHERE `entry` = '4625' LIMIT 1; \ No newline at end of file
diff --git a/src/bindings/scripts/CMakeLists.txt b/src/bindings/scripts/CMakeLists.txt
index 2dbf2545d3b..85c168992f9 100644
--- a/src/bindings/scripts/CMakeLists.txt
+++ b/src/bindings/scripts/CMakeLists.txt
@@ -248,6 +248,8 @@ SET(trinityscript_LIB_SRCS
scripts/zone/orgrimmar/orgrimmar.cpp
scripts/zone/razorfen_downs/boss_amnennar_the_coldbringer.cpp
scripts/zone/razorfen_downs/razorfen_downs.cpp
+ scripts/zone/razorfen_kraul/def_razorfen_kraul.h
+ scripts/zone/razorfen_kraul/instance_razorfen_kraul.cpp
scripts/zone/razorfen_kraul/razorfen_kraul.cpp
scripts/zone/ruins_of_ahnqiraj/boss_ayamiss.cpp
scripts/zone/ruins_of_ahnqiraj/boss_buru.cpp
diff --git a/src/bindings/scripts/VC71/71ScriptDev2.vcproj b/src/bindings/scripts/VC71/71ScriptDev2.vcproj
new file mode 100644
index 00000000000..3fb0cd7ad8f
--- /dev/null
+++ b/src/bindings/scripts/VC71/71ScriptDev2.vcproj
@@ -0,0 +1,2282 @@
+<?xml version="1.0" encoding="windows-1251"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="7,10"
+ Name="TrinityScript"
+ ProjectGUID="{4295C8A9-79B7-4354-8064-F05FB9CA0C96}"
+ RootNamespace="ScriptDev2"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="..\..\..\..\bin\$(PlatformName)_$(ConfigurationName)"
+ IntermediateDirectory=".\ScriptDev2__$(PlatformName)_$(ConfigurationName)"
+ ConfigurationType="2"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\..\..\..\dep\include\;..\..\..\shared\;..\..\..\framework\;..\..\..\game\;..\include\;..\..\..\..\dep\ACE_wrappers"
+ PreprocessorDefinitions="WIN32;_DEBUG;MANGOS_DEBUG;_WINDOWS;_USRDLL;SCRIPT"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="2"
+ PrecompiledHeaderThrough="precompiled.h"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="trinitycore.lib zthread.lib"
+ OutputFile="$(OutDir)/TrinityScript.dll"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="..\..\..\..\win\VC71\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC71\trinitycore__$(PlatformName)_$(ConfigurationName)"
+ GenerateDebugInformation="true"
+ ProgramDatabaseFile="$(OutDir)/MaNGOSScript.pdb"
+ SubSystem="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ ImportLibrary="$(OutDir)/TrinityScript.lib"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="..\..\..\..\bin\$(PlatformName)_$(ConfigurationName)"
+ IntermediateDirectory=".\ScriptDev2__$(PlatformName)_$(ConfigurationName)"
+ ConfigurationType="2"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\..\..\..\dep\include\;..\..\..\shared\;..\..\..\framework\;..\..\..\game\;..\include\;..\..\..\..\dep\ACE_wrappers"
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;SCRIPT"
+ RuntimeLibrary="2"
+ EnableEnhancedInstructionSet="1"
+ UsePrecompiledHeader="2"
+ PrecompiledHeaderThrough="precompiled.h"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="true"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="trinitycore.lib zthread.lib"
+ OutputFile="$(OutDir)/TrinityScript.dll"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="..\..\..\..\win\VC71\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC71\trinitycore__$(PlatformName)_$(ConfigurationName)"
+ GenerateDebugInformation="false"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ ImportLibrary="$(OutDir)/TrinityScript.lib"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Scripts"
+ >
+ <Filter
+ Name="boss"
+ >
+ <File
+ RelativePath="..\scripts\boss\boss_emeriss.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\boss\boss_lethon.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\boss\boss_taerar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\boss\boss_ysondre.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="creature"
+ >
+ <File
+ RelativePath="..\scripts\creature\mob_event_ai.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\creature\mob_event_ai.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\creature\mob_generic_creature.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\creature\simple_ai.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\creature\simple_ai.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="guard"
+ >
+ <File
+ RelativePath="..\scripts\guard\guard_ai.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\guard\guard_ai.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\guard\guards.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="honor"
+ >
+ </Filter>
+ <Filter
+ Name="npc"
+ >
+ <File
+ RelativePath="..\scripts\npc\npc_escortAI.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\npc\npc_escortAI.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\npc\npc_innkeeper.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\npc\npc_professions.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\npc\npcs_special.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="servers"
+ >
+ </Filter>
+ <Filter
+ Name="custom"
+ >
+ <File
+ RelativePath="..\scripts\custom\custom_example.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\custom\custom_gossip_codebox.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\custom\test.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="areatrigger"
+ >
+ <File
+ RelativePath="..\scripts\areatrigger\areatrigger_scripts.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="go"
+ >
+ <File
+ RelativePath="..\scripts\go\go_scripts.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="item"
+ >
+ <File
+ RelativePath="..\scripts\item\item_scripts.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\item\item_test.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="zone"
+ >
+ <Filter
+ Name="Alterac Mountains"
+ >
+ <File
+ RelativePath="..\scripts\zone\alterac_mountains\alterac_mountains.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Ashenvale Forest"
+ >
+ <File
+ RelativePath="..\scripts\zone\ashenvale_forest\ashenvale.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Azshara"
+ >
+ <File
+ RelativePath="..\scripts\zone\azshara\azshara.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\azshara\boss_azuregos.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Badlands"
+ >
+ </Filter>
+ <Filter
+ Name="Barrens"
+ >
+ <File
+ RelativePath="..\scripts\zone\barrens\the_barrens.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Blackfathom Depths"
+ >
+ </Filter>
+ <Filter
+ Name="Arathi Highlands"
+ >
+ <File
+ RelativePath="..\scripts\zone\arathi_highlands\arathi_highlands.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Deadmines"
+ >
+ <File
+ RelativePath="..\scripts\zone\deadmines\deadmines.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\deadmines\def_deadmines.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Deadwind Pass"
+ >
+ </Filter>
+ <Filter
+ Name="Desolace"
+ >
+ </Filter>
+ <Filter
+ Name="Dire Maul"
+ >
+ </Filter>
+ <Filter
+ Name="Dun Morogh"
+ >
+ <File
+ RelativePath="..\scripts\zone\dun_morogh\dun_morogh.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Durotar"
+ >
+ </Filter>
+ <Filter
+ Name="Duskwood"
+ >
+ </Filter>
+ <Filter
+ Name="Dustwallow Marsh"
+ >
+ <File
+ RelativePath="..\scripts\zone\dustwallow_marsh\dustwallow_marsh.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Blackwing Lair"
+ >
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_broodlord_lashlayer.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_chromaggus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_ebonroc.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_firemaw.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_flamegor.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_nefarian.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_razorgore.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_vaelastrasz.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\boss_victor_nefarius.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackwing_lair\instance_blackwing_lair.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Bloodmyst Isle"
+ >
+ <File
+ RelativePath="..\scripts\zone\bloodmyst_isle\bloodmyst_isle.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Gruul&apos;s Lair"
+ >
+ <File
+ RelativePath="..\scripts\zone\gruuls_lair\boss_gruul.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\gruuls_lair\boss_high_king_maulgar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\gruuls_lair\def_gruuls_lair.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\gruuls_lair\instance_gruuls_lair.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Burning Steppes"
+ >
+ <File
+ RelativePath="..\scripts\zone\burning_steppes\burning_steppes.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Darkshore"
+ >
+ <File
+ RelativePath="..\scripts\zone\darkshore\darkshore.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Eastern Plaguelands"
+ >
+ <File
+ RelativePath="..\scripts\zone\eastern_plaguelands\eastern_plaguelands.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Moonglade"
+ >
+ <File
+ RelativePath="..\scripts\zone\moonglade\moonglade.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Razorfen Kraul"
+ >
+ <File
+ RelativePath="..\scripts\zone\razorfen_kraul\razorfen_kraul.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\razorfen_kraul\instance_razorfen_kraul.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\razorfen_kraul\def_razorfen_kraul.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Redridge Mountains"
+ >
+ </Filter>
+ <Filter
+ Name="Ruins of Ahn&apos;Qiraj"
+ >
+ <File
+ RelativePath="..\scripts\zone\ruins_of_ahnqiraj\boss_ayamiss.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\ruins_of_ahnqiraj\boss_buru.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\ruins_of_ahnqiraj\boss_kurinnaxx.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\ruins_of_ahnqiraj\boss_moam.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\ruins_of_ahnqiraj\boss_ossirian.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\ruins_of_ahnqiraj\boss_rajaxx.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\ruins_of_ahnqiraj\instance_ruins_of_ahnqiraj.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Swamp of Sorrows"
+ >
+ </Filter>
+ <Filter
+ Name="Scarlet Monastery"
+ >
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_arcanist_doan.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_azshir_the_sleepless.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_bloodmage_thalnos.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_headless_horseman.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_herod.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_high_inquisitor_fairbanks.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_houndmaster_loksey.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_interrogator_vishas.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_mograine_and_whitemane.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\boss_scorn.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\def_scarlet_monastery.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scarlet_monastery\instance_scarlet_monastery.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Scholomance"
+ >
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_darkmaster_gandling.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_death_knight_darkreaver.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_doctor_theolen_krastinov.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_illucia_barov.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_instructor_malicia.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_jandice_barov.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_kormok.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_lord_alexei_barov.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_lorekeeper_polkelt.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_ras_frostwhisper.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_the_ravenian.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\boss_vectus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\def_scholomance.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\scholomance\instance_scholomance.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Searing Gorge"
+ >
+ <File
+ RelativePath="..\scripts\zone\searing_gorge\searing_gorge.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Elwynn Forest"
+ >
+ <File
+ RelativePath="..\scripts\zone\elwynn_forest\elwynn_forest.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Felwood"
+ >
+ <File
+ RelativePath="..\scripts\zone\felwood\felwood.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Feralas"
+ >
+ <File
+ RelativePath="..\scripts\zone\feralas\feralas.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Gnomeregan"
+ >
+ </Filter>
+ <Filter
+ Name="Hillsbrad Foothills"
+ >
+ </Filter>
+ <Filter
+ Name="Hinterlands"
+ >
+ </Filter>
+ <Filter
+ Name="Maraudon"
+ >
+ <File
+ RelativePath="..\scripts\zone\maraudon\boss_celebras_the_cursed.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\maraudon\boss_landslide.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\maraudon\boss_noxxion.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\maraudon\boss_princess_theradras.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Molten Core"
+ >
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_baron_geddon.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_garr.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_gehennas.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_golemagg.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_lucifron.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_magmadar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_majordomo_executus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_ragnaros.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_shazzrah.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\boss_sulfuron_harbinger.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\def_molten_core.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\instance_molten_core.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\molten_core\molten_core.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Mulgore"
+ >
+ <File
+ RelativePath="..\scripts\zone\mulgore\mulgore.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Naxxramas"
+ >
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_anubrekhan.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_faerlina.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_four_horsemen.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_gluth.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_gothik.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_grobbulus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_heigan.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_highlord_mograine.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_kelthuzad.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_loatheb.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_maexxna.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_noth.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_patchwerk.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_razuvious.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_sapphiron.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\boss_thaddius.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\naxxramas\instance_naxxramas.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Onyxia&apos;s Lair"
+ >
+ <File
+ RelativePath="..\scripts\zone\onyxias_lair\boss_onyxia.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Ragefire Chasm"
+ >
+ </Filter>
+ <Filter
+ Name="Razorfen Downs"
+ >
+ <File
+ RelativePath="..\scripts\zone\razorfen_downs\boss_amnennar_the_coldbringer.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Shadowfang Keep"
+ >
+ <File
+ RelativePath="..\scripts\zone\shadowfang_keep\def_shadowfang_keep.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\shadowfang_keep\instance_shadowfang_keep.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\shadowfang_keep\shadowfang_keep.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Stonetalon Mountains"
+ >
+ <File
+ RelativePath="..\scripts\zone\stonetalon_mountains\stonetalon_mountains.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Stranglethorn Vale"
+ >
+ <File
+ RelativePath="..\scripts\zone\stranglethorn_vale\stranglethorn_vale.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Stratholme"
+ >
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_baron_rivendare.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_baroness_anastari.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_cannon_master_willey.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_dathrohan_balnazzar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_magistrate_barthilas.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_maleki_the_pallid.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_nerubenkan.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_order_of_silver_hand.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_postmaster_malown.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_ramstein_the_gorger.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\boss_timmy_the_cruel.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\def_stratholme.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\instance_stratholme.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\stratholme\stratholme.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Sunken Temple"
+ >
+ </Filter>
+ <Filter
+ Name="Tanaris"
+ >
+ <File
+ RelativePath="..\scripts\zone\tanaris\tanaris.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Teldrassil"
+ >
+ </Filter>
+ <Filter
+ Name="Temple of Ahn&apos;Qiraj"
+ >
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_bug_trio.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_cthun.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_fankriss.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_huhuran.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_ouro.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_sartura.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_skeram.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_twinemperors.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\boss_viscidus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\def_temple_of_ahnqiraj.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\instance_temple_of_ahnqiraj.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\temple_of_ahnqiraj\mob_anubisath_sentinel.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Thousand Needles"
+ >
+ <File
+ RelativePath="..\scripts\zone\thousand_needles\thousand_needles.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Silithus"
+ >
+ <File
+ RelativePath="..\scripts\zone\silithus\silithus.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Silverpine Forest"
+ >
+ <File
+ RelativePath="..\scripts\zone\silverpine_forest\silverpine_forest.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Stockade"
+ >
+ </Filter>
+ <Filter
+ Name="Tirisfal Glades"
+ >
+ <File
+ RelativePath="..\scripts\zone\tirisfal_glades\tirisfal_glades.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Wailing Caverns"
+ >
+ <File
+ RelativePath="..\scripts\zone\wailing_caverns\instance_wailing_caverns.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Western Plaguelands"
+ >
+ <File
+ RelativePath="..\scripts\zone\western_plaguelands\western_plaguelands.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Westfall"
+ >
+ <File
+ RelativePath="..\scripts\zone\westfall\westfall.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Wetlands"
+ >
+ </Filter>
+ <Filter
+ Name="Winterspring"
+ >
+ <File
+ RelativePath="..\scripts\zone\winterspring\winterspring.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Zul&apos;Farrak"
+ >
+ <File
+ RelativePath="..\scripts\zone\zulfarrak\zulfarrak.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Zul&apos;Gurub"
+ >
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_arlokk.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_gahzranka.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_grilek.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_hakkar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_hazzarah.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_jeklik.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_jindo.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_mandokir.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_marli.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_renataki.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_thekal.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_venoxis.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\boss_wushoolay.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\def_zulgurub.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulgurub\instance_zulgurub.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Uldaman"
+ >
+ <File
+ RelativePath="..\scripts\zone\uldaman\boss_archaedas.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\uldaman\boss_ironaya.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\uldaman\instance_uldaman.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\uldaman\uldaman.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Un&apos;Goro Crater"
+ >
+ <File
+ RelativePath="..\scripts\zone\ungoro_crater\ungoro_crater.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Aunchindoun"
+ >
+ <Filter
+ Name="Auchenai Crypts"
+ >
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\auchenai_crypts\boss_exarch_maladaar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\auchenai_crypts\boss_shirrak_the_dead_watcher.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Mana Tombs"
+ >
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\mana_tombs\boss_nexusprince_shaffar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\mana_tombs\boss_pandemonius.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Sethekk Halls"
+ >
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\sethekk_halls\boss_darkweaver_syth.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\sethekk_halls\boss_tailonking_ikiss.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\sethekk_halls\def_sethekk_halls.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\sethekk_halls\instance_sethekk_halls.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Shadow Labyrinth"
+ >
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\shadow_labyrinth\boss_ambassador_hellmaw.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\shadow_labyrinth\boss_blackheart_the_inciter.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\shadow_labyrinth\boss_grandmaster_vorpil.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\shadow_labyrinth\boss_murmur.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\shadow_labyrinth\def_shadow_labyrinth.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\aunchindoun\shadow_labyrinth\instance_shadow_labyrinth.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Azuremyst Isle"
+ >
+ <File
+ RelativePath="..\scripts\zone\azuremyst_isle\azuremyst_isle.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Black Temple"
+ >
+ <File
+ RelativePath="..\scripts\zone\black_temple\black_temple.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_bloodboil.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_illidan.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_mother_shahraz.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_reliquary_of_souls.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_shade_of_akama.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_supremus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_teron_gorefiend.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\boss_warlord_najentus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\def_black_temple.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\illidari_council.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\black_temple\instance_black_temple.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Eversong Woods"
+ >
+ <File
+ RelativePath="..\scripts\zone\eversong_woods\eversong_woods.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Ghostlands"
+ >
+ <File
+ RelativePath="..\scripts\zone\ghostlands\ghostlands.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Blade&apos;s Edge Mountains"
+ >
+ <File
+ RelativePath="..\scripts\zone\blades_edge_mountains\blades_edge_mountains.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Blasted Lands"
+ >
+ <File
+ RelativePath="..\scripts\zone\blasted_lands\blasted_lands.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blasted_lands\boss_kruul.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Hellfire Citadel"
+ >
+ <Filter
+ Name="Blood Furnace"
+ >
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\blood_furnace\boss_broggok.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\blood_furnace\boss_kelidan_the_breaker.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\blood_furnace\boss_the_maker.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\blood_furnace\def_blood_furnace.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\blood_furnace\instance_blood_furnace.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Magtheridon&apos;s lair"
+ >
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\magtheridons_lair\boss_magtheridon.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\magtheridons_lair\def_magtheridons_lair.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\magtheridons_lair\instance_magtheridons_lair.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Hellfire Ramparts"
+ >
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\hellfire_ramparts\boss_omor_the_unscarred.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\hellfire_ramparts\boss_watchkeeper_gargolmar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\hellfire_ramparts\boss_vazruden_the_herald.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Shattered Halls"
+ >
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\shattered_halls\boss_nethekurse.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\shattered_halls\boss_warbringer_omrogg.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\shattered_halls\boss_warchief_kargath_bladefist.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\shattered_halls\def_shattered_halls.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_citadel\shattered_halls\instance_shattered_halls.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Hellfire Peninsula"
+ >
+ <File
+ RelativePath="..\scripts\zone\hellfire_peninsula\boss_doomlord_kazzak.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\hellfire_peninsula\hellfire_peninsula.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Karazhan"
+ >
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_curator.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_maiden_of_virtue.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_midnight.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_moroes.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_netherspite.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_nightbane.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_prince_malchezaar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_shade_of_aran.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\boss_terestian_illhoof.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\bosses_opera.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\def_karazhan.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\instance_karazhan.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\karazhan\karazhan.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Nagrand"
+ >
+ <File
+ RelativePath="..\scripts\zone\nagrand\nagrand.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Netherstorm"
+ >
+ <File
+ RelativePath="..\scripts\zone\netherstorm\netherstorm.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Shadowmoon Valley"
+ >
+ <File
+ RelativePath="..\scripts\zone\shadowmoon_valley\boss_doomwalker.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\shadowmoon_valley\shadowmoon_valley.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Tempest Keep"
+ >
+ <Filter
+ Name="Arcatraz"
+ >
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\arcatraz\arcatraz.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\arcatraz\boss_harbinger_skyriss.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\arcatraz\def_arcatraz.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\arcatraz\instance_arcatraz.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Botanica"
+ >
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\botanica\boss_high_botanist_freywinn.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\botanica\boss_laj.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\botanica\boss_warp_splinter.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="The Eye"
+ >
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_eye\boss_alar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_eye\boss_astromancer.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_eye\boss_kaelthas.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_eye\boss_void_reaver.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_eye\def_the_eye.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_eye\instance_the_eye.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_eye\the_eye.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="The Mechanar"
+ >
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_mechanar\boss_gatewatcher_gyrokill.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_mechanar\boss_gatewatcher_ironhand.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_mechanar\boss_nethermancer_sepethrea.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_mechanar\boss_pathaleon_the_calculator.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_mechanar\def_mechanar.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\tempest_keep\the_mechanar\instance_mechanar.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Terokkar Forest"
+ >
+ <File
+ RelativePath="..\scripts\zone\terokkar_forest\terokkar_forest.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Zangarmarsh"
+ >
+ <File
+ RelativePath="..\scripts\zone\zangarmarsh\zangarmarsh.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Blackrock Spire"
+ >
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_drakkisath.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_gyth.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_halycon.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_highlord_omokk.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_mother_smolderweb.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_overlord_wyrmthalak.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_pyroguard_emberseer.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_quartermaster_zigris.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_rend_blackhand.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_shadow_hunter_voshgajin.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_the_beast.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_spire\boss_warmaster_voone.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Stormwind City"
+ >
+ <File
+ RelativePath="..\scripts\zone\stormwind\stormwind_city.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Coilfang Resevoir"
+ >
+ <Filter
+ Name="Serpent Shrine Cavern"
+ >
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\boss_fathomlord_karathress.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\boss_hydross_the_unstable.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\boss_lady_vashj.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\boss_leotheras_the_blind.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\boss_lurker_below.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\boss_morogrim_tidewalker.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\def_serpent_shrine.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\serpent_shrine\instance_serpent_shrine.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Slave Pens"
+ >
+ </Filter>
+ <Filter
+ Name="Steam Vault"
+ >
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\steam_vault\boss_hydromancer_thespia.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\steam_vault\boss_mekgineer_steamrigger.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\steam_vault\boss_warlord_kalithresh.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\steam_vault\def_steam_vault.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\steam_vault\instance_steam_vault.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Underbog"
+ >
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\underbog\boss_hungarfen.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\coilfang_resevoir\underbog\boss_the_black_stalker.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Caverns of Time"
+ >
+ <Filter
+ Name="The Dark Portal"
+ >
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\dark_portal\boss_aeonus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\dark_portal\boss_chrono_lord_deja.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\dark_portal\boss_temporus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\dark_portal\dark_portal.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\dark_portal\def_dark_portal.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\dark_portal\instance_dark_portal.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Battle for Mt. Hyjal"
+ >
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\boss_anetheron.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\boss_archimonde.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\boss_azgalor.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\boss_kazrogal.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\boss_rage_winterchill.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\def_hyjal.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\hyjal.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\hyjal_trash.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\hyjal_trash.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\hyjalAI.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\hyjalAI.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\hyjal\instance_hyjal.cpp"
+ >
+ </File>
+ </Filter>
+
+ <Filter
+ Name="Old Hillsbrad"
+ >
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\old_hillsbrad\boss_captain_skarloc.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\old_hillsbrad\boss_epoch_hunter.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\old_hillsbrad\boss_leutenant_drake.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\old_hillsbrad\def_old_hillsbrad.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\old_hillsbrad\instance_old_hillsbrad.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\caverns_of_time\old_hillsbrad\old_hillsbrad.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Silvermoon City"
+ >
+ <File
+ RelativePath="..\scripts\zone\silvermoon\silvermoon_city.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Darnassus"
+ >
+ </Filter>
+ <Filter
+ Name="Exodar"
+ >
+ </Filter>
+ <Filter
+ Name="Iron Forge"
+ >
+ <File
+ RelativePath="..\scripts\zone\ironforge\ironforge.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Orgrimmar"
+ >
+ <File
+ RelativePath="..\scripts\zone\orgrimmar\orgrimmar.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Shattrath City"
+ >
+ <File
+ RelativePath="..\scripts\zone\shattrath\shattrath_city.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Thunder Bluff"
+ >
+ <File
+ RelativePath="..\scripts\zone\thunder_bluff\thunder_bluff.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Undercity"
+ >
+ <File
+ RelativePath="..\scripts\zone\undercity\undercity.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Zul&apos;Aman"
+ >
+ <File
+ RelativePath="..\scripts\zone\zulaman\boss_akilzon.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\boss_halazzi.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\boss_hexlord.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\boss_janalai.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\boss_nalorakk.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\boss_zuljin.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\def_zulaman.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\instance_zulaman.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\zulaman\zulaman.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Isle of Quel&apos;Danas"
+ >
+ <File
+ RelativePath="..\scripts\zone\isle_of_queldanas\isle_of_queldanas.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Magister&apos;s Terrace"
+ >
+ <File
+ RelativePath="..\scripts\zone\magisters_terrace\boss_felblood_kaelthas.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\magisters_terrace\boss_priestess_delrissa.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\magisters_terrace\boss_selin_fireheart.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\magisters_terrace\boss_vexallus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\magisters_terrace\def_magisters_terrace.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\magisters_terrace\instance_magisters_terrace.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Sunwell Plateau"
+ >
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\boss_brutallus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\boss_eredar_twins.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\boss_felmyst.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\boss_kalecgos.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\boss_muru.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\boss_kiljaeden.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\sunwell_plateau.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\def_sunwell_plateau.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\sunwell_plateau\instance_sunwell_plateau.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Blackrock Depths"
+ >
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\blackrock_depths.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\def_blackrock_depths.h"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\instance_blackrock_depths.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_ambassador_flamelash.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_anubshiah.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_emperor_dagran_thaurissan.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_general_angerforge.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_gorosh_the_dervish.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_grizzle.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_high_interrogator_gerstahn.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_magmus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_moira_bronzebeard.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\blackrock_depths\boss_tomb_of_seven.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Loch Modan"
+ >
+ <File
+ RelativePath="..\scripts\zone\loch_modan\loch_modan.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="Include"
+ >
+ <File
+ RelativePath="..\include\precompiled.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\include\precompiled.h"
+ >
+ </File>
+ <File
+ RelativePath="..\include\sc_creature.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\include\sc_creature.h"
+ >
+ </File>
+ <File
+ RelativePath="..\include\sc_gossip.h"
+ >
+ </File>
+ <File
+ RelativePath="..\include\sc_instance.h"
+ >
+ </File>
+ <File
+ RelativePath="..\include\sc_item.h"
+ >
+ </File>
+ </Filter>
+ <File
+ RelativePath="..\config.h"
+ >
+ </File>
+ <File
+ RelativePath="..\ScriptMgr.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\ScriptMgr.h"
+ >
+ </File>
+ <File
+ RelativePath="..\svn_revision.h"
+ >
+ </File>
+ <File
+ RelativePath="..\system.cpp"
+ >
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
diff --git a/src/bindings/scripts/VC80/80ScriptDev2.vcproj b/src/bindings/scripts/VC80/80ScriptDev2.vcproj
index 5885b5de607..acbd41aa29b 100644
--- a/src/bindings/scripts/VC80/80ScriptDev2.vcproj
+++ b/src/bindings/scripts/VC80/80ScriptDev2.vcproj
@@ -834,6 +834,14 @@
RelativePath="..\scripts\zone\razorfen_kraul\razorfen_kraul.cpp"
>
</File>
+ <File
+ RelativePath="..\scripts\zone\razorfen_kraul\instance_razorfen_kraul.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\razorfen_kraul\def_razorfen_kraul.h"
+ >
+ </File>
</Filter>
<Filter
Name="Ruins of Ahn&apos;Qiraj"
diff --git a/src/bindings/scripts/VC90/90ScriptDev2.vcproj b/src/bindings/scripts/VC90/90ScriptDev2.vcproj
index 97d0da3ceea..cbd7434e568 100644
--- a/src/bindings/scripts/VC90/90ScriptDev2.vcproj
+++ b/src/bindings/scripts/VC90/90ScriptDev2.vcproj
@@ -833,6 +833,14 @@
RelativePath="..\scripts\zone\razorfen_kraul\razorfen_kraul.cpp"
>
</File>
+ <File
+ RelativePath="..\scripts\zone\razorfen_kraul\instance_razorfen_kraul.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\scripts\zone\razorfen_kraul\def_razorfen_kraul.h"
+ >
+ </File>
</Filter>
<Filter
Name="Ruins of Ahn&apos;Qiraj"
diff --git a/src/bindings/scripts/scripts/zone/razorfen_kraul/def_razorfen_kraul.h b/src/bindings/scripts/scripts/zone/razorfen_kraul/def_razorfen_kraul.h
new file mode 100644
index 00000000000..96917fcd4bf
--- /dev/null
+++ b/src/bindings/scripts/scripts/zone/razorfen_kraul/def_razorfen_kraul.h
@@ -0,0 +1,21 @@
+/* Copyright (C) 2006 - 2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/>
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef DEF_RAZORFEN_KRAUL_H
+#define DEF_RAZORFEN_KRAUL_H
+
+#define TYPE_WARD_KEEPERS 1
+#endif \ No newline at end of file
diff --git a/src/bindings/scripts/scripts/zone/razorfen_kraul/instance_razorfen_kraul.cpp b/src/bindings/scripts/scripts/zone/razorfen_kraul/instance_razorfen_kraul.cpp
new file mode 100644
index 00000000000..93e8ce711bf
--- /dev/null
+++ b/src/bindings/scripts/scripts/zone/razorfen_kraul/instance_razorfen_kraul.cpp
@@ -0,0 +1,119 @@
+/* Copyright (C) 2006 - 2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/>
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* ScriptData
+SDName: Instance_Razorfen_Kraul
+SD%Complete:
+SDComment:
+SDCategory: Razorfen Kraul
+EndScriptData */
+
+#include "precompiled.h"
+#include "def_razorfen_kraul.h"
+
+
+#define WARD_KEEPERS_NR 2
+
+struct TRINITY_DLL_DECL instance_razorfen_kraul : public ScriptedInstance
+{
+ instance_razorfen_kraul(Map *map) : ScriptedInstance(map) {Initialize();};
+
+ uint64 DoorWardGUID;
+ uint32 WardCheck_Timer;
+ int WardKeeperAlive;
+
+ void Initialize()
+ {
+ WardKeeperAlive = 1;
+ WardCheck_Timer = 4000;
+ DoorWardGUID = 0;
+ }
+
+ Player* GetPlayerInMap()
+ {
+ Map::PlayerList const& players = instance->GetPlayers();
+
+ if (!players.isEmpty())
+ {
+ for(Map::PlayerList::const_iterator itr = players.begin(); itr != players.end(); ++itr)
+ {
+ if (Player* plr = itr->getSource())
+ return plr;
+ }
+ }
+ debug_log("TSCR: Instance Razorfen Kraul: GetPlayerInMap, but PlayerList is empty!");
+ return NULL;
+ }
+
+ void OnGameObjectCreate(GameObject *go, bool apply)
+ {
+ switch(go->GetEntry())
+ {
+ case 21099: DoorWardGUID = go->GetGUID(); break;
+ }
+ }
+
+ void HandleGameObject(uint64 guid, uint32 state)
+ {
+ Player *player = GetPlayerInMap();
+
+ if (!player || !guid)
+ {
+ debug_log("SD2: Instance Razorfen Kraul: HandleGameObject fail");
+ return;
+ }
+
+ if (GameObject *go = GameObject::GetGameObject(*player,guid))
+ go->SetGoState(GOState(state));
+ }
+
+ void Update(uint32 diff)
+ {
+ if (WardCheck_Timer < diff)
+ {
+ HandleGameObject(DoorWardGUID, WardKeeperAlive);
+ WardKeeperAlive = 0;
+ WardCheck_Timer = 4000;
+ }else
+ WardCheck_Timer -= diff;
+ }
+
+ void SetData(uint32 type, uint32 data)
+ {
+ switch(type)
+ {
+ case TYPE_WARD_KEEPERS:
+ if (data == NOT_STARTED)
+ WardKeeperAlive = 1;
+ break;
+ }
+ }
+
+};
+
+InstanceData* GetInstanceData_instance_razorfen_kraul(Map* map)
+{
+ return new instance_razorfen_kraul(map);
+}
+
+void AddSC_instance_razorfen_kraul()
+{
+ Script *newscript;
+ newscript = new Script;
+ newscript->Name = "instance_razorfen_kraul";
+ newscript->GetInstanceData = &GetInstanceData_instance_razorfen_kraul;
+ newscript->RegisterSelf();
+} \ No newline at end of file
diff --git a/src/bindings/scripts/scripts/zone/razorfen_kraul/razorfen_kraul.cpp b/src/bindings/scripts/scripts/zone/razorfen_kraul/razorfen_kraul.cpp
index 8680218e992..fdebf81afff 100644
--- a/src/bindings/scripts/scripts/zone/razorfen_kraul/razorfen_kraul.cpp
+++ b/src/bindings/scripts/scripts/zone/razorfen_kraul/razorfen_kraul.cpp
@@ -27,6 +27,7 @@ EndContentData */
#include "precompiled.h"
#include "../../npc/npc_escortAI.h"
+#include "def_razorfen_kraul.h"
#define SAY_READY -1047000
#define SAY_POINT -10470001
@@ -42,10 +43,11 @@ EndContentData */
#define QUEST_WILLIX_THE_IMPORTER 1144
#define ENTRY_BOAR 4514
+#define SPELL_QUILLBOAR_CHANNELING 7083
struct TRINITY_DLL_DECL npc_willixAI : public npc_escortAI
{
-npc_willixAI(Creature *c) : npc_escortAI(c) {}
+ npc_willixAI(Creature *c) : npc_escortAI(c) {}
void WaypointReached(uint32 i)
{
@@ -137,6 +139,50 @@ bool QuestAccept_npc_willix(Player* player, Creature* creature, Quest const* que
return true;
}
+struct TRINITY_DLL_DECL npc_deaths_head_ward_keeperAI : public ScriptedAI
+{
+ npc_deaths_head_ward_keeperAI(Creature *c) : ScriptedAI(c)
+ {
+ pInstance = ((ScriptedInstance*)c->GetInstanceData());
+ Reset();
+ }
+
+ ScriptedInstance *pInstance;
+ uint32 QuillboarChanneling_Timer;
+
+ void Reset()
+ {
+ QuillboarChanneling_Timer = 1500;
+ }
+
+ void Aggro(Unit *who)
+ {
+ }
+
+ void UpdateAI(const uint32 diff)
+ {
+ if (!m_creature->isAlive())
+ return;
+
+ if (pInstance)
+ pInstance->SetData(TYPE_WARD_KEEPERS, NOT_STARTED);
+
+ if (QuillboarChanneling_Timer < diff)
+ {
+ if( m_creature->IsNonMeleeSpellCasted(false) )
+ m_creature->InterruptNonMeleeSpells(true);
+ DoCast(m_creature, SPELL_QUILLBOAR_CHANNELING);
+ QuillboarChanneling_Timer = 1100;
+ }else QuillboarChanneling_Timer -= diff;
+
+ }
+};
+
+CreatureAI* GetAI_npc_deaths_head_ward_keeper(Creature *_Creature)
+{
+ return new npc_deaths_head_ward_keeperAI(_Creature);
+}
+
CreatureAI* GetAI_npc_willix(Creature *_Creature)
{
npc_willixAI* thisAI = new npc_willixAI(_Creature);
@@ -201,5 +247,10 @@ void AddSC_razorfen_kraul()
newscript->GetAI = &GetAI_npc_willix;
newscript->pQuestAccept = &QuestAccept_npc_willix;
newscript->RegisterSelf();
+
+ newscript = new Script;
+ newscript->Name = "npc_deaths_head_ward_keeper";
+ newscript->GetAI = &GetAI_npc_deaths_head_ward_keeper;
+ newscript->RegisterSelf();
}
diff --git a/src/game/Chat.h b/src/game/Chat.h
index 6fbc9b30d34..f5d889479c2 100644
--- a/src/game/Chat.h
+++ b/src/game/Chat.h
@@ -73,6 +73,7 @@ class ChatHandler
int ParseCommands(const char* text);
+ static ChatCommand* getCommandTable();
protected:
explicit ChatHandler() : m_session(NULL) {} // for CLI subclass
@@ -91,13 +92,11 @@ class ChatHandler
void SendGlobalSysMessage(const char *str);
void SendGlobalGMSysMessage(const char *str);
- bool SetDataForCommandInTable(ChatCommand *table, const char* text, uint32 security, std::string const& help, std::string const& fullcommand );
+ static bool SetDataForCommandInTable(ChatCommand *table, const char* text, uint32 security, std::string const& help, std::string const& fullcommand );
bool ExecuteCommandInTable(ChatCommand *table, const char* text, const std::string& fullcommand);
bool ShowHelpForCommand(ChatCommand *table, const char* cmd);
bool ShowHelpForSubCommands(ChatCommand *table, char const* cmd, char const* subcmd);
- ChatCommand* getCommandTable();
-
bool HandleAccountCommand(const char* args);
bool HandleAccountCreateCommand(const char* args);
bool HandleAccountDeleteCommand(const char* args);
diff --git a/src/game/Level2.cpp b/src/game/Level2.cpp
index c76c6e78102..63d8943469d 100644
--- a/src/game/Level2.cpp
+++ b/src/game/Level2.cpp
@@ -3506,7 +3506,6 @@ bool ChatHandler::HandleCharacterRenameCommand(const char* args)
PSendSysMessage(LANG_RENAME_PLAYER, GetNameLink(target).c_str());
target->SetAtLoginFlag(AT_LOGIN_RENAME);
- CharacterDatabase.PExecute("UPDATE characters SET at_login = at_login | '1' WHERE guid = '%u'", target->GetGUIDLow());
}
else
{
diff --git a/src/trinitycore/CMakeLists.txt b/src/trinitycore/CMakeLists.txt
index 7cd012d9f45..f6b2b3a75b0 100644
--- a/src/trinitycore/CMakeLists.txt
+++ b/src/trinitycore/CMakeLists.txt
@@ -44,6 +44,7 @@ trinityconfig
vmaps
ZThread
g3dlite
+readline
${SCRIPT_LIB}
${MYSQL_LIBRARIES}
${POSTGRE_LIBS}
diff --git a/src/trinitycore/CliRunnable.cpp b/src/trinitycore/CliRunnable.cpp
index 1da2a30b4f7..0752842bc3d 100644
--- a/src/trinitycore/CliRunnable.cpp
+++ b/src/trinitycore/CliRunnable.cpp
@@ -38,6 +38,56 @@
#include "ScriptCalls.h"
#include "Util.h"
+#if PLATFORM != WINDOWS
+#include <readline/readline.h>
+#include <readline/history.h>
+
+char * command_finder(const char* text, int state)
+{
+ static int idx,len;
+ const char* ret;
+ ChatCommand *cmd = ChatHandler::getCommandTable();
+
+ if(!state)
+ {
+ idx = 0;
+ len = strlen(text);
+ }
+
+ while(ret = cmd[idx].Name)
+ {
+ if(!cmd[idx].AllowConsole)
+ {
+ idx++;
+ continue;
+ }
+
+ idx++;
+ //printf("Checking %s \n", cmd[idx].Name);
+ if (strncmp(ret, text, len) == 0)
+ return strdup(ret);
+ if(cmd[idx].Name == NULL)
+ break;
+ }
+
+ return ((char*)NULL);
+
+}
+
+char ** cli_completion(const char * text, int start, int end)
+{
+ char ** matches;
+ matches = (char**)NULL;
+
+ if(start == 0)
+ matches = rl_completion_matches((char*)text,&command_finder);
+ else
+ rl_bind_key('\t',rl_abort);
+ return (matches);
+}
+
+#endif
+
void utf8print(const char* str)
{
#if PLATFORM == PLATFORM_WINDOWS
@@ -325,10 +375,12 @@ void CliRunnable::run()
WorldDatabase.ThreadStart(); // let thread do safe mySQL requests
char commandbuf[256];
-
+ bool canflush = true;
///- Display the list of available CLI functions then beep
sLog.outString("");
-
+ #if PLATFORM != WINDOWS
+ rl_attempted_completion_function = cli_completion;
+ #endif
if(sConfig.GetBoolDefault("BeepAtStart", true))
printf("\a"); // \a = Alert
@@ -340,15 +392,16 @@ void CliRunnable::run()
while (!World::IsStopped())
{
fflush(stdout);
- #ifdef linux
- while (!kb_hit_return() && !World::IsStopped())
- // With this, we limit CLI to 10commands/second
- usleep(100);
- if (World::IsStopped())
- break;
- #endif
- char *command_str = fgets(commandbuf,sizeof(commandbuf),stdin);
- if (command_str != NULL)
+
+ char *command_str ; // = fgets(commandbuf,sizeof(commandbuf),stdin);
+
+ #if PLATFORM == WINDOWS
+ command_str = fgets(commandbuf,sizeof(commandbuf),stdin);
+ #else
+ command_str = readline("TC>");
+ rl_bind_key('\t',rl_complete);
+ #endif
+ if (command_str != NULL)
{
for(int x=0;command_str[x];x++)
if(command_str[x]=='\r'||command_str[x]=='\n')
@@ -360,23 +413,32 @@ void CliRunnable::run()
if(!*command_str)
{
- printf("TC>");
+ #if PLATFORM == WINDOWS
+ printf("TC>");
+ #endif
continue;
}
std::string command;
if(!consoleToUtf8(command_str,command)) // convert from console encoding to utf8
{
- printf("TC>");
+ #if PLATFORM == WINDOWS
+ printf("TC>");
+ #endif
continue;
}
-
+ fflush(stdout);
+ #if PLATFORM != WINDOWS
sWorld.QueueCliCommand(&utf8print,command.c_str());
- }
+ add_history(command.c_str());
+ #endif
+
+ }
else if (feof(stdin))
{
World::StopNow(SHUTDOWN_EXIT_CODE);
}
+
}
///- End the database thread