// Town 22: Vasskolis
begintownscript;

variables;

short choice,dummy,i,j;
string dlgstr,secdlgstr;

body;

beginstate INIT_STATE;
	
	if (get_flag(250,9)) {
		reset_dialog();
		add_dialog_str(0,"You have reached a cut scene in which the final events of the scenario unfold. If you only watch two cut scenes in this scenario, this should be one of them. Would you like to skip it or see it?",0);
		add_dialog_choice(0,"Skip it.");
		add_dialog_choice(1,"See it.");
		if (run_dialog(1) == 1) {
			reset_dialog();
			add_dialog_str(0,"You are met by Ithik, who explains to you where Vasskolis comes from. It was founded by a combination of Bahssikavans fleeing Nolagh-Khar's invasion and Guardpost sliths.",0);
			add_dialog_str(1,"You reach Vasskolis, and Ithik presents you to the leader of the Vasskolis sliths. You rest there for several days, and Legare and his expedition make it over Mount Galthrax and join you.",0);
			add_dialog_str(2,"He and the leader of those of Vasskolis meet, and they agree to work together. A new route back to Avernum has been discovered, and you can finally take your leave of Legare's expedition.",0);
			add_dialog_str(3,"They will hold here for several months, so you make your way back to Avernum, perhaps someday to return.",0);
			add_dialog_str(4,"THE END.",0);
			end_scenario(1);
			}
		}
	
	set_total_visibility(1);
	
	while (char_ok(i) == 0)
		{i = i + 1; }
		
	relocate_character(0,9,53);
	relocate_character(1,10,53);
	relocate_character(2,11,53);
	relocate_character(3,12,53);
	relocate_character(4,13,53);
	set_character_facing(0,0);
	set_character_facing(1,0);
	set_character_facing(2,0);
	set_character_facing(3,0);
	set_character_facing(4,0);

	force_view_center(10,53);
	force_instant_terrain_redraw();

