*Add Placeholder Scripts for Azjol-Nerub Instances (I will fill them later)

--HG--
branch : trunk
This commit is contained in:
BroodWyrm
2009-03-19 21:07:55 +01:00
parent 6c32bd5441
commit c6409d0a73
15 changed files with 875 additions and 23 deletions

View File

@@ -1875,7 +1875,6 @@
RelativePath="..\scripts\zone\caverns_of_time\dark_portal\instance_dark_portal.cpp"
>
</File>
</Filter>
<Filter
Name="Battle for Mt. Hyjal"
@@ -1936,9 +1935,6 @@
>
</File>
</Filter>
<Filter
Name="Culling of Stratholme">
</Filter>
</Filter>
<Filter
Name="Silvermoon City"
@@ -2008,12 +2004,63 @@
</Filter>
<Filter
Name="Azjol-Nerub">
<Filter
Name="Ahn&apos;kahet">
</Filter>
<Filter
Name="Azjol-Nerub">
</Filter>
<Filter
Name="Ahn&apos;kahet"
>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_amanitar.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_elder_nadox.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_herald_volazj.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_jedoga_shadowseeker.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_prince_taldaram.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\def_ahnkahet.h"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\instance_ahnkahet.cpp"
>
</File>
</Filter>
<Filter
Name="Azjol-Nerub"
>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_anubarak.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_hadronox.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_krikthir_the_gatewatcher.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\def_azjol_nerub.h"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\instance_azjol_nerub.cpp"
>
</File>
</Filter>
</Filter>
<Filter
Name="Drak&apos;Tharon Keep">

View File

@@ -1114,12 +1114,63 @@
</Filter>
<Filter
Name="Azjol-Nerub">
<Filter
Name="Ahn&apos;kahet">
</Filter>
<Filter
Name="Azjol-Nerub">
</Filter>
<Filter
Name="Ahn&apos;kahet"
>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_amanitar.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_elder_nadox.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_herald_volazj.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_jedoga_shadowseeker.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_prince_taldaram.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\def_ahnkahet.h"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\instance_ahnkahet.cpp"
>
</File>
</Filter>
<Filter
Name="Azjol-Nerub"
>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_anubarak.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_hadronox.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_krikthir_the_gatewatcher.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\def_azjol_nerub.h"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\instance_azjol_nerub.cpp"
>
</File>
</Filter>
</Filter>
<Filter
Name="Drak&apos;Tharon Keep">
@@ -2194,9 +2245,6 @@
>
</File>
</Filter>
<Filter
Name="Culling of Stratholme">
</Filter>
<Filter
Name="Culling of Stratholme"
>

View File

@@ -801,10 +801,58 @@
<Filter
Name="Ahn&apos;kahet"
>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_amanitar.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_elder_nadox.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_herald_volazj.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_jedoga_shadowseeker.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\boss_prince_taldaram.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\def_ahnkahet.h"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Ahn&apos;kahet\instance_ahnkahet.cpp"
>
</File>
</Filter>
<Filter
Name="Azjol-Nerub"
>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_anubarak.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_hadronox.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\boss_krikthir_the_gatewatcher.cpp"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\def_azjol_nerub.h"
>
</File>
<File
RelativePath="..\scripts\zone\Azjol-Nerub\Azjol-Nerub\instance_azjol_nerub.cpp"
>
</File>
</Filter>
</Filter>
<Filter
@@ -2218,10 +2266,6 @@
Name="Culling of Stratholme"
>
</Filter>
<Filter
Name="Culling of Stratholme"
>
</Filter>
<Filter
Name="Old Hillsbrad"
>

View File

@@ -0,0 +1,27 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_amanitar
SD%Complete: 0
SDComment: Placeholder
SDCategory: Ahn'kahet
EndScriptData */
#include "precompiled.h"
#include "def_ahnkahet.h"

View File

@@ -0,0 +1,40 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_elder_nadox
SD%Complete: 0
SDComment: Placeholder
SDCategory: Ahn'kahet
EndScriptData */
#include "precompiled.h"
#include "def_ahnkahet.h"
#define SPELL_BROOD_PLAGUE 56130
#define H_SPELL_BROOD_PLAGUE 59467
#define SPELL_BROOD_RAGE 59465
#define MOB_AHNKAHAR_SWARMER 30178
#define SPELL_SUMMON_SWARMERS 56119//2x 30178
#define MOB_AHNKAHAR_SWARMER 30178
#define SPELL_SUMMON_SWARM_GUARD 56120//1x 30176
#define SPELL_DEADLY_POISON 56145// Proc trigger
#define H_SPELL_DEADLY_POISON 59479// Proc trigger
#define SPELL_GUARDIAN_AURA 56151

View File

