diff options
| author | megamage <none@none> | 2009-02-05 14:25:16 -0600 |
|---|---|---|
| committer | megamage <none@none> | 2009-02-05 14:25:16 -0600 |
| commit | c1c210f6d91fd4214bb26362fd14135312a7ffad (patch) | |
| tree | 37487ec2cc79122d4a8cb59099b916fb4f84ca6d /src/bindings/scripts | |
| parent | cdcf465360e19b94d62917f3622837c517e7a4ca (diff) | |
| parent | 7e70df2e7d08d4d2672efe07dedfc12ae5408b89 (diff) | |
*Merge.
--HG--
branch : trunk
Diffstat (limited to 'src/bindings/scripts')
9 files changed, 183 insertions, 3 deletions
diff --git a/src/bindings/scripts/CMakeLists.txt b/src/bindings/scripts/CMakeLists.txt index 5193297610d..1d600dbceea 100644 --- a/src/bindings/scripts/CMakeLists.txt +++ b/src/bindings/scripts/CMakeLists.txt @@ -106,6 +106,7 @@ SET(trinityscript_LIB_SRCS scripts/zone/blasted_lands/blasted_lands.cpp scripts/zone/blasted_lands/boss_kruul.cpp scripts/zone/bloodmyst_isle/bloodmyst_isle.cpp + scripts/zone/borean_tundra/borean_tundra.cpp scripts/zone/burning_steppes/burning_steppes.cpp scripts/zone/caverns_of_time/dark_portal/def_dark_portal.h scripts/zone/caverns_of_time/dark_portal/instance_dark_portal.cpp diff --git a/src/bindings/scripts/Makefile.am b/src/bindings/scripts/Makefile.am index c56e2138270..3aaa1e3bc7a 100644 --- a/src/bindings/scripts/Makefile.am +++ b/src/bindings/scripts/Makefile.am @@ -140,6 +140,7 @@ scripts/zone/blades_edge_mountains/blades_edge_mountains.cpp \ scripts/zone/blasted_lands/blasted_lands.cpp \ scripts/zone/blasted_lands/boss_kruul.cpp \ scripts/zone/bloodmyst_isle/bloodmyst_isle.cpp \ +scripts/zone/borean_tundra/borean_tundra.cpp \ scripts/zone/burning_steppes/burning_steppes.cpp \ scripts/zone/caverns_of_time/dark_portal/boss_aeonus.cpp \ scripts/zone/caverns_of_time/dark_portal/boss_chrono_lord_deja.cpp \ diff --git a/src/bindings/scripts/ScriptMgr.cpp b/src/bindings/scripts/ScriptMgr.cpp index 7f2c2eba313..2819405f733 100644 --- a/src/bindings/scripts/ScriptMgr.cpp +++ b/src/bindings/scripts/ScriptMgr.cpp @@ -209,6 +209,9 @@ extern void AddSC_blasted_lands(); //Bloodmyst Isle extern void AddSC_bloodmyst_isle(); +//Borean Tundra +extern void AddSC_borean_tundra(); + //Burning steppes extern void AddSC_burning_steppes(); @@ -1415,6 +1418,9 @@ void ScriptsInit() //Bloodmyst Isle AddSC_bloodmyst_isle(); + + //Borean Tundra + AddSC_borean_tundra(); //Burning steppes AddSC_burning_steppes(); diff --git a/src/bindings/scripts/VC71/71ScriptDev2.vcproj b/src/bindings/scripts/VC71/71ScriptDev2.vcproj index 3c5a2c0fa46..ab270b84c58 100644 --- a/src/bindings/scripts/VC71/71ScriptDev2.vcproj +++ b/src/bindings/scripts/VC71/71ScriptDev2.vcproj @@ -1970,7 +1970,10 @@ </File> </Filter> <Filter - Name="Borean Tundra"> + Name="Borean Tundra"> + <File + RelativePath="..\scripts\zone\borean_tundra\borean_tundra.cpp" + > </Filter> <Filter Name="Howling Fjord"> diff --git a/src/bindings/scripts/VC80/80ScriptDev2.vcproj b/src/bindings/scripts/VC80/80ScriptDev2.vcproj index 39a817899d0..e86433b3bc6 100644 --- a/src/bindings/scripts/VC80/80ScriptDev2.vcproj +++ b/src/bindings/scripts/VC80/80ScriptDev2.vcproj @@ -1080,6 +1080,9 @@ </Filter> <Filter Name="Borean Tundra"> + <File + RelativePath="..\scripts\zone\borean_tundra\borean_tundra.cpp" + > </Filter> <Filter Name="Howling Fjord"> diff --git a/src/bindings/scripts/VC90/90ScriptDev2.vcproj b/src/bindings/scripts/VC90/90ScriptDev2.vcproj index 49668b76f48..f4aededb72c 100644 --- a/src/bindings/scripts/VC90/90ScriptDev2.vcproj +++ b/src/bindings/scripts/VC90/90ScriptDev2.vcproj @@ -750,6 +750,10 @@ <Filter Name="Borean Tundra" > + <File + RelativePath="..\scripts\zone\borean_tundra\borean_tundra.cpp" + > + </File> </Filter> <Filter Name="Howling Fjord" diff --git a/src/bindings/scripts/scripts/zone/blades_edge_mountains/blades_edge_mountains.cpp b/src/bindings/scripts/scripts/zone/blades_edge_mountains/blades_edge_mountains.cpp index 8b08011bc8a..f56bd53e8fa 100644 --- a/src/bindings/scripts/scripts/zone/blades_edge_mountains/blades_edge_mountains.cpp +++ b/src/bindings/scripts/scripts/zone/blades_edge_mountains/blades_edge_mountains.cpp @@ -17,7 +17,7 @@ /* ScriptData SDName: Blades_Edge_Mountains SD%Complete: 90 -SDComment: Quest support: 10503, 10504, 10556, 10609, 10682, 10980. Ogri'la->Skettis Flight. (npc_daranelle needs bit more work before consider complete) +SDComment: Quest support: 10503, 10504, 10556, 10609, 10682, 10821, 10980. Ogri'la->Skettis Flight. (npc_daranelle needs bit more work before consider complete) SDCategory: Blade's Edge Mountains EndScriptData */ @@ -28,10 +28,20 @@ npc_daranelle npc_overseer_nuaar npc_saikkal_the_elder npc_skyguard_handler_irena +go_legion_obelisk EndContentData */ #include "precompiled.h" +//Support for quest: You're Fired! (10821) +bool obelisk_one, obelisk_two, obelisk_three, obelisk_four, obelisk_five; + +#define LEGION_OBELISK_ONE 185193 +#define LEGION_OBELISK_TWO 185195 +#define LEGION_OBELISK_THREE 185196 +#define LEGION_OBELISK_FOUR 185197 +#define LEGION_OBELISK_FIVE 185198 + /*###### ## mobs_bladespire_ogre ######*/ @@ -392,6 +402,48 @@ bool GossipSelect_npc_skyguard_handler_irena(Player *player, Creature *_Creature } /*###### +## go_legion_obelisk +######*/ + +bool GOHello_go_legion_obelisk(Player *player, GameObject* _GO) +{ + if ( player->GetQuestStatus(10821) == QUEST_STATUS_INCOMPLETE ) + { + switch( _GO->GetEntry() ) + { + case LEGION_OBELISK_ONE: + obelisk_one = true; + break; + case LEGION_OBELISK_TWO: + obelisk_two = true; + break; + case LEGION_OBELISK_THREE: + obelisk_three = true; + break; + case LEGION_OBELISK_FOUR: + obelisk_four = true; + break; + case LEGION_OBELISK_FIVE: + obelisk_five = true; + break; + } + + if ( obelisk_one == true && obelisk_two == true && obelisk_three == true && obelisk_four == true && obelisk_five == true ) + { + _GO->SummonCreature(19963,2943.40f,4778.20f,284.49f,0.94f,TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT,120000); + //reset global var + obelisk_one = false; + obelisk_two = false; + obelisk_three = false; + obelisk_four = false; + obelisk_five = false; + } + } + + return true; +} + +/*###### ## AddSC ######*/ @@ -425,6 +477,11 @@ void AddSC_blades_edge_mountains() newscript->pGossipHello = &GossipHello_npc_saikkal_the_elder; newscript->pGossipSelect = &GossipSelect_npc_saikkal_the_elder; newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="go_legion_obelisk"; + newscript->pGOHello = &GOHello_go_legion_obelisk; + newscript->RegisterSelf(); newscript = new Script; newscript->Name="npc_skyguard_handler_irena"; diff --git a/src/bindings/scripts/scripts/zone/bloodmyst_isle/bloodmyst_isle.cpp b/src/bindings/scripts/scripts/zone/bloodmyst_isle/bloodmyst_isle.cpp index f298f3fa22a..3c3a622b49d 100644 --- a/src/bindings/scripts/scripts/zone/bloodmyst_isle/bloodmyst_isle.cpp +++ b/src/bindings/scripts/scripts/zone/bloodmyst_isle/bloodmyst_isle.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2006 - 2008 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> +/* 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 diff --git a/src/bindings/scripts/scripts/zone/borean_tundra/borean_tundra.cpp b/src/bindings/scripts/scripts/zone/borean_tundra/borean_tundra.cpp new file mode 100644 index 00000000000..c776c1f9271 --- /dev/null +++ b/src/bindings/scripts/scripts/zone/borean_tundra/borean_tundra.cpp @@ -0,0 +1,105 @@ +/* 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: Borean_Tundra +SD%Complete: 100 +SDComment: +SDCategory: Borean Tundra +EndScriptData */ + +/* ContentData +npc_tiare +npc_surristrasz +EndContentData */ + +#include "precompiled.h" + +/*###### +## npc_tiare +######*/ + +#define GOSSIP_ITEM_TELEPORT "Teleport me to Amber Ledge, please." + +bool GossipHello_npc_tiare(Player *player, Creature *_Creature) +{ + player->ADD_GOSSIP_ITEM(0, GOSSIP_ITEM_TELEPORT, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_GOSSIP); + player->SEND_GOSSIP_MENU(_Creature->GetNpcTextId(), _Creature->GetGUID()); + return true; +} + +bool GossipSelect_npc_tiare(Player *player, Creature *_Creature, uint32 sender, uint32 action) +{ + if (action == GOSSIP_OPTION_GOSSIP) + { + player->CLOSE_GOSSIP_MENU(); + player->CastSpell(player,50135,true); + } + return true; +} + +/*###### +## npc_surristrasz +######*/ + +#define GOSSIP_ITEM_FREE_FLIGHT "I'd like passage to the Transitus Shield." +#define GOSSIP_ITEM_FLIGHT "May I use a drake to fly elsewhere?" + +bool GossipHello_npc_surristrasz(Player *player, Creature *_Creature) +{ + if (_Creature->isQuestGiver()) + player->PrepareQuestMenu(_Creature->GetGUID()); + + if (_Creature->isTaxi()) + { + player->ADD_GOSSIP_ITEM(0, GOSSIP_ITEM_FREE_FLIGHT, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_GOSSIP); + player->ADD_GOSSIP_ITEM(2, GOSSIP_ITEM_FLIGHT, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_TAXIVENDOR); + } + + player->SEND_GOSSIP_MENU(_Creature->GetNpcTextId(), _Creature->GetGUID()); + return true; +} + +bool GossipSelect_npc_surristrasz(Player *player, Creature *_Creature, uint32 sender, uint32 action) +{ + if (action == GOSSIP_OPTION_GOSSIP) + { + player->CLOSE_GOSSIP_MENU(); + player->CastSpell(player,46064,true); //TaxiPath 795 (amber to coldarra) + } + if (action == GOSSIP_OPTION_TAXIVENDOR) + { + player->GetSession()->SendTaxiMenu(_Creature); + } + return true; +} + +void AddSC_borean_tundra() +{ + Script *newscript; + + newscript = new Script; + newscript->Name = "npc_tiare"; + newscript->pGossipHello = &GossipHello_npc_tiare; + newscript->pGossipSelect = &GossipSelect_npc_tiare; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name = "npc_surristrasz"; + newscript->pGossipHello = &GossipHello_npc_surristrasz; + newscript->pGossipSelect = &GossipSelect_npc_surristrasz; + newscript->RegisterSelf(); +} |
