void QuestComplete(string sQuestName)
{
	int tmpLangFileID = LanguageOpenFile("interface_strings.txt");
	ref PChar, sld;
	int iPassenger;
	PChar = GetMainCharacter();
	float locx;
	float locy;
	float locz;
	int iColony;
	int iTradeGoods, iQuantityGoods, iTradeNation;
	string homelocation, homegroup, homelocator, tavernfriend;
// KK -->
	int cc;
	int canQty = 0;
	int crewQty = 0;
	ref port;
// <-- KK
	float x, y, z;// MAXIMUS
	string nearloc;// MAXIMUS
	aref arship; // PB

	//Log_SetStringToLog("Quest " + sQuestName + " completed");
	//trace("=============================================== QUEST " + sQuestName + " CHECKED");

	switch(sQuestName)
	{
		// NK <--

		case "first_step":
			SetQuestHeader("ArrivedatPOP");
			AddQuestRecord("ArrivedatPOP", "1");

			DisableFastTravel(true);
			DisableMenuLaunch(true);
			bSuppressResurrection = true;

			PChar.quest.firstwork = "rencontre";
			Pchar.quest.firstwork.win_condition.l1 = "location";
			Pchar.quest.firstwork.win_condition.l1.location = "Port_au_Prince_town";
			PChar.quest.firstwork.win_condition = "meethector";
			Locations[FindLocation("Port_au_Prince_town")].vcskip = true;
			locations[FindLocation("Hispaniola_Port")].reload.l4.disable = 1;

                        break;

		case "meethector":
			locations[FindLocation("Port_au_Prince_town")].reload.l2.disable = 1;
                        ChangeCharacterAddressGroup(CharacterFromID("Hector Barbossa"), "Port_au_Prince_town", "officers", "reload2_1");
                        ChangeCharacterAddressGroup(CharacterFromID("Pierre Delacroix"), "Port_au_Prince_town", "goto", "goto3");
			LAi_SetActorType(characterFromID("Hector Barbossa"));
			Characters[GetCharacterIndex("Hector Barbossa")].dialog.currentnode = "First time";
			LAi_ActorDialog(characterFromID("Hector Barbossa"), pchar, "", 2.0, 1.0);

                        break;

		case "rencdela":
			LAi_SetActorType(CharacterFromID("Port_au_Prince_soldier_05"));
			LAi_ActorGoToLocator(CharacterFromID("Port_au_Prince_soldier_05"), "goto", "goto4", "", 20.0);
			LAi_ActorRunToLocation(characterFromID("Hector Barbossa"), "reload", "reload17", "none", "", "", "", 0.0);
			LAi_SetActorType(characterFromID("Pierre Delacroix"));
			Characters[GetCharacterIndex("Pierre Delacroix")].dialog.currentnode = "First time";
			LAi_ActorDialog(characterFromID("Pierre Delacroix"), pchar, "", 2.0, 1.0);

                        break;

		case "renceug":
			LAi_SetActorType(CharacterFromID("Port_au_Prince_soldier_05"));
			LAi_ActorGoToLocator(CharacterFromID("Port_au_Prince_soldier_05"), "goto", "goto21", "retourposte", 20.0);
			locations[FindLocation("Port_au_Prince_town")].reload.l2.disable = 0;
			LAi_SetActorType(characterFromID("Pierre Delacroix"));
			LAi_ActorGoToLocation(characterFromID("Pierre Delacroix"), "reload", "reload19", "none", "", "", "", 0.0);
			AddQuestRecord("ArrivedatPOP", "2");
                        ChangeCharacterAddressGroup(CharacterFromID("Eugene Martin"), "BC_Store", "sit", "sit1");
			Characters[GetCharacterIndex("Eugene Martin")].dialog.currentnode = "begin1_1";
			locations[FindLocation("Buccaneers_Camp")].reload.l6.disable = 1;

                       break;

		case "retourposte":
	               LAi_SetGuardianType(CharacterFromID("Port_au_Prince_soldier_05"));
	               LAi_group_MoveCharacter(CharacterFromID("Port_au_Prince_soldier_05"), "FRANCE_SOLDIERS");

                       break;

		case "rencemil":
			locations[FindLocation("Buccaneers_Camp")].reload.l6.disable = 0;
			ChangeCharacterAddressGroup(characterFromID("Emilio Soares"), "BC_tavern", "Sit", "Sit13");
			LAi_SetSitType(characterFromID("Emilio Soares"));
			Characters[GetCharacterIndex("Emilio Soares")].dialog.currentnode = "begin1_1";
			AddQuestRecord("ArrivedatPOP", "3");

                       break;

		case "rencluc":            
			DoReloadCharacterToLocation("Buccaneers_Camp", "goto", "goto42");
			GiveShip2Character(pchar,"Barque3_50","La Chanceuse",PIRATE,true,true);
			ChangeCharacterAddressGroup(CharacterFromID("Emilio Soares"), "Buccaneers_Camp", "reload", "reload4");

			LAi_SetActorType(characterFromID("Emilio Soares"));
			LAi_SetImmortal(CharacterFromID("Emilio Soares"), 1);
			LAi_ActorFollowEverywhere(characterFromID("Emilio Soares"), "", 60.0);
			AddCharacterGoods(pchar, GOOD_SANDAL, 200);
  
			SetCharacterShipLocation(Pchar, "Hispaniola_shore_02");
			locations[FindLocation("Hispaniola_Port")].reload.l4.disable = 0;
			DisableFastTravel(false);
			DisableMenuLaunch(false);

			pchar.quest.remove_emilio.win_condition.l1 = "location";
			pchar.quest.remove_emilio.win_condition.l1.location = "Hispaniola_shore_02";
			pchar.quest.remove_emilio.win_condition = "retrait";

                       break;

		case "retrait":
			LAi_SetOfficerType(characterFromID("Emilio Soares"));
			ChangeCharacterAddress(characterFromID("Emilio Soares"), "none", "");
                        ChangeCharacterAddressGroup(CharacterFromID("Luc Merin"), "Smuggler_Residence", "goto", "goto1");
			Characters[GetCharacterIndex("Luc Merin")].dialog.currentnode = "begin1_1";

                       break;

		case "goctopus":
			SetCharacterShipLocation(Pchar, "Falaise_de_fleur_shore");            
			DoReloadCharacterToLocation("Falaise_de_fleur_shore", "goto", "locator8");
                        ChangeCharacterAddressGroup(CharacterFromID("Luc Merin"), "Falaise_de_fleur_shore", "goto", "locator22");
			LAi_SetActorType(characterFromID("Luc Merin"));
			Characters[GetCharacterIndex("Luc Merin")].dialog.currentnode = "begin_3";
			LAi_ActorDialog(characterFromID("Luc Merin"), pchar, "", 2.0, 1.0);

                       break;

		case "revoireug":            
			LAi_ActorRunToLocation(characterFromID("Luc Merin"), "reload", "reload2_back", "none", "", "", "", 0.0);
			Characters[GetCharacterIndex("Eugene Martin")].dialog.currentnode = "begin_11";
			RemoveCharacterGoods(pchar, GOOD_SANDAL, 200);
			AddCharacterGoods(pchar, GOOD_SILK, 200);

                       break;

		case "rencelias":
			AddQuestRecord("ArrivedatPOP", "4");
			AddCharacterGoods(pchar, GOOD_LINEN, 250);
			ChangeCharacterAddressGroup(characterFromID("Elias Bartels"), "Pirate_tavern", "Sit", "Sit4");
			LAi_SetSitType(characterFromID("Elias Bartels"));
			Characters[GetCharacterIndex("Elias Bartels")].dialog.currentnode = "begin1_1";


                       break;

                      case "gopalm":
			SetCharacterShipLocation(Pchar, "Douwesen_shore_01");            
			DoReloadCharacterToLocation("Douwesen_shore_01", "goto", "locator12");
                        ChangeCharacterAddressGroup(CharacterFromID("Elias Bartels"), "Douwesen_shore_01", "goto", "locator6");
			LAi_SetActorType(characterFromID("Elias Bartels"));
			Characters[GetCharacterIndex("Elias Bartels")].dialog.currentnode = "begin_3";
			LAi_ActorDialog(characterFromID("Elias Bartels"), pchar, "", 2.0, 1.0);

                       break;

		case "goeug":            
			LAi_ActorRunToLocation(characterFromID("Elias Bartels"), "reload", "reload2_back", "none", "", "", "", 0.0);
			Characters[GetCharacterIndex("Eugene Martin")].dialog.currentnode = "begin_15";
			RemoveCharacterGoods(pchar, GOOD_LINEN, 250);
			AddCharacterGoods(pchar, GOOD_ALE, 700);

                       break;

		case "rencmag":
			AddQuestRecord("ArrivedatPOP", "5");
			AddCharacterGoods(pchar, GOOD_CINNAMON, 350);
			PChar.quest.firstwork = "cinnamon";

                      break;

		case "emiliosuit":
                       ChangeCharacterAddressGroup(CharacterFromID("Emilio Soares"), "Buccaneers_Camp", "goto", "goto36");
                        LAi_SetActorType(characterFromID("Emilio Soares"));
			Characters[GetCharacterIndex("Emilio Soares")].dialog.currentnode = "begin_5";
			LAi_ActorDialog(characterFromID("Emilio Soares"), pchar, "", 2.0, 1.0);
			bSuppressResurrection = false;

                      break;

		case "voyage_fin_timer":
			Characters[GetCharacterIndex("Eugene Martin")].Location = "none";
			Characters[GetCharacterIndex("Emilio Soares")].Location = "none";
			PChar.quest.Bartolomeu = "end";
			PChar.quest.Bartolomeu.over = "yes";

			AddQuestRecord("ArrivedatPOP", "7");
			CloseQuestHeader("ArrivedatPOP");
			bSuppressResurrection = false;

		break;

		case "voyage_fin_timer2":
			Characters[GetCharacterIndex("Eugene Martin")].Location = "none";
			Characters[GetCharacterIndex("Emilio Soares")].Location = "none";
			PChar.quest.Bartolomeu = "end";
			PChar.quest.Bartolomeu.over = "yes";

			AddQuestRecord("ArrivedatPOP", "8");
			CloseQuestHeader("ArrivedatPOP");
			bSuppressResurrection = false;

		break;

		case "voyage_timer1":
			PChar.quest.voyage_timer1.win_condition.l1 = "Timer";
			PChar.quest.voyage_timer1.win_condition.l1.date.day = GetAddingDataDay(0, 0, 60);
			PChar.quest.voyage_timer1.win_condition.l1.date.month = GetAddingDataMonth(0, 0, 60);
			PChar.quest.voyage_timer1.win_condition.l1.date.year = GetAddingDataYear(0, 0, 60);
			PChar.quest.voyage_timer1.win_condition = "voyage_fin_timer";
		break;

		case "voyage_timer3":
			PChar.quest.voyage_timer3.win_condition.l1 = "Timer";
			PChar.quest.voyage_timer3.win_condition.l1.date.day = GetAddingDataDay(0, 0, 60);
			PChar.quest.voyage_timer3.win_condition.l1.date.month = GetAddingDataMonth(0, 0, 60);
			PChar.quest.voyage_timer3.win_condition.l1.date.year = GetAddingDataYear(0, 0, 60);
			PChar.quest.voyage_timer3.win_condition = "voyage_fin_timer";
		break;

		case "voyage_timer4":
			PChar.quest.voyage_timer4.win_condition.l1 = "Timer";
			PChar.quest.voyage_timer4.win_condition.l1.date.day = GetAddingDataDay(0, 0, 60);
			PChar.quest.voyage_timer4.win_condition.l1.date.month = GetAddingDataMonth(0, 0, 60);
			PChar.quest.voyage_timer4.win_condition.l1.date.year = GetAddingDataYear(0, 0, 60);
			PChar.quest.voyage_timer4.win_condition = "voyage_fin_timer";
		break;

		case "voyage_timer2":
			PChar.quest.voyage_timer2.win_condition.l1 = "Timer";
			PChar.quest.voyage_timer2.win_condition.l1.date.day = GetAddingDataDay(0, 0, 10);
			PChar.quest.voyage_timer2.win_condition.l1.date.month = GetAddingDataMonth(0, 0, 10);
			PChar.quest.voyage_timer2.win_condition.l1.date.year = GetAddingDataYear(0, 0, 10);
			PChar.quest.voyage_timer2.win_condition = "voyage_fin_timer2";
		break;



// First Expedition Quest

		case "rencrox":
			bSuppressResurrection = true;
			locations[FindLocation("BC_Tavern")].reload.l1.disable = 1;

                        ChangeCharacterAddressGroup(CharacterFromID("Roxanne Lalliere"), "BC_Tavern", "goto", "goto4");
                        ChangeCharacterAddressGroup(CharacterFromID("Pedro Rivera"), "BC_Tavern", "goto", "goto5");
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_1";
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_ActorDialog(characterFromID("Roxanne Lalliere"), pchar, "", 2.0, 1.0);
			
                      break;

		case "rencpedro":

			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_ActorGoToLocation(characterFromID("Roxanne Lalliere"), "reload", "reload1", "none", "", "", "", 0.0);
                        LAi_SetActorType(characterFromID("Pedro Rivera"));
			Characters[GetCharacterIndex("Pedro Rivera")].dialog.currentnode = "begin_1";
			LAi_ActorDialog(characterFromID("Pedro Rivera"), pchar, "", 2.0, 1.0);

                     break;

		case "directmaestra":
			locations[FindLocation("BC_Tavern")].reload.l1.disable = 0;
			Island_SetReloadEnableLocal("Cuba", "reload_8", true);
			SetQuestHeader("Expedition");
			AddQuestRecord("Expedition", "1");

			LAi_SetActorType(characterFromID("Pedro Rivera"));
			LAi_SetImmortal(CharacterFromID("Pedro Rivera"), 1);
			LAi_ActorFollowEverywhere(characterFromID("Pedro Rivera"), "", 60.0);
			SetCompanionIndex(Pchar, -1, GetCharacterIndex("Roxanne Lalliere"));
			SetCharacterRemovable(characterFromID("Roxanne Lalliere"), false);
			pchar.quest.versmaestra.win_condition.l1 = "location";
			pchar.quest.versmaestra.win_condition.l1.location = "Cuba_Shore_05";
			pchar.quest.versmaestra.win_condition = "surmaestra";

                     break;

		case "surmaestra":
			SetCurrentTime(24, 0);
  			locations[FindLocation("Santiago_outskirts")].disableencounters = 1;
			Locations[FindLocation("Santiago_outskirts")].vcskip = true;
  			locations[FindLocation("Cuba_Jungle_04")].disableencounters = 1;
			Locations[FindLocation("Cuba_Jungle_04")].vcskip = true;

                        ChangeCharacterAddressGroup(CharacterFromID("Roxanne Lalliere"), "Cuba_Shore_05", "goto", "locator10");
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_13";
			LAi_ActorDialog(characterFromID("Roxanne Lalliere"), pchar, "", 2.0, 1.0);

                    break;

		case "surplage":

			pchar.quest.versrock.win_condition.l1 = "location";
			pchar.quest.versrock.win_condition.l1.location = "Cuba_Jungle_04";
			pchar.quest.versrock.win_condition = "aurocher";

			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_SetImmortal(CharacterFromID("Roxanne Lalliere"), 1);
			LAi_ActorFollowEverywhere(characterFromID("Roxanne Lalliere"), "", 60.0);

                     break;

		case "aurocher":

			pchar.quest.versentre.win_condition.l1 = "location";
			pchar.quest.versentre.win_condition.l1.location = "Santiago_outskirts";
			pchar.quest.versentre.win_condition = "attack";
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_14";
			LAi_ActorDialog(characterFromID("Roxanne Lalliere"), pchar, "", 2.0, 1.0);

                    break;

		case "attack":
			locations[FindLocation("Santiago_outskirts")].reload.l3.disable = 1;
			locations[FindLocation("Santiago_outskirts")].reload.l4.disable = 1;
			locations[FindLocation("Santiago_outskirts")].reload.l5.disable = 1;
                        ChangeCharacterAddressGroup(CharacterFromID("Roxanne Lalliere"), "Santiago_outskirts", "officers", "reload1_1");
	                ChangeCharacterAddressGroup(CharacterFromID("Emilio Soares"), "Santiago_outskirts", "officers", "reload1_2");
	                ChangeCharacterAddressGroup(CharacterFromID("Pedro Rivera"), "Santiago_outskirts", "officers", "reload1_2");	
			LAi_SetOfficerType(characterFromID("Pedro Rivera"));
			LAi_SetImmortal(CharacterFromID("Pedro Rivera"), 1);
			LAi_SetOfficerType(characterFromID("Emilio Soares"));
			LAi_SetImmortal(CharacterFromID("Emilio Soares"), 1);

			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa", "goto", "goto1");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREHOUSE_SOLDIERS");

			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa2", "goto", "goto2");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREHOUSE_SOLDIERS");

			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa3", "goto", "goto3");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREHOUSE_SOLDIERS");
			
			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa4", "goto", "goto4");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREHOUSE_SOLDIERS");

			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "soldier_spa5", "reload", "reload3");
			LAi_SetHP(sld, 80.0, 80.0);
			sld.dialog.filename = "Roxanne Lalliere_dialog.c";
			sld.dialog.currentnode = "begin_26";
			sld.id = "soldado";
			LAi_SetActorType(characterfromID("soldado"));
			LAi_ActorDialog(characterfromID("soldado"), PChar, "", 0.5, 10);

                   break;

		case "debutbat":
			LAi_SetGuardianType(characterFromID("soldado")); 
			LAi_group_MoveCharacter(characterFromID("soldado"), "WAREHOUSE_SOLDIERS");
			LAi_group_FightGroups("WAREHOUSE_SOLDIERS", LAI_GROUP_PLAYER, true);
			LAi_group_SetCheck("WAREHOUSE_SOLDIERS", "finbat");

                    break;

		case "finbat":		
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_15";
			LAi_ActorDialog(characterFromID("Roxanne Lalliere"), pchar, "", 2.0, 1.0);

			LAi_SetActorType(characterFromID("Pedro Rivera"));
			LAi_ActorFollowEverywhere(characterFromID("Pedro Rivera"), "", 60.0);
			LAi_SetActorType(characterFromID("Emilio Soares"));
			LAi_ActorFollowEverywhere(characterFromID("Emilio Soares"), "", 60.0);


                    break;

		case "finbat_2":
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_ActorFollowEverywhere(characterFromID("Roxanne Lalliere"), "", 60.0);
			pchar.quest.versentreun.win_condition.l1 = "location";
			pchar.quest.versentreun.win_condition.l1.location = "Santiago_warehouse_01";
			pchar.quest.versentreun.win_condition = "attack2";              

                    break;

		case "attack2":	
			locations[FindLocation("Santiago_warehouse_01")].reload.l1.disable = 1;
			LAi_SetOfficerType(characterFromID("Pedro Rivera"));
			LAi_SetOfficerType(characterFromID("Roxanne Lalliere"));

			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa", "goto", "goto17");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREINSIDE_SOLDIERS");

			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa2", "goto", "goto6");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREINSIDE_SOLDIERS");
			LAi_group_FightGroups("WAREINSIDE_SOLDIERS", LAI_GROUP_PLAYER, true);
			LAi_group_SetCheck("WAREINSIDE_SOLDIERS", "entrepot_1");


                   break;

		case "entrepot_1":	
			locations[FindLocation("Santiago_warehouse_01")].reload.l1.disable = 0;
			locations[FindLocation("Santiago_outskirts")].reload.l5.disable = 0;
			pchar.quest.versentredeux.win_condition.l1 = "location";
			pchar.quest.versentredeux.win_condition.l1.location = "Santiago_warehouse_02";
			pchar.quest.versentredeux.win_condition = "attack3";
			LAi_SetActorType(characterFromID("Pedro Rivera"));
			LAi_ActorFollowEverywhere(characterFromID("Pedro Rivera"), "", 60.0);
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_ActorFollowEverywhere(characterFromID("Roxanne Lalliere"), "", 60.0);

                  break;

		case "attack3":	
			LAi_SetOfficerType(characterFromID("Emilio Soares"));
		        ChangeCharacterAddress(characterFromID("Emilio Soares"), "none", "");

			LAi_SetOfficerType(characterFromID("Pedro Rivera"));
			LAi_SetOfficerType(characterFromID("Roxanne Lalliere"));

			locations[FindLocation("Santiago_warehouse_02")].reload.l1.disable = 1;
			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa3", "goto", "goto18");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREINSIDES_SOLDIERS");

			sld = LAi_CreateFantomCharacter(false, 0, true, true, 0.25, "Soldier_spa4", "goto", "goto8");
			LAi_SetHP(sld, 80.0, 80.0);
			LAi_group_MoveCharacter(sld, "WAREINSIDES_SOLDIERS");
			LAi_group_FightGroups("WAREINSIDES_SOLDIERS", LAI_GROUP_PLAYER, true);
			LAi_group_SetCheck("WAREINSIDES_SOLDIERS", "entrepot_2");

                   break;

		case "entrepot_2":	
			locations[FindLocation("Santiago_warehouse_02")].reload.l1.disable = 0;
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_16";
			LAi_ActorDialog(characterFromID("Roxanne Lalliere"), pchar, "", 2.0, 1.0);

                  break;

		case "allezdehors":	
			DoReloadCharacterToLocation("Santiago_outskirts", "goto", "goto8");
                        ChangeCharacterAddressGroup(CharacterFromID("Roxanne Lalliere"), "Santiago_outskirts", "officers", "reload2_2");
                        ChangeCharacterAddressGroup(CharacterFromID("Emilio Soares"), "Santiago_outskirts", "goto", "goto4");
			LAi_SetActorType(characterFromID("Emilio Soares"));
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_17";
			LAi_SetActorType(pchar); 
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_ActorWaitDialog(CharacterFromID("Roxanne Lalliere"), Pchar); 	                       
			LAi_ActorDialog(pchar, characterFromID("Roxanne Lalliere"), "", 10.0, 1.0);

                 break;

		case "chercherivera":
			LAi_ActorGoToLocator(PChar, "goto", "goto11", "riveraback", 10.0);
                        
                break;
		case "riveraback":
			LAi_ActorTurnByLocator( pchar, "goto", "goto11");
			LAi_QuestDelay("riveraback_2", 1.0);
                    
                break;

		case "riveraback_2":
			LAi_SetPlayerType(pchar); 
                       ChangeCharacterAddressGroup(CharacterFromID("Pedro Rivera"), "Santiago_outskirts", "reload", "reload2_back");
			
			LAi_SetActorType(characterFromID("Pedro Rivera"));
			Characters[GetCharacterIndex("Pedro Rivera")].dialog.currentnode = "begin_6";
			LAi_ActorDialog(characterFromID("Pedro Rivera"), pchar, "", 2.0, 1.0);

                break;

		case "fuirsoldats":
			LAi_SetActorType(pchar); 
 			LAi_ActorGoToLocator(PChar, "goto", "goto10", "", 40.0);
			LAi_ActorRunToLocation(characterFromID("Roxanne Lalliere"), "goto", "goto10", "none", "", "", "", 0.0);
			LAi_ActorRunToLocation(characterFromID("Emilio Soares"), "goto", "goto10", "none", "", "", "", 0.0);
			LAi_SetOfficerType(characterFromID("Pedro Rivera"));
			LAi_QuestDelay("discusplage", 6.0);

               break;

		case "discusplage":
			locations[FindLocation("Santiago_outskirts")].reload.l3.disable = 0;
			locations[FindLocation("Cuba_Shore_05")].reload.l3.disable = 1;
 			DoReloadCharacterToLocation("Cuba_Shore_05", "goto", "locator9");
                        ChangeCharacterAddressGroup(CharacterFromID("Roxanne Lalliere"), "Cuba_Shore_05", "goto", "locator7");
                        ChangeCharacterAddressGroup(CharacterFromID("Pedro Rivera"), "Cuba_Shore_05", "goto", "locator8");
                        ChangeCharacterAddressGroup(CharacterFromID("Emilio Soares"), "Cuba_Shore_05", "goto", "citizen09");
			LAi_SetOfficerType(characterFromID("Emilio Soares"));
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_18";
			LAi_SetActorType(pchar); 
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_ActorWaitDialog(CharacterFromID("Roxanne Lalliere"), Pchar); 	                       
			LAi_ActorDialog(pchar, characterFromID("Roxanne Lalliere"), "", 10.0, 1.0);			

               break;

		case "feterivera":
			LAi_SetPlayerType(pchar);
			LAi_SetActorType(characterFromID("Pedro Rivera"));
			Characters[GetCharacterIndex("Pedro Rivera")].dialog.currentnode = "begin_7";
			LAi_ActorDialog(characterFromID("Pedro Rivera"), pchar, "", 2.0, 1.0);

               break;

		case "laissepedro":
			LAi_ActorRunToLocation(characterFromID("Pedro Rivera"), "reload", "reload2_back", "none", "", "", "", 0.0);
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_19";
			LAi_ActorDialog(characterFromID("Roxanne Lalliere"), pchar, "", 2.0, 1.0);

               break;

		case "directpop":
			AddQuestRecord("Expedition", "2");
			LAi_SetOfficerType(characterFromID("Roxanne Lalliere"));
			pchar.quest.partloot.win_condition.l1 = "location";
			pchar.quest.partloot.win_condition.l1.location = "Port_au_Prince_town";
			pchar.quest.partloot.win_condition = "shareloot";

               break;

		case "shareloot":
                        ChangeCharacterAddressGroup(CharacterFromID("Roxanne Lalliere"), "Port_au_Prince_town", "officers", "reload11_2");                      
			Characters[GetCharacterIndex("Roxanne Lalliere")].dialog.currentnode = "begin_20";
			LAi_SetActorType(pchar); 
			LAi_SetActorType(characterFromID("Roxanne Lalliere"));
			LAi_ActorWaitDialog(CharacterFromID("Roxanne Lalliere"), Pchar);
			LAi_ActorDialog(pchar, characterFromID("Roxanne Lalliere"), "", 30.0, 1.0);

               break;

		case "finexpedition":
			bSuppressResurrection = false;
			locations[FindLocation("Cuba_Shore_05")].reload.l3.disable = 0;
			locations[FindLocation("Santiago_outskirts")].reload.l1.disable = 0;
			locations[FindLocation("Santiago_outskirts")].reload.l11.disable = 0;
			locations[FindLocation("Santiago_town_04")].reload.l1.disable = 0;
			LAi_SetPlayerType(pchar);
 			LAi_ActorRunToLocation(characterFromID("Roxanne Lalliere"), "reload", "reload2", "none", "", "", "", 0.0);
			RemoveCharacterCompanion(Pchar, characterFromID("Roxanne Lalliere"));
			setCharacterShipLocation(characterFromID("Roxanne Lalliere"), "none");
			AddQuestRecord("Expedition", "3");
			CloseQuestHeader("Expedition");
			if(AUTO_SKILL_SYSTEM)
			{
				AddPartyExpChar(pchar, "Leadership", 20000);
				AddPartyExpChar(pchar, "Sneak", 200);
			}
			else { AddPartyExp(pchar, 20000); }

              break;

		case "viagem_fin_timer":
			Characters[GetCharacterIndex("Roxanne Lalliere")].Location = "none";
			Characters[GetCharacterIndex("Emilio Soares")].Location = "none";
			Characters[GetCharacterIndex("Pedro Rivera")].Location = "none";

			PChar.quest.Bartolomeu = "end";
			PChar.quest.Bartolomeu.over = "yes";
			RemoveCharacterCompanion(Pchar, characterFromID("Roxanne Lalliere"));
			setCharacterShipLocation(characterFromID("Roxanne Lalliere"), "none");

			AddQuestRecord("Expedition", "4");
			CloseQuestHeader("Expedition");
			bSuppressResurrection = false;

		break;

		case "viagem_timer1":
			PChar.quest.viagem_timer1.win_condition.l1 = "Timer";
			PChar.quest.viagem_timer1.win_condition.l1.date.day = GetAddingDataDay(0, 0, 10);
			PChar.quest.viagem_timer1.win_condition.l1.date.month = GetAddingDataMonth(0, 0, 10);
			PChar.quest.viagem_timer1.win_condition.l1.date.year = GetAddingDataYear(0, 0, 10);
			PChar.quest.viagem_timer1.win_condition = "viagem_fin_timer";

		break;

	}
	LanguageCloseFile(tmpLangFileID);
}
