Skip to content

Commit

Permalink
Scripts/Icecrown Citadel: Teleporting to the Frozen Throne should now…
Browse files Browse the repository at this point in the history
… happen as on retail (with an areatrigger, not gossip), also added missing spawns to Frozen Throne and Tirion's gossip

NOTE: This does NOT mean The Lich King script is coming soon
  • Loading branch information
Shauren committed Jul 2, 2011
1 parent b216522 commit 65a40a5
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 9 deletions.
9 changes: 5 additions & 4 deletions sql/scripts/world_scripts_full.sql
Expand Up @@ -9,7 +9,7 @@ UPDATE `gameobject_template` SET `ScriptName`='';
UPDATE `outdoorpvp_template` SET `ScriptName`='';

/* AREA TRIGGERS */
DELETE FROM `areatrigger_scripts` WHERE `entry` IN (822,5284,5285,5286,5287,4871,4872,4873,5108,5332,5338,5334,5340,5369,5423,5633,5604,5698,5649,5729,5616,5617,5618);
DELETE FROM `areatrigger_scripts` WHERE `entry` IN (822,5284,5285,5286,5287,4871,4872,4873,5108,5332,5338,5334,5340,5369,5423,5633,5604,5698,5649,5729,5616,5617,5618,5718);
DELETE FROM `areatrigger_scripts` WHERE `entry` BETWEEN 1726 AND 1740;
INSERT INTO `areatrigger_scripts` (`entry`,`ScriptName`) VALUES
(822, 'at_map_chamber'),
Expand Down Expand Up @@ -47,9 +47,10 @@ INSERT INTO `areatrigger_scripts` (`entry`,`ScriptName`) VALUES
(5698, 'at_icc_saurfang_portal'),
(5649, 'at_icc_shutdown_traps'),
(5729, 'at_icc_start_blood_quickening'),
(5616,'at_icc_start_frostwing_gauntlet'),
(5617,'at_icc_start_frostwing_gauntlet'),
(5618,'at_icc_start_frostwing_gauntlet');
(5616, 'at_icc_start_frostwing_gauntlet'),
(5617, 'at_icc_start_frostwing_gauntlet'),
(5618, 'at_icc_start_frostwing_gauntlet'),
(5718, 'at_frozen_throne_teleport');

/* WORLD BOSS */
UPDATE `creature_template` SET `ScriptName`='boss_ysondre' WHERE `entry`=14887;
Expand Down
3 changes: 3 additions & 0 deletions sql/updates/world/2011_07_02_00_world_areatrigger_scripts.sql
@@ -0,0 +1,3 @@
DELETE FROM `areatrigger_scripts` WHERE `entry`=5718;
INSERT INTO `areatrigger_scripts` (`entry`,`ScriptName`) VALUES
(5718,'at_frozen_throne_teleport');
18 changes: 18 additions & 0 deletions sql/updates/world/2011_07_02_00_world_instance_misc.sql
@@ -0,0 +1,18 @@
UPDATE `gameobject_template` SET `flags`=48 WHERE `entry`=202223; -- Scourge Transporter to the Frozen Throne
UPDATE `gameobject_template` SET `flags`=32 WHERE `entry` IN (202242,202243,202244,202245,202235,202246); -- Scourge Transporters

DELETE FROM `gameobject` WHERE `id` IN (202189,202188);
INSERT INTO `gameobject` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`position_x`,`position_y`,`position_z`,`orientation`,`rotation0`,`rotation1`,`rotation2`,`rotation3`,`spawntimesecs`,`animprogress`,`state`) VALUES
(151,202189,631,15,1,503.62,-2124.66,836.607,3.14159,0,0,0,1,6000,255,1),
(153,202188,631,15,1,503.62,-2124.66,836.607,3.14159,0,0,0,1,6000,255,0);

-- Highlord Tirion Fordring gossip
UPDATE `creature_template` SET `gossip_menu_id`=10993 WHERE `entry`=38995;

DELETE FROM `gossip_menu` WHERE `entry`=10993;
INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES
(10993,15290);

DELETE FROM `gossip_menu_option` WHERE `menu_id`=10993;
INSERT INTO `gossip_menu_option` (`menu_id`,`id`,`option_icon`,`option_text`,`option_id`,`npc_option_npcflag`,`action_menu_id`,`action_poi_id`,`box_coded`,`box_money`,`box_text`) VALUES
(10993,0,0,'We are prepared, Highlord. Let us battle for the fate of Azeroth! For the light of dawn!',1,1,0,0,0,0,'');

This comment has been minimized.

Copy link
@vtstanescu

