Esempio n. 1
0
 protected override void Init()
 {
     Add(new TimeTask(.25f, new IdleState(_toManage)));
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (38f, -.7f, .3f), new MarkTaskDone(_toManage)))); // base of 1st floor stairs right
     Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
     //Add(new Task(new MoveThenDoState(_toManage,(MapLocations._TopOfFirstFloorStairsRightYoung), new MarkTaskDone(_toManage)))); // top of 1st floor stairs right
     //Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, _toManage.player)));
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (37.8f, 7.5f, .3f), new MarkTaskDone(_toManage)))); // top of 1st floor stairs right
     Add(new TimeTask(.25f, new IdleState(_toManage)));
     Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
     //Add(new Task(new MoveThenDoState(_toManage, new Vector3 (45f, 7.4f, .3f), new MarkTaskDone(_toManage)))); // base of 2nd floor stairs right
     //Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, _toManage.player)));
     //Add(new Task(new MoveThenDoState(_toManage, new Vector3 (41f, 11f, .3f), new MarkTaskDone(_toManage)))); // middle of 2nd floor stairs
     //Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, _toManage.player)));
     //Add(new Task(new MoveThenDoState(_toManage, new Vector3 (46f, 16f, .3f), new MarkTaskDone(_toManage)))); // top of 2nd floor stairs
     //Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, _toManage.player)));
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (55f, 15.5f, .3f), new MarkTaskDone(_toManage)))); // Reached Destination: Farmer family
     Add(new TimeTask(5f, new IdleState(_toManage)));
     Task setOffMarketFlag = new Task(new MoveThenDoState(_toManage, new Vector3 (54f, 15.5f, .3f), new MarkTaskDone(_toManage))); // at top staircase
     setOffMarketFlag.AddFlagToSet(FlagStrings.RunToMarket);
     Add(setOffMarketFlag);
     Add(new TimeTask(.2f, new IdleState(_toManage)));
     //Add(new Task(new MoveThenDoState(_toManage, new Vector3 (75, 16f, .3f), new MarkTaskDone(_toManage))));
     //Add(new TimeTask(20f, new IdleState(_toManage)));
 }
Esempio n. 2
0
    protected override void Init()
    {
        Add(new TimeTask(.05f, new IdleState(_toManage)));

            Task activateStoryIntroPartOne = (new Task(new MoveThenDoState(_toManage, new Vector3(14f, Y_COORDINATE, .3f), new MarkTaskDone(_toManage))));
            activateStoryIntroPartOne.AddFlagToSet(FlagStrings.oldSiblingIntroStoryOnePartOneFlag);
            Add(activateStoryIntroPartOne);

            Add(new TimeTask(3.5f, new IdleState(_toManage)));

            Add(new Task(new MoveThenDoState(_toManage, new Vector3(24f, Y_COORDINATE, .3f), new MarkTaskDone(_toManage))));

            //Task activateStoryIntroPartTwo = (new Task(new MoveThenDoState(_toManage, new Vector3(22f, Y_COORDINATE, .3f), new MarkTaskDone(_toManage))));
            //activateStoryIntroPartTwo.AddFlagToSet(FlagStrings.oldSiblingIntroStoryOnePartTwoFlag);
            //Add(activateStoryIntroPartTwo);

            //Add(new TimeTask(3f, new IdleState(_toManage)));
            Add(new TimeTask(10f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player,2f)));

            Add(new Task(new MoveThenDoState(_toManage, new Vector3(30f, Y_COORDINATE, .3f), new MarkTaskDone(_toManage))));

        Task siblingOldReachedCarpenterSonTask = new TimeTask(.05f, new IdleState(_toManage)); // at top staircase
            siblingOldReachedCarpenterSonTask.AddFlagToSet(FlagStrings.siblingOldReachedCarpenterSonFlag);
            Add(siblingOldReachedCarpenterSonTask);
            Add(new TimeTask(12.5f, new IdleState(_toManage)));

            Task siblingChatWithCarpenterPartOne = new Task(new MoveThenDoState(_toManage, new Vector3 (32f, Y_COORDINATE, .3f), new MarkTaskDone(_toManage))); // at top staircase
            siblingChatWithCarpenterPartOne.AddFlagToSet(FlagStrings.siblingOldGreetCarpenterSonOldPartOneFlag);
            Add(siblingChatWithCarpenterPartOne);

            Add(new TimeTask(6f, new IdleState(_toManage)));
    }