@@ -0,0 +1,27 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_herald_volazj
SD%Complete: 0
SDComment: Placeholder
SDCategory: Ahn'kahet
EndScriptData */
#include "precompiled.h"
#include "def_ahnkahet.h"

View File

@@ -0,0 +1,36 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_jedoga_shadowseeker
SD%Complete: 0
SDComment: Placeholder
SDCategory: Ahn'kahet
EndScriptData */
#include "precompiled.h"
#include "def_ahnkahet.h"
#define SPELL_CYCLONE_STRIKE 56855
#define H_SPELL_CYCLONE_STRIKE 60030//kein unterschied zu 56855 außer das 60030 1,5sec cast ist
#define SPELL_LIGHTNING_BOLT 56891
#define H_SPELL_LIGHTNING_BOLT 60032
#define SPELL_THUNDERSHOCK 56926//AOE works
#define H_SPELL_THUNDERSHOCK 60029//AOE works
#define SPELL_GIFT_OF_THE_HERALD 56219//triggert if sucessfull sacreficed

View File

@@ -0,0 +1,44 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_prince_taldaram
SD%Complete: 0
SDComment: Placeholder
SDCategory: Ahn'kahet
EndScriptData */
#include "precompiled.h"
#include "def_ahnkahet.h"
#define SPELL_BLOODTHIRST 55968 //Trigger Spell + add aura
#define SPELL_CONJURE_FLAME_SPHERE 55931
#define SPELL_FLAME_SPHERE_SUMMON_1 55895// 1x 30106
#define H_SPELL_FLAME_SPHERE_SUMMON_1 59511// 1x 31686
#define H_SPELL_FLAME_SPHERE_SUMMON_2 59512// 1x 31687
#define SPELL_FLAME_SPHERE_SPAWN_EFFEKT 55891
#define SPELL_FLAME_SPHERE_VISUAL 55928
#define SPELL_FLAME_SPHERE_PERIODIC 55926
#define H_SPELL_FLAME_SPHERE_PERIODIC 59508
#define SPELL_FLAME_SPHERE_DEATH_EFFEKT 55947
#define SPELL_EMBRACE_OF_THE_VAMPYR 55959
#define H_SPELL_EMBRACE_OF_THE_VAMPYR 59513
#define SPELL_VANISH 55964

View File

@@ -0,0 +1,33 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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_AHNKAHET_H
#define DEF_AHNKAHET_H
#define DATA_ELDER_NADOX 1
#define DATA_PRINCE_TALDARAM 2
#define DATA_JEDOGA_SHADOWSEEKER 3
#define DATA_HERALD_VOLAZJ 4
#define DATA_AMANITAR 5
#define DATA_ELDER_NADOX_EVENT 6
#define DATA_PRINCE_TALDARAM_EVENT 7
#define DATA_JEDOGA_SHADOWSEEKER_EVENT 8
#define DATA_HERALD_VOLAZJ_EVENT 9
#define DATA_AMANITAR_EVENT 10
#endif

View File