// Relevant flags:	
// 15 22 met Ithik in WB and finished sidequest with him
// 250 6 met Ithik in WB and freed him but he died in battle
// 14 5 but not 14 29 met Ithik in WB but didn't free him
// 14 3 2 met Ithik in WB but couldn't talk to him
// 15 21 and 250 2 met Ithik in UKG
// 15 21 but not 250 2 met Ithik in UKG but couldn't talk to him
// 19 11 met Ithik in MG1
// 19 14 met Ithik in MG1 but couldn't talk to him
	
	if ((get_flag(15,22)) || (get_flag(250,6)) || ((get_flag(14,5)) && (get_flag(14,29) == 0)))
		{clear_buffer();
		append_string("Not far from the cliff exit from Mount Galthrax, you are met by Ithik");
		if (get_flag(21,13))
			append_string(". He looks cheerful, even though he is still lightly wounded from the battle with the dragon.");
		else {
			if (get_flag(21,14))
				append_string(". He seems much better healed than he was after the fight, with just a small limp and a few cuts and scratches. Presumably he quaffed a healing potion.");
			else {
				if (get_flag(21,15))
					append_string("! He is grinning. _Too bad our paths did not cross in the mountain,_ he says. _I could have helped you. No matter. You did well alone._");
				else {
					if ((get_flag(250,6)) && (get_flag(19,11) == 0))
						append_string("! He smiles. _Yes, I managed to survive,_ he says. _After the fight, I patched up my wounds and crossed the mountain. I am well._");
					else {
						if ((get_flag(15,21)) && (get_flag(250,2) > 0) && (get_flag(19,11) == 0))
							append_string(", the living slith you met after killing Nolagh-Khar in Bahssikava! He explains, _I crossed the mountain before you. Too bad we did not meet. I could have helped you._");
						else {
							if ((get_flag(14,5)) && (get_flag(14,29) == 0) && (get_flag(15,21) == 0) && (get_flag(19,11) == 0))
								append_string(", the living slith you met but could not free in Bahssikava! He explains, _I managed to escape and crossed the mountain. Too bad we did not meet. I could have helped you._");
							}
						}
					}
				}
			}
		get_buffer_text(dlgstr);
		message_dialog(dlgstr,"He adds, _Follow me and we shall talk._ You do.");
		}
	else
		{clear_buffer();
		append_string("A slith greets you as you walk away from Mount Galthrax.");
		if (get_flag(250,2) == 0)
			append_string(" He speaks, but you can't understand him at all. He manages to indicate that you should follow him, however, so you do.");
		if (get_flag(250,2) == 1)
			append_string(" He speaks in the ancient slithzerikai language that you learned once before! You can't understand him very well, but he manages to indicate that you should follow him, however, so you do.");
		if (get_flag(250,2) == 2)
			append_string(" He speaks in the ancient slithzerikai language that you've begun to learn! You can understand most of what he says. His name is Ithik, and he wants you to follow him. You do.");
		if (get_flag(250,2) == 3)
			append_string(" He speaks in the ancient slithzerikai language you learned in Bahssikava. His name is Ithik, and he wants you to follow him. You do.");
		get_buffer_text(dlgstr);
		clear_buffer();
		if (get_flag(250,2) == 0)
			{if (get_flag(19,14))
				append_string("You notice that this slith is the same one whom you met in the top level of Mount Galthrax but with whom you were unable to communicate.");
			else
				{if (get_flag(15,21))
					append_string("You notice that this slith is the same one who stood beside Voss after you killed Nolagh-Khar in Bahssikava.");
				else
					{if (get_flag(14,29))
						append_string("You notice that this slith is the same one whom you freed from a prison in Bahssikava.");
					else
						if (get_flag(14,3) == 2)
							append_string("You notice that this slith is the same one whom you saw in a prison in Bahssikava and were unable to free.");
					}
				}
			}
		get_buffer_text(secdlgstr);
		message_dialog(dlgstr,secdlgstr);
		}
		
	if (get_flag(250,2) < 2)
		message_dialog("He also indicates by means of gestures and pointing that his name is Ithik.","");
		
	if (get_flag(250,5) == 1)
		{reset_dialog();
		add_dialog_str(0,"You show Ithik how badly injured Phaedra is. He inspects her carefully, and then he pulls a vial out of his cloak. He wipes some liquid over Phaedra's wounds, and they stop bleeding.",0);
		if (get_flag(250,2) >= 2)
			add_dialog_str(1,"_She will be fine for the moment,_ he says. _The healers in Vasskolis will be able to do more for her. Let us get her there._",0);
		else
			add_dialog_str(1,"He indicates again for you to follow him. Presumably wherever he is leading you, there will be healers who can help her more.",0);
		dummy = run_dialog(1);
		take_item(451);
		}

	// from 12 30 to 12 10
	
	relocate_character(0,12,30);
	relocate_character(1,12,31);
	relocate_character(2,12,32);
	relocate_character(3,12,33);
	relocate_character(4,12,34);
	relocate_character(6,12,28);
	
	force_view_center(12,30);
	force_instant_terrain_redraw();
	
	if (get_flag(250,2) < 2)
		{message_dialog("Because of the language barrier, you follow Ithik in plain silence. You follow him down a road that presumably leads to Vasskolis.","");

		march_party(12,29);
		force_view_center(12,29);
		relocate_character(6,12,27);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,28);
		force_view_center(12,28);
		relocate_character(1,12,29);
		relocate_character(2,12,30);
		relocate_character(3,12,31);
		relocate_character(4,12,32);
		relocate_character(6,12,26);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,27);
		force_view_center(12,27);
		relocate_character(6,12,25);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,26);
		force_view_center(12,26);
		relocate_character(6,12,24);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,25);
		force_view_center(12,25);
		relocate_character(6,12,23);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,24);
		force_view_center(12,24);
		relocate_character(6,12,22);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,23);
		force_view_center(12,23);
		relocate_character(6,12,21);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		message_dialog("Eventually, the road starts to improve. You fancy that you can see the city in the distance.","");
		
		}
		
	else
		{text_bubble_on_char(i,"Tell me about Vasskolis.");
		march_party(12,29);
		force_view_center(12,29);
		relocate_character(6,12,27);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,28);
		force_view_center(12,28);
		relocate_character(6,12,26);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,27);
		force_view_center(12,27);
		relocate_character(6,12,25);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(i,"");
		text_bubble_on_char(6,"All right.");
		march_party(12,26);
		force_view_center(12,26);
		relocate_character(6,12,24);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,25);
		force_view_center(12,25);
		relocate_character(6,12,23);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,24);
		force_view_center(12,24);
		relocate_character(6,12,22);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		force_instant_terrain_redraw();
		reset_dialog();
		add_dialog_str(0,"_A hundred years ago, Vasskolis was a mighty city on the edge of the slith empire. It was a large city, despite its remote location. The river was safe to travel, then.",0);
		add_dialog_str(1,"_The river east of the city -- not to be confused with the river flowing from Mount Galthrax, the one you encountered -- was the main shipping line between the center of the empire and Vasskolis. It was the source of trade and prosperity.",0);
		add_dialog_str(2,"_However, over time, the river grew more dangerous to travel. Eventually, the centers of civilization lost contact with the city. We don't know much about what happened then, because the inhabitants currently in Vasskolis aren't from there.",0);
		add_dialog_str(3,"_They are from Bahssikava and the Guardpost._",0);
		dummy = run_dialog(1);
		
		text_bubble_on_char(i,"Bahssikava and the Guardpost?");
		march_party(12,23);
		force_view_center(12,23);
		relocate_character(6,12,21);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,22);
		force_view_center(12,22);
		relocate_character(6,12,20);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(i,"");
		text_bubble_on_char(6,"Yes.");
		march_party(12,21);
		force_view_center(12,21);
		relocate_character(6,12,19);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,20);
		force_view_center(12,20);
		relocate_character(6,12,18);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		force_instant_terrain_redraw();
		reset_dialog();
		if (get_flag(15,21) == 0)
			message_dialog("_Do you know the story of the demon invasion of Bahssikava?_ You reply in the negative. _That story will have to wait for another day, then._ He thinks for a moment.","_Suffice it to say that Bahssikava, the city of true sliths who lived near the steel doors, suffered a tremendous cavequake that collapsed much of the city. Demons then invaded, forcing most Bahssikavans to flee.");
		else
			add_dialog_str(0,"_Do you know the story of the demon invasion of Bahssikava?_ You reply in the affirmative. _Good. Do you know where the southern Bahssikavans went after the invasion?_ You reply in the negative. _That is our story._",0);
		add_dialog_str(1,"_We do not know where others went, and presumably most died, but some Bahssikavans fled through the newly-opened hole in the wall to the east, which led them into the homeland for the first time in centuries.",0);
		add_dialog_str(2,"_They did not recognize it, of course. The land south of the Guardpost is inhospitable._",0);
		dummy = run_dialog(1);
		
		force_view_center(33,52);
		force_instant_terrain_redraw();
		
		set_character_pose(9,1);
		put_effect_on_char(11,12,1,2);
		run_animation_sound(87);
		set_character_pose(9,2);
		force_instant_terrain_redraw();
		
		set_character_pose(7,1);
		put_effect_on_char(13,12,1,2);
		run_animation_sound(87);
		set_character_pose(7,2);
		kill_char(13,2,0);
		set_character_facing(7,2);
		force_instant_terrain_redraw();
		
		set_character_pose(10,1);
		put_effect_on_char(14,12,1,2);
		run_animation_sound(87);
		set_character_pose(10,2);
		force_instant_terrain_redraw();
		
		set_character_pose(8,1);
		put_effect_on_char(12,12,1,2);
		run_animation_sound(87);
		set_character_pose(8,2);
		force_instant_terrain_redraw();
		
		text_bubble_on_char(15,"Fight them! It is our only chance!");
		force_instant_terrain_redraw();
		pause(4 * get_flag(250,8));
		
		text_bubble_on_char(15,"");
		force_instant_terrain_redraw();
		
		put_jagged_zap(34,55,31,53,6);
		put_jagged_zap(34,55,32,49,6);
		put_jagged_zap(34,55,35,48,6);
		put_jagged_zap(34,55,36,52,6);
		put_effect_on_char(7,11,1,2);
		put_effect_on_char(8,11,1,2);
		put_effect_on_char(9,11,1,2);
		put_effect_on_char(10,11,1,2);
		run_animation_sound(25);
		kill_char(8,2,0);
		kill_char(9,2,0);
		
		relocate_character(16,32,52);
		relocate_character(11,31,53);
		relocate_character(12,36,52);
		relocate_character(17,35,51);
		set_character_facing(16,0);
		set_character_facing(17,0);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		set_character_pose(18,1);
		put_effect_on_char(7,12,1,2);
		run_animation_sound(71);
		set_character_pose(18,2);
		force_instant_terrain_redraw();
		
		set_character_pose(14,1);
		put_effect_on_char(10,12,1,2);
		run_animation_sound(71);
		set_character_pose(14,2);
		force_instant_terrain_redraw();
		kill_char(10,2,0);
		
		set_character_pose(18,11);
		force_instant_terrain_redraw();
		pause(1);
		set_character_pose(18,12);
		force_instant_terrain_redraw();
		pause(1);
		set_character_pose(18,13);
		force_instant_terrain_redraw();
		pause(1);
		set_character_pose(18,14);
		force_instant_terrain_redraw();
		pause(1);
		text_bubble_on_char(18,"Help me! Aaaugh!");
		force_instant_terrain_redraw();
		pause(4 * get_flag(250,8));
		
		text_bubble_on_char(18,"");
		force_instant_terrain_redraw();
		
		put_jagged_zap(34,55,32,49,5);
		put_effect_on_char(7,12,1,2);
		run_animation_sound(65);
		kill_char(7,2,0);
		pause(3 * get_flag(250,8));
		
		text_bubble_on_char(15,"Phew.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(15,"");
		force_instant_terrain_redraw();
		
		message_dialog("_As they continued north, they found another group of sliths displaced by the tremendous cavequake. They found the Guardpost sliths._","");

		force_view_center(36,32);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		relocate_character(20,35,32);
		relocate_character(19,35,30);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(19,"The Lost Ones!");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(20,"Yes. It is us.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"We have returned.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(19,"But how?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(20,"The cavequake.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"Through demons and dark wyrms,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"past the ravages of quakes");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"and the ruins of our civilization,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"we have come,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"seeking at last your pardon");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"for wrongs done by our ancestors");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		text_bubble_on_char(20,"against your ancestors.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(20,"");
		force_instant_terrain_redraw();
		
		message_dialog("_The sliths of the Guardpost were faced with a difficult situation: they had sworn holy oaths when they were first stationed at the steel doors never to let the exiles back into the homeland. However, circumstances were extreme._","");

		relocate_character(19,61,60);
		force_view_center(61,61);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(30,"Sir, we were given orders");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(30,"");
		text_bubble_on_char(30,"and swore on our lives");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(30,"");
		text_bubble_on_char(30,"to prevent these exiles");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(30,"");
		text_bubble_on_char(30,"from returning to our empire.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(30,"");
		text_bubble_on_char(19,"I know, Galnor,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"but tell me:");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"when was the last time");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"when we heard from the empire?");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		force_instant_terrain_redraw();
		pause(30);
		
		text_bubble_on_char(19,"Exactly.");
		force_instant_terrain_redraw();
		pause(4 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"We have not received word");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"or more importantly, replacements --");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"because, as we all know,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"we were only supposed to be here");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"for five years --");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"since the last arrival,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"nearly twenty years ago.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"And the couriers we've sent");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"have never once returned.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(32,"Sir, are you suggesting...");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(32,"");
		text_bubble_on_char(19,"Yes, Ponos.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"I am saying that we are cut off.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"We cannot get home.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"Our oaths are meaningless, now.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"The dangers of the river");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"are better barriers");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"than the steel doors ever were.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"We should take the exiles in");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"as our own.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(31,"Sir, I have...");
		force_instant_terrain_redraw();
		pause(7 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"an idea.");
		force_instant_terrain_redraw();
		pause(7 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(19,"Yes?");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(31,"Before communications were cut off,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"the nearest city was Vasskolis,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"just north of here.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"They have been cut off from the empire");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"for as long as we have,");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"but there's a chance");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"that their city might still exist.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"Let us join with the Bahssikavans");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"and try to reach Vasskolis.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"There we may plan our next move");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(31,"to try to get home.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(31,"");
		text_bubble_on_char(19,"Yes.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		text_bubble_on_char(19,"Let it be so.");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(19,"");
		force_instant_terrain_redraw();
		
		message_dialog("_So our ancestors, the Bahssikavans and the Guardpost sliths, headed north to Vasskolis. However, what they found was not what they were expecting._","");

		force_view_center(36,11);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		relocate_character(33,36,3);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(33,"Sir!");
		relocate_character(33,36,4);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		relocate_character(33,36,5);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		relocate_character(33,36,6);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(33,"");
		text_bubble_on_char(34,"Yes?");
		relocate_character(33,36,7);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		relocate_character(33,36,7);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(33,"The city is destroyed");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(33,"");
		text_bubble_on_char(33,"and abandoned.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(33,"");
		text_bubble_on_char(33,"I found no one left inside its walls.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(33,"");
		text_bubble_on_char(34,"It seems that the worst");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"has truly come to pass.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		set_character_facing(40,2);
		set_character_facing(34,6);
		text_bubble_on_char(34,"");
		text_bubble_on_char(40,"We are alone.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(40,"We lost contact with Vasskolis");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(40,"several years before we lost contact");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(40,"with the central region of the empire.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(40,"Their defenses must have failed");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(40,"years ago.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(34,"As I see it, we have a decision:");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"either we turn east and find the river");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"and from there attempt to make our way");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"back to civilization,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"a choice fraught with peril,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"since none of your scouts");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"sent down the river from the Guardpost");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"have ever returned;");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"or else we may choose to stay.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(40,"Stay? Where? Here?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(34,"Why not?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"Whatever menaced this city is gone;");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"the soil is still fertile,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"even if weeds have infested the crops,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"and all we must do is tend those crops");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"and rebuild a few buildings");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		text_bubble_on_char(34,"before we have a good place to settle.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(34,"");
		force_instant_terrain_redraw();
		pause(3 * get_flag(250,8));
		
		text_bubble_on_char(40,"I agree.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		text_bubble_on_char(40,"Let us settle here!");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(40,"");
		force_instant_terrain_redraw();
		
		message_dialog("_And that was how Vasskolis was founded._","");
		
		force_view_center(12,20);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(6,"We are the children of Bahssikavans");
		march_party(12,19);
		force_view_center(12,19);
		relocate_character(6,12,17);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,18);
		force_view_center(12,18);
		relocate_character(6,12,16);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,17);
		force_view_center(12,17);
		relocate_character(6,12,15);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"and sliths of the homeland.");
		march_party(12,16);
		force_view_center(12,16);
		relocate_character(6,12,14);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,15);
		force_view_center(12,15);
		relocate_character(6,12,13);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,14);
		force_view_center(12,14);
		relocate_character(6,12,12);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"We live in the ruins of Vasskolis");
		march_party(12,13);
		force_view_center(12,13);
		relocate_character(6,12,11);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,12);
		force_view_center(12,12);
		relocate_character(6,12,10);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		march_party(12,11);
		force_view_center(12,11);
		relocate_character(6,12,9);
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"as we have for nearly sixty years.");
		march_party(12,10);
		force_view_center(12,10);
		relocate_character(6,12,8);
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		force_instant_terrain_redraw();
		pause(6 * get_flag(250,8));
		
		text_bubble_on_char(i,"Why did you stop?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(i,"");
		text_bubble_on_char(6,"We are almost there.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"We are about to enter Vasskolis.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		force_instant_terrain_redraw();
		
		}
		
	if (get_flag(250,2) < 2)
		message_dialog("You draw slightly closer, and you realize that you can really see it! That is the city! That is... Vasskolis.","You draw near.");

	clear_buffer();
	append_string("This is it. ");
	if (get_flag(250,0) >= 4)
		{if (get_flag(250,0) > 0)
			{append_string("Your party contains the first slith");
			if (get_flag(251,3) > 1)
				append_string("s");
			}
		else
			{append_string("You are the first slith");
			if (party_size() > 1)
				append_string("s");
			}
		append_string(" from Avernum proper to return to a city in the homeland since the exile more than two hundred years ago. You are about to complete a greater deed than any done by a slith in these two dark centuries.");
		}
	else
		{append_string("You are not ");
		if (party_size() > 1)
			append_string("sliths");
		else
			append_string("a slith");
		append_string(", but even you can recognize the magnitude of the accomplishment that you are about to finish. You are about to enter a city of living sliths in the homeland.");
		}
	get_buffer_text(dlgstr);
	message_dialog(dlgstr,"You approach the ancient and shattered gates.");
	
	relocate_character(0,52,27);
	relocate_character(1,52,28);
	relocate_character(2,52,29);
	relocate_character(3,52,30);
	relocate_character(4,52,31);
	relocate_character(6,52,25);
	
	force_view_center(52,26);
	force_instant_terrain_redraw();
	pause(3 * get_flag(250,8));
	
	reset_dialog();
	add_dialog_str(0,"You stare, marvelling at the glorious and venerable slithzerikai architecture. These city walls have stood for decades even after the city was sacked. They are taller than the walls around Formello, rivalling even those around the Castle.",0);
	add_dialog_str(1,"The gates themselves were destroyed long ago. The rubble only partly remains. Even the road is overgrown with mushrooms, sprouting up and breaking cracks through the rock path.",0);
	add_dialog_str(2,"Ithik stops at the ruins of the gates. It appears that he sees someone.",0);
	dummy = run_dialog(1);
	
	activate_hidden_group(1);
	force_instant_terrain_redraw();
	pause(2 * get_flag(250,8));
	
	text_bubble_on_char(41,"Ithik!");
	force_instant_terrain_redraw();
	pause(2 * get_flag(250,8));
	
	relocate_character(41,52,19);
	force_instant_terrain_redraw();
	pause(2 * get_flag(250,8));
	
	relocate_character(41,52,20);
	force_instant_terrain_redraw();
	pause(2 * get_flag(250,8));
	
	text_bubble_on_char(41,"");
	text_bubble_on_char(6,"Dalos!");
	relocate_character(41,52,21);
	force_instant_terrain_redraw();
	pause(2 * get_flag(250,8));
	
	relocate_character(41,52,22);
	force_instant_terrain_redraw();
	pause(2 * get_flag(250,8));
	
	relocate_character(41,52,23);
	force_instant_terrain_redraw();
	pause(2 * get_flag(250,8));
	
	text_bubble_on_char(6,"");
	force_instant_terrain_redraw();
	
	if (get_flag(250,2) < 1)
		message_dialog("The two sliths exchange many words in a language that you don't understand. Finally, they seem to reach a conclusion. Ithik wants you to follow them.","");
	if (get_flag(250,2) == 1)
		message_dialog("The two sliths exchange many words in the Bahssikavan language that you understand only minimally. Finally, they seem to reach a conclusion. Ithik wants you to follow them.","");
	if (get_flag(250,2) > 1)
		{message_dialog("The two sliths converse in the Bahssikavan language. Fortunately, you understand enough of it to comprehend their conversation.","");

		text_bubble_on_char(41,"You've been gone so long....");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(41,"");
		text_bubble_on_char(6,"I didn't think I'd make it back.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"I was imprisoned by demons.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(41,"Demons?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(41,"");
		text_bubble_on_char(6,"It's a long story,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"and it will have to wait.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"I bring visitors,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"visitors from BEYOND THE STEEL DOORS!");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(41,"Beyond the steel doors?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(41,"");
		text_bubble_on_char(41,"Then you come with...");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(41,"");
		text_bubble_on_char(41,"Bahssikavans?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		if (get_flag(250,0) != 4)
			{text_bubble_on_char(41,"");
			text_bubble_on_char(41,"They do not look like Bahssikavans.");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			}
		
		text_bubble_on_char(41,"");
		text_bubble_on_char(6,"They are not.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"They are AVERNITES.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"There is much beyond those doors,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"much about which we knew little.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"We should not just stand here talking;");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"we should bring our visitors inside!");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		force_instant_terrain_redraw();
		
		}
		
	set_total_visibility(0);
	
	relocate_character(0,53,6);
	relocate_character(1,53,7);
	relocate_character(2,53,8);
	relocate_character(3,53,9);
	relocate_character(4,53,10);
	relocate_character(6,53,4);
	
	force_view_center(53,6);
	force_instant_terrain_redraw();
	
	reset_dialog();
	add_dialog_str(0,"Ithik leads you to a gigantic, labyrinthine building. After winding through many halls, most of which are completely or mostly fallen down, you come to a relatively intact part.",0);
	add_dialog_str(1,"The decor is vahnatai, and the adornments are technological. These are Bahssikavans indeed.",0);
	add_dialog_str(2,"A chief stands at the throne. It has faded and cracked since its heyday, but it is still impressive, and so is he. He is quite tall, almost as much as Legare, and his arms have broad, large muscles. He greets Ithik.",0);

	if (get_flag(250,2) < 2)
		message_dialog("Ithik and the chief speak at length. You can't understand them, but they eventually come to some sort of conclusion. Ithik leads you to a room that, like everything else around here, was once luxurious but has now fallen into disrepair.","You rest there for a long night. In the morning, Ithik returns.");
	else
		{text_bubble_on_char(6,"They come from Avernum.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(42,"Avernum?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(6,"Beyond the steel doors,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"past Bahssikava.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(6,"Together we slew the dragon.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(46,"They slew the dragon!");
		force_instant_terrain_redraw();
		pause(1);
		
		text_bubble_on_char(48,"They slew the dragon!");
		force_instant_terrain_redraw();
		pause(2);
		
		text_bubble_on_char(45,"The dragon!");
		force_instant_terrain_redraw();
		pause(2);
		
		text_bubble_on_char(50,"The dragon!");
		force_instant_terrain_redraw();
		pause(1 * get_flag(250,8));
		
		text_bubble_on_char(47,"The dragon!");
		force_instant_terrain_redraw();
		pause(2 * get_flag(250,8));
		
		text_bubble_on_char(46,"");
		text_bubble_on_char(48,"");
		force_instant_terrain_redraw();
		pause(2);
		
		text_bubble_on_char(45,"");
		text_bubble_on_char(50,"");
		text_bubble_on_char(47,"");
		force_instant_terrain_redraw();
		
		text_bubble_on_char(42,"That is a mighty accomplishment.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"We are greatly in your debt,");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		if (party_size() > 1)
			text_bubble_on_char(42,"adventurers.");
		else
			text_bubble_on_char(42,"adventurer.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"But we must know:");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"why have you come?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"We in Vasskolis");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"have not had visitors");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"in our sixty years here.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		force_instant_terrain_redraw();
		
		reset_dialog();
		add_dialog_str(0,"He looks at you curiously. _Why did you come?_ he asks again.",0);
		add_dialog_choice(0,"(Tell him about Legare.)");
		add_dialog_choice(1,"_Um...._");
		add_dialog_choice(2,"_Just passing through._");
		choice = run_dialog(1);
		if (choice == 1)
			{if (party_size() > 1)
				text_bubble_on_char(i,"We come from a slith");
			else
				text_bubble_on_char(i,"I come from a slith");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			text_bubble_on_char(i,"");
			text_bubble_on_char(i,"who calls himself the Prophet.");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			text_bubble_on_char(i,"");
			text_bubble_on_char(42,"Very interesting.");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			text_bubble_on_char(42,"");
			}
		if (choice == 2)
			{text_bubble_on_char(i,"Um....");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			text_bubble_on_char(i,"");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			message_dialog("The slith chief looks at you very weirdly.","");
			}
		if (choice == 3)
			{if (party_size() > 1)
				text_bubble_on_char(i,"We're just passing through.");
			else
				text_bubble_on_char(i,"I'm just passing through.");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			text_bubble_on_char(i,"");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			message_dialog("The slith chief looks at you very weirdly.","");
			
			text_bubble_on_char(42,"That's... interesting.");
			force_instant_terrain_redraw();
			pause(5 * get_flag(250,8));
			
			text_bubble_on_char(42,"");
			}
	
		text_bubble_on_char(42,"But where are my manners?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"You must be exhausted.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"Ithik, take them to a place");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"where they may rest.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		text_bubble_on_char(42,"We will talk tomorrow.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(42,"");
		force_instant_terrain_redraw();
		
		message_dialog("Ithik leads you to a room that, like everything else around here, was once luxurious but has now fallen into disrepair.","You rest there for a long night. In the morning, Ithik returns.");
		}
		
	relocate_character(0,61,6);
	relocate_character(1,61,7);
	relocate_character(2,61,8);
	relocate_character(3,61,9);
	relocate_character(4,61,10);
	relocate_character(6,61,4);
	set_character_facing(6,4);
		
	force_view_center(61,6);
	force_instant_terrain_redraw();
	
	if (get_flag(250,2) < 2)
		{message_dialog("He is carrying a large blue crystal. He hands it to you. You begin to hear a strange whispering in your head. The crystal wants you to look into it. The urge becomes overpower.","You stare into the heart of the crystal. You feel it make a direct connection with your mind, transmitting information directly into your head. Thoughts shift, and things that didn't make sense to you before now are clear.");
		
		text_bubble_on_char(6,"Can you understand me?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		text_bubble_on_char(i,"Yes! How?");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(i,"");
		text_bubble_on_char(6,"It is a mind crystal.");
		force_instant_terrain_redraw();
		pause(5 * get_flag(250,8));
		
		text_bubble_on_char(6,"");
		}
	
	text_bubble_on_char(6,"Come, there is much to discuss.");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(6,"");
	force_instant_terrain_redraw();
	
	message_dialog("Ithik leads you back to the chief. After much questioning, you tell him about Legare and how you came here.","_If the dragon is dead, the mountain is safe to cross,_ the chief says. _I will send messengers to Legare. He and his followers may come here. I must hear the full story of these strange... Avernite... sliths._");

	force_view_center(51,51);
	force_instant_terrain_redraw();
	
	reset_dialog();
	add_dialog_str(0,"A day passes. You rest more, healing from your long dungeon battles in the tunnels under Bahssikava, in Ancient Bahssikava, and in Mount Galthrax.",0);
	add_dialog_str(1,"You spend some time reflecting on your achievements as well. Of all your adventures, this one has meant the most to the most people. An entire race of being, all Avernite slithzerikai, have been helped by your deeds.",0);
	add_dialog_str(2,"Then you receive word that Legare has arrived. You are summoned again to the chief's throne room to witness the meeting at last between the leader of the returning exiles and the leader of the nearest city of homeland sliths.",0);
	dummy = run_dialog(1);
	
	relocate_character(0,52,6);
	relocate_character(1,52,7);
	relocate_character(2,52,8);
	relocate_character(3,54,6);
	relocate_character(4,54,7);
	relocate_character(6,54,8);
	set_character_facing(6,0);
	
	activate_hidden_group(2);
	
	erase_char(4);
	erase_char(5);
	activate_hidden_group(3);
	
	force_view_center(53,6);
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"In dreams she came to me");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"with whispers soft,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"To tell me now was time,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"the time foretold,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"When to our home");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"we would return with joy,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Receiving welcome, cousin to cousin,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Estranged races meeting long at last;");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"To home we go,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
		
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"to home unknown, unseen,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Unheard, but not unfelt,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"unwanted, lov'd,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"As prodigal slithzerikai we come,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"And humbly beg forgiveness generous");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Of brethren wronged,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"gods scorned, land fail'd:");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"To make amends our goal,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"with malice none,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"We now embrace our just,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"true cousins home:");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Where wounds forgot,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"new hopes shall soon arise.");
	force_instant_terrain_redraw();
	pause(7 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	force_instant_terrain_redraw();
	
	message_dialog("Legare's reverberant voice fades away, but the surrounding slith warriors and priests still stand transfixed; such is his power that even the chief stares at him, his eyes filled with wonder.","");
	
	text_bubble_on_char(42,"Truly you are welcome here, Prophet.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(42,"");
	text_bubble_on_char(42,"You and yours may stay");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(42,"");
	text_bubble_on_char(42,"as long as you desire.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(42,"");
	text_bubble_on_char(51,"Thank you, wise chief.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Now I far better understand");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"the history of my people.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"During the attack of demons");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"that destroyed Ancient Bahssikava,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"the north Bahssikavans fled up");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"and founded the Bahssikava");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"that I knew,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"but the south Bahssikavans fled east");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"and ran into homeland sliths");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"in the Guardpost,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"and together they went north,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"and founded Vasskolis.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"I greet you fondly, cousin.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	force_instant_terrain_redraw();
	
	message_dialog("The two exchange a long glance. You know that they will discuss a great deal in the coming months.","");
	
	set_character_facing(51,4);
	text_bubble_on_char(51,"And now I must congratulate");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	if (party_size() > 1)
		text_bubble_on_char(51,"my scouts who cleared the way.");
	else
		text_bubble_on_char(51,"my scout who cleared the way.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	
	text_bubble_on_char(51,"Phaedra!");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"You have done what I asked.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"You may take your leave");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	if (party_size() > 2)
		text_bubble_on_char(51,"of our heroes.");
	if (party_size() == 2)
		text_bubble_on_char(51,"of our hero.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	force_instant_terrain_redraw();
	
	clear_buffer();
	append_string("Phaedra turns to you. _It was fun working with you, ");
	append_char_name(i);
	append_string(". We did it, you know._ She grins at you. _I know you'll do well in the future. Kill some baddies for me._");
	get_buffer_text(dlgstr);
	message_dialog(dlgstr,"");
	
	text_bubble_on_char(52,"You know, I was sent here");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"from Fort Dranlon with orders");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"to report back");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"if I thought you, Legare,");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"were dangerous,");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"and forces from the fort");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"would come and destroy");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"you and your following.");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"I think I can report to them");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	text_bubble_on_char(52,"that you are dangerous to no one.");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(52,"");
	force_instant_terrain_redraw();
	
	message_dialog("Legare smiles.","");
	
	text_bubble_on_char(51,"That is well.");
	force_instant_terrain_redraw();
	pause(5 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"I have further good news");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	clear_buffer();
	append_string("for ");
	append_char_name(i);
	if (party_size() > 2)
		append_string(" and the others");
	if (party_size() == 2)
		{append_string(" and ");
		j = i + 1;
		while (char_ok(j) == 0)
			{j = j + 1; }
		append_char_name(j);
		}
	append_string(".");
	
	get_buffer_text(dlgstr);
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,dlgstr);
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	if (get_flag(250,3) == 2)
		text_bubble_on_char(51,"I know you wanted to leave earlier,");
	if (get_flag(250,3) == 1)
		text_bubble_on_char(51,"You decided earlier to travel with us,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	if (get_flag(250,3) == 2)
		text_bubble_on_char(51,"but you couldn't,");
	if (get_flag(250,3) == 1)
		text_bubble_on_char(51,"but that was long ago,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	if (get_flag(250,3) == 2)
		text_bubble_on_char(51,"because the exit was blocked.");
	if (get_flag(250,3) == 1)
		text_bubble_on_char(51,"and you may have changed your mind.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"We have found another exit");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"through one of the tunnels");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"in Mount Galthrax.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"You can return to Avernum,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"or, if you choose,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"you may stay with us.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Either way, we will not journey on");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"for a long time.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"We have much to learn here first,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"and we must gather supplies as well.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Alas, I do not have a reward");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"for your undeniably great service,");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"but you may travel on");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"with the intense satisfaction");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"of a job very, very well done.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Someday we may have need of you again.");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"Until then...");
	force_instant_terrain_redraw();
	pause(6 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	text_bubble_on_char(51,"farewell.");
	force_instant_terrain_redraw();
	pause(7 * get_flag(250,8));
	
	text_bubble_on_char(51,"");
	force_instant_terrain_redraw();
	
	reset_dialog();
	add_dialog_str(0,"A long moment passes between you and Legare. You have brought him an incredible distance. You have reached the farthest extent of Bahssikava and the final remnant of Bahssikavans. Vasskolis is as far as it goes. Past this, Bahssikava has not touched.",0);
	add_dialog_str(1,"You have brought him far, but you know that his journey is just beginning. Vasskolis is broken off from the center of slith civilization. He must travel much farther to reach the homeland that he has sought his whole life.",0);
	add_dialog_str(2,"And when he goes, you may go with him. But for now, you will rest here in Vasskolis and perhaps return to Avernum for a time. Then, when you are ready, you may return to Legare and join the Exodus.",0);
	dummy = run_dialog(1);
	
	small_draw_pic_dialog(1926,"THE END");
	
	end_scenario(1);
	
break;

beginstate EXIT_STATE;
break;

beginstate START_STATE;
break;