vtstanescu Jul 2, 2011

Contributor

this shouldn't be in the lick king script for start intro?

This comment has been minimized.

Copy link
@Shauren

Shauren Jul 2, 2011

Author Member

its just gossip menu option and yes ill be leaving it here, in db

Expand Up @@ -43,8 +43,6 @@ class icecrown_citadel_teleport : public GameObjectScript
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Teleport to the Upper Spire.", GOSSIP_SENDER_ICC_PORT, UPPER_SPIRE_TELEPORT);
if (instance->GetBossState(DATA_VALITHRIA_DREAMWALKER) == DONE)
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Teleport to Sindragosa's Lair", GOSSIP_SENDER_ICC_PORT, SINDRAGOSA_S_LAIR_TELEPORT);
if (instance->GetBossState(DATA_PROFESSOR_PUTRICIDE) == DONE && instance->GetBossState(DATA_BLOOD_QUEEN_LANA_THEL) == DONE && instance->GetBossState(DATA_SINDRAGOSA) == DONE)
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Teleport to The Frozen Throne", GOSSIP_SENDER_ICC_PORT, FROZEN_THRONE_TELEPORT);
}

player->SEND_GOSSIP_MENU(player->GetGossipTextId(go->GetGOInfo()->GetGossipMenuId()), go->GetGUID());
Expand Down Expand Up @@ -72,7 +70,23 @@ class icecrown_citadel_teleport : public GameObjectScript
}
};

class at_frozen_throne_teleport : public AreaTriggerScript
{
public:
at_frozen_throne_teleport() : AreaTriggerScript("at_frozen_throne_teleport") { }

bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
if (instance->GetBossState(DATA_PROFESSOR_PUTRICIDE) == DONE && instance->GetBossState(DATA_BLOOD_QUEEN_LANA_THEL) == DONE && instance->GetBossState(DATA_SINDRAGOSA) == DONE)
player->CastSpell(player, FROZEN_THRONE_TELEPORT, true);

return true;
}
};

void AddSC_icecrown_citadel_teleport()
{
new icecrown_citadel_teleport();
new at_frozen_throne_teleport();
}
Expand Up @@ -96,14 +96,14 @@ class instance_icecrown_citadel : public InstanceMapScript
PlagueSigilGUID = 0;
BloodwingSigilGUID = 0;
FrostwingSigilGUID = 0;
memset(PutricidePipeGUIDs, 0, 2*sizeof(uint64));
memset(PutricideGateGUIDs, 0, 2*sizeof(uint64));
memset(PutricidePipeGUIDs, 0, 2 * sizeof(uint64));
memset(PutricideGateGUIDs, 0, 2 * sizeof(uint64));
PutricideCollisionGUID = 0;
FestergutGUID = 0;
RotfaceGUID = 0;
ProfessorPutricideGUID = 0;
PutricideTableGUID = 0;
memset(BloodCouncilGUIDs, 0, 3*sizeof(uint64));
memset(BloodCouncilGUIDs, 0, 3 * sizeof(uint64));
BloodCouncilControllerGUID = 0;
BloodQueenLanaThelGUID = 0;
CrokScourgebaneGUID = 0;
Expand Down Expand Up @@ -198,6 +198,7 @@ class instance_icecrown_citadel : public InstanceMapScript
case NPC_SE_HIGH_OVERLORD_SAURFANG:
if (TeamInInstance == ALLIANCE)
creature->UpdateEntry(NPC_SE_MURADIN_BRONZEBEARD, ALLIANCE, creature->GetCreatureData());
// no break;
case NPC_SE_MURADIN_BRONZEBEARD:
DeathbringerSaurfangEventGUID = creature->GetGUID();
creature->LastUsedScriptID = creature->GetScriptId();
Expand Down

16 comments on commit 65a40a5

@oMadMano
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NOTE: This does NOT mean The Lich King script is coming soon Yeah right ... as always when i finish something Shauren puts the right thing up ... i hope this time i will finish the LK script and you won't release few hours later ...

@Shauren
Copy link
Member Author

@Shauren Shauren commented on 65a40a5 Jul 2, 2011

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oMadMano: whatever you do, this will not be accepted. when i started scripting icc i made it clear i will not accept any scripts made by anyone

@oMadMano
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know Shauren but what i am pointing out is that i mess up with ideas and things till i get close to the end version of the script and after few hours u came out with the right way of em :)) its kinda frustrating ... anyway gl hf scripting LK :) not that hard if you need help / info about the frost room just PM but you are a tc dev and im lets say a noob so i think you wont need my help ... you already know how to enable it :D