@@ -0,0 +1,194 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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_Azjol_Nerub
SD%Complete: 0
SDComment: Placeholder
SDCategory: Azjol Nerub
EndScriptData */
#include "precompiled.h"
#include "def_ahnkahet.h"
#define ENCOUNTERS 5
/* Ahn'kahet encounters:
0 - Elder Nadox
1 - Prince Taldaram
2 - Jedoga Shadowseeker
3 - Herald Volazj
4 - Amanitar (Heroic only)
*/
struct TRINITY_DLL_DECL instance_ahnkahet : public ScriptedInstance
{
instance_ahnkahet(Map *Map) : ScriptedInstance(Map) {Initialize();};
uint64 Elder_Nadox;
uint64 Prince_Taldaram;
uint64 Jedoga_Shadowseeker;
uint64 Herald_Volazj;
uint64 Amanitar;
uint32 Encounters[ENCOUNTERS];
void Initialize()
{
Elder_Nadox =0;
Prince_Taldaram =0;
Jedoga_Shadowseeker =0;
Herald_Volazj =0;
Amanitar =0;
for(uint8 i = 0; i < ENCOUNTERS; ++i)
Encounters[i] = NOT_STARTED;
}
bool IsEncounterInProgress() const
{
for(uint8 i = 0; i < ENCOUNTERS; ++i)
if(Encounters[i] == IN_PROGRESS) return true;
return false;
}
void OnCreatureCreate(Creature *creature, uint32 creature_entry)
{
switch(creature_entry)
{
case 29309: Elder_Nadox = creature->GetGUID(); break;
case 29308: Prince_Taldaram = creature->GetGUID(); break;
case 29310: Jedoga_Shadowseeker = creature->GetGUID(); break;
case 29311: Herald_Volazj = creature->GetGUID(); break;
case 30258: Amanitar = creature->GetGUID(); break;
}
}
uint64 GetData64(uint32 identifier)
{
switch(identifier)
{
case DATA_ELDER_NADOX: return Elder_Nadox;
case DATA_PRINCE_TALDARAM: return Prince_Taldaram;
case DATA_JEDOGA_SHADOWSEEKER: return Jedoga_Shadowseeker;
case DATA_HERALD_VOLAZJ: return Herald_Volazj;
case DATA_AMANITAR: return Amanitar;
}
return 0;
}
void SetData(uint32 type, uint32 data)
{
switch(type)
{
case DATA_ELDER_NADOX_EVENT:
Encounters[0] = data;break;
case DATA_PRINCE_TALDARAM_EVENT:
Encounters[1] = data; break;
case DATA_JEDOGA_SHADOWSEEKER_EVENT:
Encounters[2] = data; break;
case DATA_HERALD_VOLAZJ:
Encounters[3] = data; break;
case DATA_AMANITAR:
Encounters[4] = data; break;
}
if (data == DONE)
{
SaveToDB();
}
}
uint32 GetData(uint32 type)
{
switch(type)
{
case DATA_ELDER_NADOX_EVENT: return Encounters[0];
case DATA_PRINCE_TALDARAM_EVENT: return Encounters[1];
case DATA_JEDOGA_SHADOWSEEKER_EVENT: return Encounters[2];
case DATA_HERALD_VOLAZJ: return Encounters[3];
case DATA_AMANITAR: return Encounters[4];
}
return 0;
}
const char* Save()
{
OUT_SAVE_INST_DATA;
std::string str_data;
std::ostringstream saveStream;
saveStream << "A K " << Encounters[0] << " " << Encounters[1] << " "
<< Encounters[2] << Encounters[3] << Encounters[4];
str_data = saveStream.str();
OUT_SAVE_INST_DATA_COMPLETE;
return str_data.c_str();
}
void Load(const char* in)
{
if (!in)
{
OUT_LOAD_INST_DATA_FAIL;
return;
}
OUT_LOAD_INST_DATA(in);
char dataHead1, dataHead2;
uint16 data0,data1,data2,data3,data4;
std::istringstream loadStream(in);
loadStream >> dataHead1 >> dataHead2 >> data0 >> data1 >> data2 >> data3 >> data4;
if( dataHead1 == 'A' && dataHead2 == 'K')
{
Encounters[0] = data0;
Encounters[1] = data1;
Encounters[2] = data2;
Encounters[3] = data3;
Encounters[4] = data4;
for(uint8 i = 0; i < ENCOUNTERS; ++i)
if (Encounters[i] == IN_PROGRESS)
Encounters[i] = NOT_STARTED;
}else OUT_LOAD_INST_DATA_FAIL;
OUT_LOAD_INST_DATA_COMPLETE;
}
};
InstanceData* GetInstanceData_instance_ahnkahet(Map* map)
{
return new instance_ahnkahet(map);
}
void AddSC_instance_ahnkahet()
{
Script *newscript;
newscript = new Script;
newscript->Name = "instance_ahnkahet";
newscript->GetInstanceData = &GetInstanceData_instance_ahnkahet;
newscript->RegisterSelf();
}

View File

@@ -0,0 +1,27 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_anubarak
SD%Complete: 0
SDComment: Placeholder
SDCategory: Azjol Nerub
EndScriptData */
#include "precompiled.h"
#include "def_azjol_nerub.h"

View File

@@ -0,0 +1,38 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_hadronox
SD%Complete: 0
SDComment: Placeholder
SDCategory: Azjol Nerub
EndScriptData */
#include "precompiled.h"
#include "def_azjol_nerub.h"
#define SPELL_WEB_FRONT_DOORS 53177//dummy
#define SPELL_ACID_CLOUD 53400
#define H_SPELL_ACID_CLOUD 59419
#define SPELL_LEECH_POISON 53030
#define H_SPELL_LEECH_POISON 59417
#define SPELL_LEECH_POISON_DEADTRIGGER 53800//heal 10% heroic und normal
#define SPELL_PIECE_ARMOR 53418
#define SPELL_WEB_GRAB 53406
#define H_SPELL_WEB_GRAB 59420

View File

@@ -0,0 +1,38 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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: boss_krikthir_the_gatewatcher
SD%Complete: 0
SDComment: Placeholder
SDCategory: Azjol Nerub
EndScriptData */
#include "precompiled.h"
#include "def_azjol_nerub.h"
#define SPELL_MIND_FLAY 52586
#define H_SPELL_MIND_FLAY 59367
#define SPELL_CURSE_OF_FATIGUE 52592
#define H_SPELL_CURSE_OF_FATIGUE 59368
#define SPELL_FRENZY 28747
#define MOB_SKITTERING_SWARMER 28735
#define MOB_SKITTERING_SWARMER_CONTROLLER 32593
#define SPELL_SUMMON_SKITTERING_SWARMER 52438//AOE Effekt 140
#define SPELL_SUMMON_SKITTERING_SWARMER 52439//Summon 3x 28735

