diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/bindings/scripts/scripts/go/go_scripts.cpp | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/src/bindings/scripts/scripts/go/go_scripts.cpp b/src/bindings/scripts/scripts/go/go_scripts.cpp index 8489cc5417d..faa55482b8a 100644 --- a/src/bindings/scripts/scripts/go/go_scripts.cpp +++ b/src/bindings/scripts/scripts/go/go_scripts.cpp @@ -183,6 +183,42 @@ bool GOHello_go_tablet_of_the_seven(Player *player, GameObject* _GO) return true; } +/*##### +## go_jump_a_tron +######*/ + +bool GOHello_go_jump_a_tron(Player *player, GameObject* _GO) +{ + if (player->GetQuestStatus(10111) == QUEST_STATUS_INCOMPLETE) + player->CastSpell(player,33382,true); + + return true; +} + +/*###### +## go_ethereum_prison +######*/ + +float ethereum_NPC[2][7] = +{ + {20785,20790,20789,20784,20786,20783,20788}, // hostile npc + {22810,22811,22812,22813,22814,22815,0} // fiendly npc (need script in acid ? only to cast spell reputation reward) +}; + +bool GOHello_go_ethereum_prison(Player *player, GameObject* _GO) +{ + _GO->SetGoState(0); + switch(rand()%2){ + case 0: + _GO->SummonCreature(ethereum_NPC[0][rand()%6],_GO->GetPositionX(),_GO->GetPositionY(),_GO->GetPositionZ()+0.3, 0,TEMPSUMMON_CORPSE_TIMED_DESPAWN,10000); + break; + case 1: + _GO->SummonCreature(ethereum_NPC[1][rand()%5],_GO->GetPositionX(),_GO->GetPositionY(),_GO->GetPositionZ()+0.3, 0,TEMPSUMMON_TIMED_DESPAWN,10000); + break; +} +return true; +} + void AddSC_go_scripts() { Script *newscript; @@ -236,5 +272,16 @@ void AddSC_go_scripts() newscript->Name="go_tablet_of_the_seven"; newscript->pGOHello = &GOHello_go_tablet_of_the_seven; newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="go_jump_a_tron"; + newscript->pGOHello = &GOHello_go_jump_a_tron; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="go_ethereum_prison"; + newscript->pGOHello = &GOHello_go_ethereum_prison; + newscript->RegisterSelf(); + } |