Best regards Mad ;)

@Aristoo
Copy link
Contributor

@Aristoo Aristoo commented on 65a40a5 Jul 2, 2011

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So... TC will be rather without maybe good Lich King script than accept script from somebode who dont work "for TC" ? There are many very good scripts, but very few are accepte, because are not create by TC people... This is nothing more that your ego - "That's ME who scripted all ICC!"
This is not insult or something like this... It is just my opinion. And sorry for bad english.

@JasperAppec
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oMadMano: how old are you? You sound like a kid who won't get what he wants.

Good job Shauren, it's a start. =)

@Shauren
Copy link
Member Author

@Shauren Shauren commented on 65a40a5 Jul 2, 2011

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Aristoo it might seem this way however i havent yet seen any user script that works as its supposed to AND is well written

@oMadMano
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Neah im 21 and im not crying for things like that i can make/ fix scripts ... Shauren was my inspiration my impulse to start learning scripting and other things hes a mad genius but sometimes its hard to take his attention ... im not saying that hes not one of the best tc scripters out there im just saying that its frustrating to work on something and after few hours someone from tc releases a better version of it or so ... its just coincidence anyway forget what i said ... Good luck on your work Shauren

@Shauren yo could start to make a standard guide on HOW is GOOD to start ... be a guru teach others your style of scripting =))) btw could someone please give me deatails about frostmourne roo on 10-25 heroic version ?? tyvm

@kaelima
Copy link
Contributor

@kaelima kaelima commented on 65a40a5 Jul 2, 2011

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oMadMano: Where are your scripts that you speak of? Guide... where do you think he learnt from? It's his choice if he wants to write a guide or not.

@Aristoo
Copy link
Contributor

@Aristoo Aristoo commented on 65a40a5 Jul 2, 2011

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kaelima: Don't by so strict... He just asked if he WANT make any guide. It was not command.

@oMadMano
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kaelima I wont release those or give you my scripts they are private but i am talking about learning others Your standards, its a learning project so it should be some guides or How to's for those who want to learn and help you guys ... But you got your team of developers and that`s it ... you don't want others to learn from you ... Anyway my point is that you could help others to learn by making guides or explain why is that there and not on other place or how the core spell system works ... i wont release anything that i made to public and <-- this is the reason why because you do not help other peoples that has the will and power to learn something from you guys... i might be wrong but this is going to mangos style (those developers are not giving feedback to no one and they only help each others) ... :| Just think C++ scripting has a lot of books to make you understand why and how the program works ... Some guides would be helpful why? lets say there is a guide for SAI or so just think there could be some peoples that love to do that and they could make all scripts for all AI's on instance and then TC could accept it and then this project will grow faster and so on ...
PS: don't tell me that you guys don't have the scripts working because i know some of you guys had em already :P and i don't care don't want em I JUST WANT TO LEARN TO BE LIKE you guys :D
@Aristoo Agree with you :)

@Warpten
Copy link
Member

@Warpten Warpten commented on 65a40a5 Jul 2, 2011

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wont release those or give you my scripts they are private

Then STFU. (sorry for being rude but this is the opposite of the TC spirit)

@oMadMano
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why should i release something if it would be rejected anyway ? why because it dosen't respect the TC standards ... that's why i am asking for guides or things like that because i want to make em acceptable ...

@JasperAppec
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oMadMano, please get the fuck out of here.
These guys, the developers, are working very hard to publish their scripts and you guys always just want more and more. It's never enough. Now you want a guide, because you want to be just like these guys, whilst you are the OPPOSITE of them?
Please, FUCK OFF!

Edit.
Oh and why can't TC be like Mangos in this case? There's nothing bad about them as far as I can recall..
I seriously hope you don't think TC was made because Mangos had developers who were not helpful.......

@Warpten
Copy link
Member

@Warpten Warpten commented on 65a40a5 Jul 2, 2011

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why should i release something if it would be rejected anyway ? why because it dosen't respect the TC standards

Just take a look at the current scripts, those ARE guides.

@oMadMano
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Discovered I do not nothing from em because i don't own any private server so i don't give a fuck ... but i want to learn and understand how this things are working that's the only things that i want to master atm :P

@kapoeira thank you for the tip :D

@Machiavell1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The thing is, writing "good" scripts means analyzing sniffs from retail and replicating those events, to the last packet - in addition to basic codestyle etc. The majority of the contributors out there doesn't have access to any sniffs, and we - the TC team - do not wish to disclose sensitive information about our data gathererers - that may be found in sniffs - to people outside of our circle of trust, in case it falls in the wrong hands.

Please sign in to comment.