View File

@@ -0,0 +1,29 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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_AZJOL_NERUB_H
#define DEF_AZJOL_NERUB_H
#define DATA_KRIKTHIR_THE_GATEWATCHER 1
#define DATA_HADRONOX 2
#define DATA_ANUBARAK 3
#define DATA_KRIKTHIR_THE_GATEWATCHER_EVENT 4
#define DATA_HADRONOX_EVENT 5
#define DATA_ANUBARAK_EVENT 6
#endif

View File

@@ -0,0 +1,180 @@
/*
* Copyright (C) 2009 Trinity <http://www.trinitycore.org/>
*
* 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_Azjol_Nerub
SD%Complete: 0
SDComment: Placeholder
SDCategory: Azjol Nerub
EndScriptData */
#include "precompiled.h"
#include "def_azjol_nerub.h"
#define ENCOUNTERS 3
/* Azjol Nerub encounters:
0 - Krik'thir the Gatewatcher
1 - Hadronox
2 - Anub'arak
*/
struct TRINITY_DLL_DECL instance_azjol_nerub : public ScriptedInstance
{
instance_azjol_nerub(Map *Map) : ScriptedInstance(Map) {Initialize();};
uint64 Krikthir;
uint64 Hadronox;
uint64 Anubarak;
uint32 Encounters[ENCOUNTERS];
void Initialize()
{
Krikthir = 0;
Hadronox = 0;
Anubarak =0;
for(uint8 i = 0; i < ENCOUNTERS; ++i)
Encounters[i] = NOT_STARTED;
}
bool IsEncounterInProgress() const
{
for(uint8 i = 0; i < ENCOUNTERS; ++i)
if(Encounters[i] == IN_PROGRESS) return true;
return false;
}
void OnCreatureCreate(Creature *creature, uint32 creature_entry)
{
switch(creature_entry)
{
case 28684: Krikthir = creature->GetGUID(); break;
case 28921: Hadronox = creature->GetGUID(); break;
case 29120: Anubarak = creature->GetGUID(); break;
}
}
uint64 GetData64(uint32 identifier)
{
switch(identifier)
{
case DATA_KRIKTHIR_THE_GATEWATCHER: return Krikthir;
case DATA_HADRONOX: return Hadronox;
case DATA_ANUBARAK: return Anubarak;
}
return 0;
}
void SetData(uint32 type, uint32 data)
{
switch(type)
{
case DATA_KRIKTHIR_THE_GATEWATCHER_EVENT:
Encounters[0] = data;break;
case DATA_HADRONOX_EVENT:
Encounters[1] = data; break;
case DATA_ANUBARAK_EVENT:
Encounters[2] = data; break;
}
if (data == DONE)
{
SaveToDB();
}
}
uint32 GetData(uint32 type)
{
switch(type)
{
case DATA_KRIKTHIR_THE_GATEWATCHER_EVENT: return Encounters[0];
case DATA_HADRONOX_EVENT: return Encounters[1];
case DATA_ANUBARAK_EVENT: return Encounters[2];
}
return 0;
}
const char* Save()
{
OUT_SAVE_INST_DATA;
std::string str_data;
std::ostringstream saveStream;
saveStream << "A N " << Encounters[0] << " " << Encounters[1] << " "
<< Encounters[2];
str_data = saveStream.str();
OUT_SAVE_INST_DATA_COMPLETE;
return str_data.c_str();
}
void Load(const char* in)
{
if (!in)
{
OUT_LOAD_INST_DATA_FAIL;
return;
}
OUT_LOAD_INST_DATA(in);
char dataHead1, dataHead2;
uint16 data0,data1,data2;
std::istringstream loadStream(in);
loadStream >> dataHead1 >> dataHead2 >> data0 >> data1 >> data2;
if( dataHead1 == 'A' && dataHead2 == 'N')
{
Encounters[0] = data0;
Encounters[1] = data1;
Encounters[2] = data2;
for(uint8 i = 0; i < ENCOUNTERS; ++i)
if (Encounters[i] == IN_PROGRESS)
Encounters[i] = NOT_STARTED;
}else OUT_LOAD_INST_DATA_FAIL;
OUT_LOAD_INST_DATA_COMPLETE;
}
};
InstanceData* GetInstanceData_instance_azjol_nerub(Map* map)
{
return new instance_azjol_nerub(map);
}
void AddSC_instance_azjol_nerub()
{
Script *newscript;
newscript = new Script;
newscript->Name = "instance_azjol_nerub";
newscript->GetInstanceData = &GetInstanceData_instance_azjol_nerub;
newscript->RegisterSelf();
}