Esempio n. 3
0
 protected override void Init()
 {
     Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (51, -.05f, .3f), new MarkTaskDone(_toManage)))); // at top staircase
         Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (66, -7.6f, .3f), new MarkTaskDone(_toManage)))); // left side of beach
         Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (50, -7.5f, .3f), new MarkTaskDone(_toManage)))); // at base of stairs (beach)
         Add(new TimeTask(4f, new IdleState(_toManage)));
         //Add(new TimeTask(1f, new IdleState(_toManage)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (74, -3.4f, .3f), new MarkTaskDone(_toManage)))); // Pier
         Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
         //Add(new TimeTask(1f, new IdleState(_toManage)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (66, -7.6f, .3f), new MarkTaskDone(_toManage)))); // left side of beach
         //Add(new TimeTask(1f, new IdleState(_toManage)));
         Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (57, -6.5f, .3f), new MarkTaskDone(_toManage)))); // at base staircase (beach)
         //Add(new TimeTask(1f, new IdleState(_toManage)));
         Add(new TimeTask(5f, new IdleState(_toManage)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (58, -6.5f, .3f), new MarkTaskDone(_toManage)))); // at top staircase
         Add(new TimeTask(4f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
         Task setOffFarmerFlag = new Task(new MoveThenDoState(_toManage, new Vector3 (51, -.05f, .3f), new MarkTaskDone(_toManage))); // at top staircase
         setOffFarmerFlag.AddFlagToSet(FlagStrings.RunToFarmer);
         Add(setOffFarmerFlag);
         //Add(new TimeTask(1f, new IdleState(_toManage)));
         Add(new TimeTask(5f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
 }
Esempio n. 4
0
 protected override void Init()
 {
     Add(new TimeTask(.25f, new IdleState(_toManage)));
         Add(new Task(new MoveThenDoState(_toManage, new Vector3 (0f, -1.8f, .3f), new MarkTaskDone(_toManage))));
         Task setOffInTroubleFlagTask = new Task(new MoveThenDoState(_toManage, new Vector3 (0f, -1.8f, .3f), new MarkTaskDone(_toManage))); // at carpenter
         setOffInTroubleFlagTask.AddFlagToSet(FlagStrings.PostSiblingExplore);
         Add(setOffInTroubleFlagTask);
         Add(new TimeTask(.25f, new IdleState(_toManage)));
 }
Esempio n. 5
0
 protected override void Init()
 {
     Add(new TimeTask(.25f, new IdleState(_toManage)));
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (0, 7.5f, .3f), new MarkTaskDone(_toManage))));
     Add(new TimeTask(5f, new IdleState(_toManage)));
     Task setOffReflectionTreeFlagTask = new Task(new MoveThenDoState(_toManage, new Vector3 (-2.5f, -11.5f, .3f), new MarkTaskDone(_toManage))); // at top staircase
     setOffReflectionTreeFlagTask.AddFlagToSet(FlagStrings.RunToReflectionTree);
     Add(setOffReflectionTreeFlagTask);
     Add(new TimeTask(1f, new IdleState(_toManage)));
 }
