Beispiel #1
0
        private void SolveSessionSeven(SessionSevenTestEngine runner, ScoreType targetScore)
        {
            Assert.IsTrue(Tree.Cutscenes.Director.FinishedSession(Cutscenes.Sessions.Six));

            runner.Interact(Tree.Basement.DrillingMachineCable, Tree.Basement.SocketsLeft, Verbs.Use);
            runner.Interact(Tree.Basement.CabinetSawKit, Verbs.Pick);
            runner.Interact(Tree.InventoryItems.SawKit, Tree.Basement.DrillingMachine, Verbs.Use);
            runner.Interact(Tree.Basement.DrillingMachine, Tree.Basement.Door, Verbs.Use);
            runner.Interact(Tree.Basement.Door, Verbs.Open);
            runner.SaveState("[Playthrough] BeforeSessionSeven");
            runner.Interact(Tree.Basement.Door, Verbs.Walk);
        }
Beispiel #2
0
        private void SolveSessionFive(SessionSevenTestEngine runner, ScoreType targetScore)
        {
            Assert.IsTrue(Tree.Cutscenes.Director.FinishedSession(Cutscenes.Sessions.Two));
            Assert.IsTrue(Tree.Cutscenes.Director.FinishedSession(Cutscenes.Sessions.Three));
            Assert.IsTrue(Tree.Cutscenes.Director.FinishedSession(Cutscenes.Sessions.Four));

            runner.Interact(Tree.Basement.ToolBar, Verbs.Look);
            runner.Interact(Tree.Basement.Hammer, Verbs.Pick);
            runner.Interact(Tree.Basement.Screwdriver, Verbs.Pick);

            // get RFID antenna on shelf
            runner.Interact(Tree.Basement.Shelf, Verbs.Look);
            runner.Interact(Tree.Basement.RFIDAntennaShelf, Verbs.Pick);
            runner.Interact(Tree.InventoryItems.RFIDAntennaBoxShelf, Verbs.Open);

            // get drone
            runner.Interact(Tree.Basement.CabinetRightDoor, Verbs.Open);
            runner.Interact(Tree.Basement.DronePackage, Verbs.Pick);
            runner.Interact(Tree.InventoryItems.DronePackage, Verbs.Open);

            // get second battery
            runner.Interact(Tree.Basement.ShelfBox, Verbs.Open);

            Assert.IsTrue(Game.Ego.Inventory.HasItem <InventoryItems.BatteryA>());
            Assert.IsTrue(Game.Ego.Inventory.HasItem <InventoryItems.BatteryB>());

            runner.Interact(Tree.InventoryItems.BatteryA, Tree.InventoryItems.RemoteControl, Verbs.Use);
            runner.Interact(Tree.InventoryItems.BatteryB, Tree.InventoryItems.RemoteControl, Verbs.Use);

            // get RFID antenna on cabinet
            BumpDroneAgainstCardBoard(runner);

            runner.Interact(Tree.InventoryItems.RemoteControl, Verbs.Open);
            runner.Interact(Tree.InventoryItems.RemoteControl, Verbs.Open);

            Assert.IsTrue(Game.Ego.Inventory.HasItem <InventoryItems.BatteryA>());
            Assert.IsTrue(Game.Ego.Inventory.HasItem <InventoryItems.BatteryB>());

            runner.Interact(Tree.Basement.RFIDAntennaCabinet, Verbs.Pick);
            runner.Interact(Tree.InventoryItems.RFIDAntennaBoxCabinet, Verbs.Open);
            runner.Interact(Tree.Basement.CabinetRightDoor, Verbs.Close);
            runner.Interact(Tree.InventoryItems.RFIDAntennaCabinet, Verbs.Use);
            runner.SaveState("[Playthrough] PlacingAntenna");

            SetupRFIDAntenna(runner);

            runner.Interact(Tree.InventoryItems.Screwdriver, Tree.Basement.WoodenPanel, Verbs.Use);
            runner.Interact(Tree.InventoryItems.Hammer, Tree.Basement.WoodenPanel, Verbs.Use);
            runner.Interact(Tree.Basement.WoodenBox, Verbs.Pick);
            runner.Interact(Tree.InventoryItems.WoodenBox, Verbs.Open);

            runner.AnswerDialog(targetScore);
        }