module Quest_Manager { imports { Base } scriptflag EpisodeOneComplete { no } scriptflag EpisodeTwoComplete { no } scriptflag EpisodeThreeComplete { no } trigger OnPostLoadStory { call EpisodeLogic } script EpisodeLogic { EpisodeOneComplete.Set(yes); EpisodeTwoComplete.Set(yes); EpisodeThreeComplete.Set(no); } trigger OnGameStart { call QuestManager } script QuestManager { if(EpisodeOneComplete.Is(no)) { call EnableEpisodeOne; } else { if(EpisodeTwoComplete.Is(no)) { call EnableEpisodeTwo; } else { if(EpisodeThreeComplete.Is(no)) { call EnableEpisodeThree; } } } } script EnableEpisodeOne { Quest_EpisodeOne.Enabled(true); Quest_EpisodeTwo.Enabled(false); Quest_EpisodeThree.Enabled(false); call Quest_EpisodeOne.Setup; } script EnableEpisodeTwo { Quest_EpisodeOne.Enabled(false); Quest_EpisodeTwo.Enabled(true); Quest_EpisodeThree.Enabled(false); call Quest_EpisodeTwo.Setup; } script EnableEpisodeThree { Quest_EpisodeOne.Enabled(false); Quest_EpisodeTwo.Enabled(false); Quest_EpisodeThree.Enabled(true); call Quest_EpisodeThree.Setup; } } module Setup_EpisodeTwo { waypoint JohnsHouse { 114,23,0 } } module Quest_EpisodeTwo { imports { Irene_Characters, Setup_EpisodeTwo, Base } script Setup { call QuestTwoTest; call QuestOne; } script QuestTwoTest { Player.Say("QUEST TWO IS WORKING"); } script QuestOne { Quest.CreateQuest("JohnsHouse", "Johns House" ); Unlock(); Quest.AddGotoLocationTask("VisitJohnsHouse", "Find John's house and explore it", JohnsHouse); Unlock(); } } module Quest_EpisodeThree { imports { Irene_Characters, Setup_EpisodeTwo, Base } script Setup { call QuestThreeTest; call QuestTwoTest; } script QuestTwoTest { Player.Say("QUEST THREE IS WORKING"); } script QuestThreeTest { Quest.CreateQuest("JohnsHouse", "Johns House (Module Three)" ); Unlock(); Quest.AddGotoLocationTask("VisitJohnsHouse", "Find John's house and explore it", JohnsHouse); Unlock(); } }