Esempio n. 6
0
 protected override void Init()
 {
     Add(new TimeTask(.2f, new IdleState(_toManage))); //or self-triggering
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (22.5f, 7.5f, .3f), new MarkTaskDone(_toManage))));
     Add(new TimeTask(10f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
     Add(new TimeTask(5f, new IdleState(_toManage)));
     Task setOffWindmillFlag = new Task((new MoveThenDoState(_toManage, new Vector3 (20.5f, 7.5f,.3f), new MarkTaskDone(_toManage))));
     setOffWindmillFlag.AddFlagToSet(FlagStrings.RunToWindmill);
     Add(setOffWindmillFlag);
     Add(new TimeTask(.2f, new IdleState(_toManage)));
 }
Esempio n. 7
0
 protected override void Init()
 {
     Add(new TimeTask(.2f, new IdleState(_toManage))); //or self-triggering
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-24f, 18.2f, .3f), new MarkTaskDone(_toManage))));
     Add(new TimeTask(10f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-40f, 18.2f, .3f), new MarkTaskDone(_toManage))));
     Task setOffHomeFlagTask = new Task(new MoveThenDoState(_toManage, new Vector3 (-35f, 18.2f, .3f), new MarkTaskDone(_toManage)));
     setOffHomeFlagTask.AddFlagToSet(FlagStrings.RunToHome);
     Add(setOffHomeFlagTask);
     Add(new TimeTask(4f, new IdleState(_toManage)));
 }
Esempio n. 8
0
 protected override void Init()
 {
     //NPCManager.instance.RemoveInstanceFlag("");
     AddFlagGroup(FlagStrings.StartedRace);
     Add(new TimeTask (2f, new IdleState(_toManage))); //or self-triggering
     Add(new TimeTask (180f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player, 1.75f))); //or self-triggering
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (12, .2f, 1f), new MarkTaskDone(_toManage))));
     Add(new TimeTask(.2f, new IdleState(_toManage)));
     Add(new Task(new MoveThenDoState(_toManage, new Vector3 (11.8f, .2f, 1f), new MarkTaskDone(_toManage)))); // at bridge
     Add(new TimeTask(10f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
     Task setOffCarpenterFlagTask = new Task(new MoveThenDoState(_toManage, new Vector3 (22f, .2f, 1f), new MarkTaskDone(_toManage))); // at carpenter
     setOffCarpenterFlagTask.AddFlagToSet(FlagStrings.RunToCarpenter);
     Add(setOffCarpenterFlagTask);
     Add(new TimeTask(.2f, new IdleState(_toManage)));
     //Add(new Task (new IdleState(_toManage)));
 }
Esempio n. 9
0
 protected override Schedule GetSchedule()
 {
     #region reactivate after debugging <&^&>
     //
     Schedule schedule = new Schedule(this, Schedule.priorityEnum.DoNow);
     schedule.Add(new TimeTask(1.25f, new IdleState(this)));
     Task oldSiblingMoveToBridge = new Task(new MoveThenDoState(this, new Vector3(2f,Y_COORDINATE, .3f), new MarkTaskDone(this)));
     oldSiblingMoveToBridge.AddFlagToSet(FlagStrings.oldSiblingIntroChatFlag);
     schedule.Add(oldSiblingMoveToBridge);
     schedule.Add(new TimeTask(5.5f, new IdleState(this)));
     return (schedule);
     //
     #endregion
     /*
     Schedule schedule = new Schedule(this, Schedule.priorityEnum.DoNow);
     schedule.Add(new TimeTask(1.25f, new IdleState(this)));
     Task oldSiblingMoveToBridge = new Task(new MoveThenDoState(this, new Vector3(2f,Y_COORDINATE, .3f), new MarkTaskDone(this)));
     oldSiblingMoveToBridge.AddFlagToSet(FlagStrings.oldSiblingIntroChatFlag);
     schedule.Add(oldSiblingMoveToBridge);
     schedule.Add(new TimeTask(.25f, new IdleState(this)));
     return (schedule);
     */
 }
Esempio n. 10
0
    protected override void Init()
    {
        Add(new TimeTask(.2f, new IdleState(_toManage))); //or self-triggering
        //AddFlagGroup("startedRace");
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (12, .2f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(.2f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (11.8f, .2f, .3f), new MarkTaskDone(_toManage)))); // at bridge
        Add(new TimeTask(10f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Task reachCarpenterTask = new Task(new MoveThenDoState(_toManage, new Vector3 (28, .2f, .3f), new MarkTaskDone(_toManage))); // at carpenter
        reachCarpenterTask.AddFlagToSet(FlagStrings.RunToCarpenter);
        Add(reachCarpenterTask);
        Add(new TimeTask(10f, new IdleState(_toManage)));

        //NPCManager.instance.getNPC(StringsNPC.CarpenterYoung);
        //Add(new Task(new ChangeEmotionState(_toManage,(SiblingYoung.EMOTIONSTATENAME);

        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (59, .2f, .3f), new MarkTaskDone(_toManage)))); // at base staircase
        Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (66, -7.6f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (70, -8f, .3f), new MarkTaskDone(_toManage)))); // at Beach
        Add(new TimeTask(8f, new IdleState(_toManage)));
        //PIER (79,-5.1)

        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (66, -7.6f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(.25f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (59, .2f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (47, -1f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (53, 5f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (50, 10f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (55, 16f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new WaitTillPlayerCloseState(_toManage, ref _toManage.player)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (63, 16f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(15f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (75, 16f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(20f, new IdleState(_toManage)));
        //runToLighthouse.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (28, .2f, .3f), new MarkTaskDone(_toManage))));

        Add(new TimeTask(.25f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (63, 16f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(1f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (55, 16f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(1.25f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (50, 10f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(1f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (37, 10f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(.5f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (40, 10f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(.5f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (27, 10f, .3f), new MarkTaskDone(_toManage))));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (27.05f, 10f, .3f), new MarkTaskDone(_toManage))));

        Add(new TimeTask(.25f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-40, 16f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-49, 18f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(2f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-41, 25f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(.5f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-48, 30f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(.1f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-66, 29.5f, .3f), new MarkTaskDone(_toManage))));

        Add(new TimeTask(.25f, new IdleState(_toManage)));
        /*
         * runToHome.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-48, 30f, .3f), new MarkTaskDone(_toManage))));
        runToHome.Add(new TimeTask(2f, new IdleState(_toManage)));
        runToHome.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-41, 25f, .3f), new MarkTaskDone(_toManage))));
        runToHome.Add(new TimeTask(1f, new IdleState(_toManage)));
        runToHome.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-49, 18f, .3f), new MarkTaskDone(_toManage))));
        runToHome.Add(new TimeTask(1f, new IdleState(_toManage)));
        runToHome.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-40, 16f, .3f), new MarkTaskDone(_toManage))));
        runToHome.Add(new TimeTask(1.5f, new IdleState(_toManage)));
        runToHome.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-18, 6f, .3f), new MarkTaskDone(_toManage))));
        */

        /*
        runToCarpenter = new Schedule(_toManage, Schedule.priorityEnum.High);
        runToCarpenter.Add(new TimeTask(2, new IdleState(_toManage)));
        //runToCarpenter.Add(new Task(new MoveThenDoState(_toManage, NPCManager.instance.getNPC(StringsNPC.CarpenterYoung).transform.position, new MarkTaskDone(_toManage))));
        runToCarpenter.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (5, .2f, .3f), new MarkTaskDone(_toManage))));
        runToCarpenter.Add (new TimeTask(1f, new IdleState(_toManage)));
        runToCarpenter.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (4, .2f, .3f), new MarkTaskDone(_toManage))));
        runToCarpenter.Add (new TimeTask(2f, new IdleState(_toManage)));
        runToCarpenter.Add(new Task(new MoveThenDoState(_toManage, new Vector3 (10, .2f, .3f), new MarkTaskDone(_toManage))));

        //adding the ability to set flags would be nice
        //adding the ability to set emotion States on would be nice. (actions)
        runToCarpenter.SetCanChat(false);
        */

        //
        Add(new TimeTask(1f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-5, -1.5f, .3f), new MarkTaskDone(_toManage))));
        Add(new TimeTask(.5f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (-2, -1.5f, .3f), new MarkTaskDone(_toManage))));

        //
        Add(new TimeTask(3f, new IdleState(_toManage)));
        Add(new Task(new MoveThenDoState(_toManage, new Vector3 (0, -1.5f, .3f), new MarkTaskDone(_toManage))));
    }
Esempio n. 11
0
    protected override void SetUpSchedules()
    {
        greetSiblingOldSchedule = (new CarpenterSonOldGreetSibllingSchedule(this));
        goToBeachSchedule = (new CarpenterSonOldToBeachScript(this));
        talkWhileFishingSchedule = new Schedule(this, Schedule.priorityEnum.DoNow);
        talkWhileFishingSchedule.Add(new TimeTask(240f ,new WaitTillPlayerCloseState(this, ref this.player, 3f))); //
        Task a = new TimeTask(.05f, new IdleState(this));
        a.AddFlagToSet(FlagStrings.elderCarpenterSonChat);
        talkWhileFishingSchedule.Add(a);
        talkWhileFishingSchedule.Add(new Task (new IdleState(this)));

        fishingSchedule = new Schedule(this, Schedule.priorityEnum.DoNow);
        fishingSchedule.Add(new TimeTask(240f ,new WaitTillPlayerCloseState(this, ref this.player, 3f))); //
        //fishingSchedule.Add(new Task(new AbstractAnimationState(this, currentWalkPose)));
        fishingSchedule.Add(new TimeTask(20f, new IdleState(this)));  //-3.5
        Task b = new Task(new MoveThenDoState(this, new Vector3(74f, -3.5f + (LevelManager.levelYOffSetFromCenter*2), -.5f),new MarkTaskDone(this)));
        b.AddFlagToSet(FlagStrings.elderCarpenterFishingTime);
        fishingSchedule.Add(b);
        fishingSchedule.Add(new Task(new AbstractAnimationState(this, currentFishingPose)));
        fishingSchedule.Add(new Task (new IdleState(this)));

        //talkWhileFishingSchedule
    }
Esempio n. 12
0
    protected override void SetUpSchedules()
    {
        float dateTime = 100;

        openningWaitingSchedule = new Schedule(this, Schedule.priorityEnum.DoNow);
        openningWaitingSchedule.Add(new TimeTask(200, new WaitTillPlayerCloseState(this, ref player)));
        Task postOpening = new TimeTask(.1f,new IdleState(this));
        postOpening.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoStart);
        openningWaitingSchedule.Add(postOpening);

        backToFarmSchedule = new Schedule(this, Schedule.priorityEnum.DoNow);
        backToFarmSchedule.Add(new TimeTask(6f, new IdleState(this)));
        backToFarmSchedule.Add(new Task(new MoveThenDoState(this, startingPosition, new MarkTaskDone(this))));

        ropeDownSchedule = new Schedule(this, Schedule.priorityEnum.High);
        ropeDownSchedule.Add(new TimeTask(30, new WaitTillPlayerGoneState(this, player)));
        Task setFlag = new Task( new MoveThenDoState(this, startingPosition, new MarkTaskDone(this)));
        setFlag.AddFlagToSet(FlagStrings.WaitingForDate);
        ropeDownSchedule.Add(setFlag);
        ropeDownSchedule.AddFlagGroup("a");

        turnAround = new Schedule(this, Schedule.priorityEnum.DoNow);
        turnAround.Add(new Task(new MoveThenDoState(this, new Vector3(MapLocations.MiddleOfBeachMiddle.x+.1f, MapLocations.MiddleOfBeachMiddle.y, MapLocations.MiddleOfBeachMiddle.z), new MarkTaskDone(this))));
        turnAround.AddFlagGroup("b");

        /*postOpenningSchedule = new NPCConvoSchedule(this, NPCManager.instance.getNPC(StringsNPC.FarmerMotherMiddle),
            new MiddleFarmerMotherToLighthouseGirl(), Schedule.priorityEnum.DoConvo);
        postOpenningSchedule.SetCanNotInteractWithPlayer();*/

        introConvo = new Schedule(this, Schedule.priorityEnum.DoNow);
        introConvo.Add(new Task (new MoveThenDoState(this, new Vector3(startingPosition.x-.01f, startingPosition.y, startingPosition.z), new MarkTaskDone(this))));
        Task introConvoChatOne = new TimeTask(.1f,new IdleState(this));
        introConvoChatOne.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoOne);
        introConvo.Add(introConvoChatOne);
        introConvo.Add(new TimeTask(4.3f, new IdleState(this)));

        Task introConvoChatTwo = new TimeTask(.1f,new IdleState(this));
        introConvoChatTwo.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoTwo);
        introConvo.Add(introConvoChatTwo);
        introConvo.Add(new TimeTask(5.3f, new IdleState(this)));

        Task introConvoChatThree = new TimeTask(.1f,new IdleState(this));
        introConvoChatThree.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoThree);
        introConvo.Add(introConvoChatThree);
        introConvo.Add(new TimeTask(4.3f, new IdleState(this)));

        Task introConvoChatFour = new TimeTask(.1f,new IdleState(this));
        introConvoChatFour.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoFour);
        introConvo.Add(introConvoChatFour);
        introConvo.Add(new TimeTask(6.3f, new IdleState(this)));

        Task introConvoChatFive = new TimeTask(.1f,new IdleState(this));
        introConvoChatFive.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoFive);
        introConvo.Add(introConvoChatFive);
        introConvo.Add(new TimeTask(2.3f, new IdleState(this)));

        Task introConvoChatSix = new TimeTask(.1f,new IdleState(this));
        introConvoChatSix.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoSix);
        introConvo.Add(introConvoChatSix);
        introConvo.Add(new TimeTask(5.3f, new IdleState(this)));

        Task introConvoChatSeven = new TimeTask(.1f,new IdleState(this));
        introConvoChatSeven.AddFlagToSet(FarmerFamilyFlagStrings.IntroConvoSeven);
        introConvo.Add(introConvoChatSeven);
        introConvo.Add(new TimeTask(2f, new IdleState(this)));
        introConvo.SetCanInteract(false);

        #region castleMarriage
        castleMarriage = new Schedule(this, Schedule.priorityEnum.DoNow);
        Task castleMarriageChatOne = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatOne.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageOne);
        castleMarriage.Add(castleMarriageChatOne);
        castleMarriage.Add(new TimeTask(5f, new IdleState(this)));
        castleMarriage.Add(new Task(new MoveThenDoState(this, new Vector3(startingPosition.x - 1, startingPosition.y, startingPosition.z), new MarkTaskDone(this))));
        castleMarriage.Add(new TimeTask(5.3f, new IdleState(this)));

        Task castleMarriageChatTwo = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatTwo.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageTwo);
        castleMarriage.Add(castleMarriageChatTwo);
        castleMarriage.Add(new TimeTask(7.3f, new IdleState(this)));

        Task castleMarriageChatThree = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatThree.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageThree);
        castleMarriage.Add(castleMarriageChatThree);
        castleMarriage.Add(new TimeTask(2.3f, new IdleState(this)));

        Task castleMarriageChatFour = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatFour.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageFour);
        castleMarriage.Add(castleMarriageChatFour);
        castleMarriage.Add(new TimeTask(5.3f, new IdleState(this)));

        Task castleMarriageChatFive = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatFive.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageFive);
        castleMarriage.Add(castleMarriageChatFive);
        castleMarriage.Add(new TimeTask(3.3f, new IdleState(this)));

        Task castleMarriageChatSix = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatSix.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageSix);
        castleMarriage.Add(castleMarriageChatSix);
        castleMarriage.Add(new TimeTask(6.3f, new IdleState(this)));

        Task castleMarriageChatSeven = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatSeven.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageSeven);
        castleMarriage.Add(castleMarriageChatSeven);
        castleMarriage.Add(new TimeTask(3.3f, new IdleState(this)));

        Task castleMarriageChatEight = new TimeTask(.1f,new IdleState(this));
        castleMarriageChatEight.AddFlagToSet(FarmerFamilyFlagStrings.GirlCastleMarriageEight);
        castleMarriage.Add(castleMarriageChatEight);
        castleMarriage.Add(new TimeTask(2f, new IdleState(this)));
        castleMarriage.Add(new Task(new MoveThenDoState(this, new Vector3(startingPosition.x + 2, startingPosition.y, startingPosition.z), new MarkTaskDone(this))));
        castleMarriage.SetCanInteract(false);
        #endregion

        girlEnd = new Schedule(this, Schedule.priorityEnum.DoNow);
        girlEnd.Add(new TimeTask(88.5f, new IdleState(this)));
        girlEnd.SetCanInteract(false);
    }
Esempio n. 13
0
    //Schedule IdleSchedule;
    protected override void SetUpSchedules()
    {
        startingPosition = transform.position;
        startingPosition.y += LevelManager.levelYOffSetFromCenter;
        #region PathOne
        //Schedule for the Default path
        moveToWindmill = new Schedule(this, Schedule.priorityEnum.Low);
        moveToWindmill.Add (new Task(new MoveThenMarkDoneState(this, MapLocations.WindmillMiddle, "Somber Walk", 2f)));
        moveToWindmill.Add (new TimeTask(100f, new AbstractAnimationState(this, "Hammer", false, false)));
        moveToWindmill.Add (new Task(new MoveThenMarkDoneState(this, startingPosition)));
        #endregion

        #region FishingPath
        TeleportToStartConvo =  new Schedule (this, Schedule.priorityEnum.DoNow);
        TeleportToStartConvo.Add(new TimeTask(300f, new WaitTillPlayerCloseState(this, ref player)));
        //TeleportToStartConvo.Add(new Task (new MoveThenMarkDoneState(this, this.gameObject.transform.position)));
        Task StartFishingStuff = new TimeTask(0f, new IdleState(this));
        StartFishingStuff.AddFlagToSet(FlagStrings.FishingConversation);
        TeleportToStartConvo.Add(StartFishingStuff);

        MoveToPierToFish = new Schedule(this, Schedule.priorityEnum.DoNow);
        MoveToPierToFish.Add(new Task(new MoveThenMarkDoneState(this, MapLocations.BaseOfPierMiddle)));
        MoveToPierToFish.Add(new TimeTask(100f, new AbstractAnimationState(this, "Fishing", true, true)));
        Task SetOffConversationWithSeaCaptain = new TimeTask(0f, new IdleState(this));
        SetOffConversationWithSeaCaptain.AddFlagToSet(FlagStrings.StartConversationWithSeaCaptainAboutBuildingShip);
        MoveToPierToFish.Add(SetOffConversationWithSeaCaptain);

        AfterSeaCaptainTalk = new Schedule (this, Schedule.priorityEnum.DoNow);
        AfterSeaCaptainTalk.Add(new Task(new MoveThenMarkDoneState(this, MapLocations.MiddleOfBeachMiddle)));
        Task SetOffAfterSeaCaptain = new TimeTask(100f, new AbstractAnimationState(this, "Whittle"));
        SetOffAfterSeaCaptain.AddFlagToSet(FlagStrings.StartProudOfSonConversation);
        Task CarpenterSonTransitionToFisherman = new Task(new IdleState(this));
        CarpenterSonTransitionToFisherman.AddFlagToSet(FlagStrings.carpenterSonBecomesFisherman);
        AfterSeaCaptainTalk.Add(SetOffAfterSeaCaptain);

        EndState = new Schedule(this, Schedule.priorityEnum.High);
        EndState.Add(new TimeTask(10000f, new IdleState(this)));
        #endregion

        #region CarpentryPath
        StartCarpentry =  new Schedule (this, Schedule.priorityEnum.High);
        StartCarpentry.Add(new TimeTask(300f, new WaitTillPlayerCloseState(this, ref player)));
        //TeleportToStartConvo.Add(new Task (new MoveThenMarkDoneState(this, this.gameObject.transform.position)));
        Task StartCarpentryStuff = new TimeTask(0f, new IdleState(this));
        StartCarpentryStuff.AddFlagToSet(FlagStrings.IntroConvoCarpentry);
        StartCarpentry.Add(StartCarpentryStuff);

        DoNothingSchedule =  new Schedule(this, Schedule.priorityEnum.High);
        DoNothingSchedule.Add(new TimeTask(10000f, new IdleState(this)));

        WhittleStuff = new Schedule(this, Schedule.priorityEnum.High);
        TimeTask WhittlingAHarp = new TimeTask(30f, new AbstractAnimationState(this, "Whittle"));
        WhittlingAHarp.AddFlagToSet(FlagStrings.BuiltRockingChairTalk);
        WhittleStuff.Add(WhittlingAHarp);
        #endregion
        //Schedule for something
        stormOffSchedule = new Schedule(this,Schedule.priorityEnum.DoNow);
        stormOffSchedule.Add(new Task(new MoveThenMarkDoneState(this, MapLocations.BaseOfPierMiddle)));
        stormOffSchedule.Add(new TimeTask(2.0f, new IdleState(this))); //Will replace with working on windmill
        stormOffSchedule.Add(new Task(new MoveThenMarkDoneState(this, MapLocations.BaseOfPierMiddle)));

        AfterConversationCarpentery = new Schedule(this, Schedule.priorityEnum.High);
        AfterConversationCarpentery.Add(new TimeTask(10000f, new IdleState(this)));
        #region NPCConvoSchedules
        #endregion

        #region carpenterDate
        moveBack = new Schedule(this, Schedule.priorityEnum.High);
        moveBack.Add(new Task(new MoveThenDoState(this, startingPosition, new MarkTaskDone(this))));

        moveToBeach = new Schedule(this, Schedule.priorityEnum.DoNow);
        moveToBeach.Add(new Task(new MoveThenDoState(this, new Vector3(MapLocations.MiddleOfBeachMiddle.x+1.5f, MapLocations.MiddleOfBeachMiddle.y, MapLocations.MiddleOfBeachMiddle.z), new MarkTaskDone(this))));
        Task reachedBeach = new TimeTask(.1f,new IdleState(this));
        reachedBeach.AddFlagToSet(FarmerFamilyFlagStrings.GirlCarpenterDateOne);
        moveToBeach.Add(reachedBeach);
        moveToBeach.Add(new TimeTask(5.3f, new IdleState(this)));

        Task reachedBeachTwo = new TimeTask(.1f,new IdleState(this));
        reachedBeachTwo.AddFlagToSet(FarmerFamilyFlagStrings.GirlCarpenterDateTwo);
        moveToBeach.Add(reachedBeachTwo);
        moveToBeach.Add(new TimeTask(7.3f, new IdleState(this)));

        Task reachedBeachThree = new TimeTask(.1f,new IdleState(this));
        reachedBeachThree.AddFlagToSet(FarmerFamilyFlagStrings.GirlCarpenterDateThree);
        moveToBeach.Add(reachedBeachThree);
        moveToBeach.Add(new TimeTask(3.3f, new IdleState(this)));

        Task reachedBeachFour = new TimeTask(.1f,new IdleState(this));
        reachedBeachFour.AddFlagToSet(FarmerFamilyFlagStrings.GirlCarpenterDateFour);
        moveToBeach.Add(reachedBeachFour);
        moveToBeach.Add(new TimeTask(6.3f, new IdleState(this)));

        Task reachedBeachFive = new TimeTask(.1f,new IdleState(this));
        reachedBeachFive.AddFlagToSet(FarmerFamilyFlagStrings.GirlCarpenterDateFive);
        moveToBeach.Add(reachedBeachFive);
        moveToBeach.Add(new TimeTask(2.3f, new IdleState(this)));

        Task reachedBeachSix = new TimeTask(.1f,new IdleState(this));
        reachedBeachSix.AddFlagToSet(FarmerFamilyFlagStrings.GirlCarpenterDateSix);
        moveToBeach.Add(reachedBeachSix);
        moveToBeach.Add(new TimeTask(6f, new IdleState(this)));

        Task reachedBeachEnd = new TimeTask(.1f,new IdleState(this));
        reachedBeachEnd.AddFlagToSet(FlagStrings.EndOfDate);
        moveToBeach.Add(reachedBeachEnd);
        moveToBeach.Add(new TimeTask(3f, new IdleState(this)));
        moveToBeach.SetCanInteract(false);
        #endregion
    }