Inheritance: MonoBehaviour
Example #1
0
 void Start()
 {
     eq           = FindObjectOfType <InventoryMenu> ();
     lifes        = FindObjectOfType <LifeManager> ();
     door         = FindObjectOfType <OpenDoor> ();
     playerInZone = false;
 }
    private PickKey pickkey_script;                             // Load Key Script

    // Start is called before the first frame update
    void Start()
    {
        UIObject_door1.SetActive(false);
        UIObject_door2.SetActive(false);
        opendoor_script = doorisopen.GetComponent <OpenDoor>(); // get doorisopenvalue
        pickkey_script  = hasthekey.GetComponent <PickKey>();   // get hasthekey value
    }
Example #3
0
 void Update()
 {
     if (Input.GetKeyDown(KeyCode.Space))
     {
         OpenDoor.openDoor();
     }
 }
Example #4
0
        //
        // This Event Handler is for the 'OpenDoor' timer which is used to make the Elevator door open.
        //
        private void OpenDoor_Tick(object sender, EventArgs e)
        {
            // If 'drOpen' is equal to true, then it will open the doors in first floor. Otherwise, it will open the doors in ground floor.
            if (drOpen == true)
            {
                {
                    //If the size width of the 'Door3' is less than or equal to 10, then the 'OpenDoor' timer will stop and the 'automaticCloseDoor' will start.
                    //Until the width of 'Door3' reaches 10, it will continue reducing the width of 'Door3' & 'Door4'.
                    if (Door3.Width <= 10)
                    {
                        OpenDoor.Stop(); // The 'OpenDoor' timer will stop Which means it will stop reducing the width of 'Door3' & 'Door4'.

                        // This insert command will be saved into string data type (Sqlcommand).
                        // Afterwards, it will call the connection method to execute the 'Sqlcommand' which is stored in the data type.
                        Sqlcommand = "INSERT INTO Log ( [Action], [Date] ) values ('Door opened in First Floor', ' " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss") + "')";
                        Connection();

                        drClose           = false;
                        openLight.Visible = false;
                        automaticCloseDoor.Start(); // It call the 'automaticCloseDoor' Event Handler.

                        //Thread.Sleep(3000);
                        //CloseDoor.Start();
                    }
                    else
                    {
                        Door3.Width--; // The width of 'Door3' will reduce by one.
                        Door4.Width--; // The width of 'Door4' will reduce by one.
                        Door4.Left++;  // The horizontal location of 'Door4' will increase by one.
                        openLight.Visible = true;
                    }
                }
            }
            else
            {
                //If the size width of the 'Door1' is less than or equal to 10, then the 'OpenDoor' timer will stop and the 'automaticCloseDoor' will start.
                //Until the width of 'Door1' reaches 10, it will continue reducing the width of 'Door1' & 'Door2'.
                if (Door1.Width <= 10)
                {
                    OpenDoor.Stop();           // The 'OpenDoor' timer will stop Which means it will stop reducing the width of 'Door1' & 'Door2'.
                    openLight.Visible = false; //The 'openLight'(Open door light) button will become hidden.

                    // This insert command will be saved into string data type (Sqlcommand).
                    // Afterwards, it will call the connection method to execute the 'Sqlcommand' which is stored in the data type.
                    Sqlcommand = "INSERT INTO Log ( [Action], [Date] ) values ('Door opened in Ground Floor', ' " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss") + "')";
                    Connection();
                    drClose = true;
                    automaticCloseDoor.Start();// It call the 'automaticCloseDoor' Event Handler.
                    //Thread.Sleep(2000);
                    //CloseDoor.Start();
                }
                else
                {
                    Door1.Width--;            // The width of 'Door1' will reduce by one.
                    Door2.Width--;            // The width of 'Door2' will reduce by one.
                    Door2.Left++;             // The horizontal location of 'Door2' will increase by one.
                    openLight.Visible = true; // The 'openLight' (Open door light) button will become visible.
                }
            }
        }
Example #5
0
        //
        // This is Event Handler for the request button which is located in the first floor.
        //
        private void down_Click(object sender, EventArgs e)
        {// If the vertical location of the Elevator is equal to y = 95, the 'OpenDoor' timer will start. Otherwise, 'CloseDoor' timer will start.
            if (Elevator.Top == 95)
            {
                drOpen = true;
                // This insert command will be saved into string data type (Sqlcommand).
                // Afterwards, it will call the connection method to execute the 'Sqlcommand' which is stored in the data type.
                Sqlcommand = "INSERT INTO Log ( [Action], [Date] ) values ('Door is opening in first Floor', ' " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss") + "')";

                Connection();
                OpenDoor.Start();// It will call the 'OpenDoor' Event Handler.
            }
            else
            {
                drClose = true;
                button  = false;
                close   = false;
                lightOn = false;
                // This insert command will be saved into string data type (Sqlcommand).
                // Afterwards, it will call the connection method to execute the 'Sqlcommand' which is stored in the data type.
                Sqlcommand = "INSERT INTO Log ( [Action], [Date] ) values ('Door is closing in first Floor', ' " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss") + "')";

                Connection();

                CloseDoor.Start();// The 'CloseDoor' timer will start therefore, means it will call the 'CloseDoor' Event Handler.
            }
        }
    private PickAxe pickaxe_script;                             // Load Key Script

    // Start is called before the first frame update
    void Start()
    {
        UIObject_plant1.SetActive(false);
        UIObject_plant2.SetActive(false);
        opendoor_script = doorisopen.GetComponent <OpenDoor>(); // get doorisopenvalue
        pickaxe_script  = hastheaxe.GetComponent <PickAxe>();   // get hasthekey value
    }
Example #7
0
        public void Interact(BoltEntity boltEntity)
        {
            var openDoor = OpenDoor.Create(GlobalTargets.OnlyServer, ReliabilityModes.ReliableOrdered);

            openDoor.Entity = entity;
            openDoor.Send();
        }
    public void buildBehaviorTree()
    {
        Task[] tasks = new Task[2];

        tasks[0] = new DoorUnlocked(door);
        tasks[1] = new OpenDoor(door);
        Task sequence = new Sequence(tasks);

        tasks    = new Task[2];
        tasks[0] = new DoorClosed(door);
        tasks[1] = new BargeDoor(door);
        Task sequence2 = new Sequence(tasks);

        tasks    = new Task[2];
        tasks[0] = sequence;
        tasks[1] = sequence2;
        Task selector = new Selector(tasks);

        tasks    = new Task[2];
        tasks[0] = new DoorOpen(door);
        tasks[1] = new MoveRoom(this.transform);
        sequence = new Sequence(tasks);

        tasks     = new Task[3];
        tasks[0]  = new MoveDoor(this.transform);
        tasks[1]  = selector;
        tasks[2]  = new MoveRoom(this.transform);
        sequence2 = new Sequence(tasks);

        tasks    = new Task[2];
        tasks[0] = sequence;
        tasks[1] = sequence2;

        task = new Selector(tasks);
    }
Example #9
0
    Task BuildTask_GetTreasue()
    {
        List <Task> taskList = new List <Task>();

        Task isDoorNotLocked = new IsFalse(theDoor.isLocked);
        Task waitABeat       = new Wait(0.5f);
        Task openDoor        = new OpenDoor(theDoor);

        taskList.Add(isDoorNotLocked);
        taskList.Add(waitABeat);
        taskList.Add(openDoor);
        Sequence openUnlockedDoor = new Sequence(taskList);

        taskList = new List <Task>();
        Task isDoorClosed = new IsTrue(theDoor.isClosed);
        Task hulkOut      = new HulkOut(this.gameObject);
        Task bargeDoor    = new BargeDoor(theDoor.transform.GetChild(0).GetComponent <Rigidbody>());

        taskList.Add(isDoorClosed);
        taskList.Add(waitABeat);
        taskList.Add(hulkOut);
        taskList.Add(waitABeat);
        taskList.Add(bargeDoor);
        Sequence bargeClosedDoor = new Sequence(taskList);

        // open a closed door, one way or another
        taskList = new List <Task>();
        taskList.Add(openUnlockedDoor);
        taskList.Add(bargeClosedDoor);
        Selector openTheDoor = new Selector(taskList);

        // get the treasure when the door is closed
        taskList = new List <Task>();
        Task moveToDoor     = new MoveKinematicToObject(this.GetComponent <Kinematic>(), theDoor.gameObject);
        Task moveToTreasure = new MoveKinematicToObject(this.GetComponent <Kinematic>(), theTreasure.gameObject);

        taskList.Add(moveToDoor);
        taskList.Add(waitABeat);
        taskList.Add(openTheDoor); // one way or another
        taskList.Add(waitABeat);
        taskList.Add(moveToTreasure);
        Sequence getTreasureBehindClosedDoor = new Sequence(taskList);

        // get the treasure when the door is open
        taskList = new List <Task>();
        Task isDoorOpen = new IsFalse(theDoor.isClosed);

        taskList.Add(isDoorOpen);
        taskList.Add(moveToTreasure);
        Sequence getTreasureBehindOpenDoor = new Sequence(taskList);

        // get the treasure, one way or another
        taskList = new List <Task>();
        taskList.Add(getTreasureBehindOpenDoor);
        taskList.Add(getTreasureBehindClosedDoor);
        Selector getTreasure = new Selector(taskList);

        return(getTreasure);
    }
Example #10
0
    void Behave()
    {
        //Sequence for going in an open door
        DebugTask         openDebug     = new DebugTask("Going through open door sequence");
        ConditionalIsTrue doorOpenCheck = new ConditionalIsTrue(door.isOpen);
        ArriveToTarget    goInRoom      = new ArriveToTarget(arrive, roomNavTarget);

        Task[] openDoorSystem = new Task[3];
        openDoorSystem[0] = openDebug;
        openDoorSystem[1] = doorOpenCheck;
        openDoorSystem[2] = goInRoom;
        Sequence doorOpenSequence = new Sequence(openDoorSystem);

        //Sequence for going in closed door
        DebugTask         closedDebug    = new DebugTask("Going through closed door sequence");
        ArriveToTarget    goToDoor       = new ArriveToTarget(arrive, doorNavTarget);
        ConditionalIsTrue tryOpeningDoor = new ConditionalIsTrue(door.TryOpening());
        OpenDoor          openTheDoorUp  = new OpenDoor(door);
        //As is, these arrives don't have timing so it will seem like just going into the room
        ArriveToTarget advanceIntoRoom = new ArriveToTarget(arrive, roomNavTarget);

        Task[] closedDoorSystem = new Task[5];
        closedDoorSystem[0] = closedDebug;
        closedDoorSystem[1] = goToDoor;
        closedDoorSystem[2] = tryOpeningDoor;
        closedDoorSystem[3] = openTheDoorUp;
        closedDoorSystem[4] = advanceIntoRoom;
        Sequence closedDoorSequence = new Sequence(closedDoorSystem);

        //Sequence for going in locked door
        //Can just reuse goToDoor!
        DebugTask          lockedDebug         = new DebugTask("Going through locked door sequence");
        ConditionalIsFalse tryOpeningDoorFalse = new ConditionalIsFalse(door.TryOpening());
        BustDoor           burstIn             = new BustDoor(door);

        //Can reuse advanceIntoRoom as well!
        Task[] lockedDoorSystem = new Task[5];
        lockedDoorSystem[0] = lockedDebug;
        lockedDoorSystem[1] = goToDoor;
        lockedDoorSystem[2] = tryOpeningDoorFalse;
        lockedDoorSystem[3] = burstIn;
        lockedDoorSystem[4] = advanceIntoRoom;
        Sequence lockedDoorSequence = new Sequence(lockedDoorSystem);

        //Make a selector to try to go in closed door before locked
        Task[] closedDoorOptions = new Task[2];
        closedDoorOptions[0] = closedDoorSequence;
        closedDoorOptions[1] = lockedDoorSequence;
        Selector closedProtocols = new Selector(closedDoorOptions);

        //Make a selector to try to go in the open door before closed ones
        Task[] overallDoorProtocols = new Task[2];
        overallDoorProtocols[0] = doorOpenSequence;
        overallDoorProtocols[1] = closedProtocols;
        Selector overallDoorOptions = new Selector(overallDoorProtocols);

        overallDoorOptions.run();
    }
    Task BuildTask_GetHolocron()
    {
        List <Task> taskList = new List <Task>();

        Task isDoorNotLocked = new isFalse(aDore.isLocked);
        Task waitABeat       = new Wait(0.5f);
        Task openDoor        = new OpenDoor(aDore);

        taskList.Add(isDoorNotLocked);
        taskList.Add(waitABeat);
        taskList.Add(openDoor);
        Sequence openUnlockedDoor = new Sequence(taskList);

        taskList = new List <Task>();
        Task isDoorClosed = new isTrue(aDore.isClosed);
        Task darkside     = new DarkSide(this.gameObject);
        Task bargeDoor    = new PushDoor(aDore.GetComponent <Rigidbody>());
        Task darksidetwo  = new DarkSideTwo(this.gameObject);

        taskList.Add(isDoorClosed);
        taskList.Add(waitABeat);
        taskList.Add(darkside);
        taskList.Add(waitABeat);
        taskList.Add(darksidetwo);
        taskList.Add(waitABeat);
        taskList.Add(bargeDoor);
        Sequence bargeClosedDoor = new Sequence(taskList);

        taskList = new List <Task>();
        taskList.Add(openUnlockedDoor);
        taskList.Add(bargeClosedDoor);
        Selector openTheDoor = new Selector(taskList);

        taskList = new List <Task>();
        Task moveToDoor     = new MoveKinematicToObject(this.GetComponent <Kinematic>(), aDore.gameObject);
        Task moveToTreasure = new MoveKinematicToObject(this.GetComponent <Kinematic>(), holocron.gameObject);

        taskList.Add(moveToDoor);
        taskList.Add(waitABeat);
        taskList.Add(openTheDoor);
        taskList.Add(waitABeat);
        taskList.Add(moveToTreasure);
        Sequence getTreasureBehindClosedDoor = new Sequence(taskList);

        taskList = new List <Task>();
        Task isDoorOpen = new isFalse(aDore.isClosed);

        taskList.Add(isDoorOpen);
        taskList.Add(moveToTreasure);
        Sequence getTreasureBehindOpenDoor = new Sequence(taskList);

        taskList = new List <Task>();
        taskList.Add(getTreasureBehindOpenDoor);
        taskList.Add(getTreasureBehindClosedDoor);
        Selector getTreasure = new Selector(taskList);

        return(getTreasure);
    }
Example #12
0
    public Task buildTree()
    {
        List <Task> tasks = new List <Task>();

        // if !locked, open door
        Task checkLock = new doorUnlocked(door);
        Task waitASec  = new Wait(1f);
        Task openDoor  = new OpenDoor(door);

        tasks.Add(checkLock);
        tasks.Add(waitASec);
        tasks.Add(openDoor);
        Sequence openUnlockedDoor = new Sequence(tasks);

        // barge it
        tasks = new List <Task>();
        Task checkDoorClosed = new doorClosed(door);
        Task bargeIt         = new BargeDoor(door);

        tasks.Add(checkDoorClosed);
        tasks.Add(waitASec);
        tasks.Add(bargeIt);
        Sequence bargeClosedDoor = new Sequence(tasks);

        // ways to open a closed door
        tasks = new List <Task>();
        tasks.Add(openUnlockedDoor);
        tasks.Add(bargeClosedDoor);
        Selector openIt = new Selector(tasks);

        // get the cheese when door closed
        tasks = new List <Task>();
        Task toDoor   = new MoveToDoor(mouse, door);
        Task toTarget = new MoveToTarget(mouse, cheese);

        tasks.Add(toDoor);
        tasks.Add(waitASec);
        tasks.Add(openIt);
        tasks.Add(waitASec);
        tasks.Add(toTarget);
        Sequence reachTargetBehindClosedDoor = new Sequence(tasks);

        // get the cheese when door is open
        tasks = new List <Task>();
        Task checkDoorOpen = new doorOpen(door);

        tasks.Add(checkDoorOpen);
        tasks.Add(toTarget);
        Sequence reachTargetBehindOpenDoor = new Sequence(tasks);

        // get that cheese
        tasks = new List <Task>();
        tasks.Add(reachTargetBehindOpenDoor);
        tasks.Add(reachTargetBehindClosedDoor);
        Selector reachTarget = new Selector(tasks);

        return(reachTarget);
    }
Example #13
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Button button = (Button)sender;

            // MessageBox.Show(button.Name);
            OpenDoor?.Invoke(sender, new OpenDoorEventArgs {
                Door = button.DataContext as DoorItem
            });
        }
Example #14
0
    Task BuildTask_GetHolocron()
    {
        Debug.Log("Checkpoint 3");
        List <Task> taskList = new List <Task>();

        //if door isn't locked, open it
        Task isDoorNotLocked = new isFalse(aDore.isLocked);
        Task openDoor        = new OpenDoor(aDore);

        taskList.Add(isDoorNotLocked);
        taskList.Add(openDoor);
        Sequence openUnlockedDoor = new Sequence(taskList);

        //barge a closed door
        taskList = new List <Task>();
        Task isDoorClosed = new isTrue(aDore.isClosed);
        Task darkside     = new DarkSide(this.gameObject);
        Task bargeDoor    = new PushDoor(aDore.GetComponent <Rigidbody>());

        taskList.Add(isDoorClosed);
        taskList.Add(darkside);
        taskList.Add(bargeDoor);
        Sequence bargeClosedDoor = new Sequence(taskList);

        //open a closed door, one way or another
        taskList = new List <Task>();
        taskList.Add(openUnlockedDoor);
        taskList.Add(bargeClosedDoor);
        Selector openTheDoor = new Selector(taskList);

        //get the treasure when the door is closed
        taskList = new List <Task>();
        Task moveToDoor     = new MoveKinematicToObject(this.GetComponent <Kinematic>(), aDore.gameObject);
        Task moveToTreasure = new MoveKinematicToObject(this.GetComponent <Kinematic>(), holocron.gameObject);

        taskList.Add(moveToDoor);
        taskList.Add(openTheDoor);
        taskList.Add(moveToTreasure);
        Sequence getTreasureBehindClosedDoor = new Sequence(taskList);

        //get the treasure when the door is open
        taskList = new List <Task>();
        Task isDoorOpen = new isFalse(aDore.isClosed);

        taskList.Add(isDoorOpen);
        taskList.Add(moveToTreasure);
        Sequence getTreasureBehindOpenDoor = new Sequence(taskList);

        //get the treasure, one way or another???
        taskList = new List <Task>();
        taskList.Add(getTreasureBehindOpenDoor);
        taskList.Add(getTreasureBehindClosedDoor);
        Selector getTreasure = new Selector(taskList);

        return(getTreasure);
    }
Example #15
0
 private void Start()
 {
     dRange       = new DoorRange();
     dRange2      = new Door2Range();
     dAway        = new DoorAway();
     dLocked      = new DoorLocked();
     openDoor     = new OpenDoor();
     closeDoor    = new CloseDoor();
     jumpingDoors = new Cat();
 }
Example #16
0
 private void Awake()
 {
     if (instance != null)
     {
         Destroy(gameObject);
     }
     else
     {
         instance = this;
     }
 }
Example #17
0
        private void SaveToDBase()
        {
            string          CreateDateStr;
            int             KeyID;
            int             Year;
            int             Month;
            int             Date;
            int             Hour;
            int             Miminute;
            int             Second;
            List <OpenDoor> MyAllOpenDoor = new List <OpenDoor>();

            OpenDoorListStr = "[" + OpenDoorCount.ToString() + ":";
            for (int i = 0; i < OpenDoorCount; i++)
            {
                int Index = 24 + 17 * i;
                KeyID         = this.MyReadBuffers[Index];
                CreateDateStr = null;
                CreateDateStr = Encoding.ASCII.GetString(this.MyReadBuffers, Index + 2, 14);
                Year          = int.Parse(CreateDateStr.Substring(0, 4));
                Month         = int.Parse(CreateDateStr.Substring(4, 2));
                Date          = int.Parse(CreateDateStr.Substring(6, 2));
                Hour          = int.Parse(CreateDateStr.Substring(8, 2));
                Miminute      = int.Parse(CreateDateStr.Substring(10, 2));
                Second        = int.Parse(CreateDateStr.Substring(12, 2));

                CreateDateStr = CreateDateStr.Insert(4, "-");
                CreateDateStr = CreateDateStr.Insert(7, "-");
                CreateDateStr = CreateDateStr.Insert(10, " ");
                CreateDateStr = CreateDateStr.Insert(13, ":");
                CreateDateStr = CreateDateStr.Insert(16, ":");

                OpenDoor MyOpenDoor = new OpenDoor();
                MyOpenDoor.LockID      = MyLockIDStr;
                MyOpenDoor.KeyID       = KeyID;
                MyOpenDoor.OpenDate    = new DateTime(Year, Month, Date, Hour, Miminute, Second);
                MyOpenDoor.OpenDateStr = CreateDateStr;

                MyAllOpenDoor.Add(MyOpenDoor);

                OpenDoorListStr = OpenDoorListStr + KeyID.ToString() + "," + CreateDateStr + ";";
            }
            int LastIndex = OpenDoorListStr.LastIndexOf(";");

            OpenDoorListStr = OpenDoorListStr.Remove(LastIndex, 1);
            OpenDoorListStr = OpenDoorListStr + "]";

            //OpenDoorManager MyOpenDoorManager = new OpenDoorManager();
            //MyOpenDoorManager.InsertOpenDoorEx(MyAllOpenDoor);

            OpenDoorManager MyOpenDoorManager = new OpenDoorManager();

            MyOpenDoorManager.InsertOpenDoorEx(MyAllOpenDoor);
        }
Example #18
0
    public void ActivateStatic(Inventory playerInventory)
    {
        if (effectType == 0) //Opening, disabling of doors
        {
            OpenDoor door = GetComponent <OpenDoor>();

            door.openDoor(playerInventory);
        }

        //if (effectType == 1) --activate some object
    }
Example #19
0
 void Awake()
 {
     if (_instance == null)
     {
         _instance = this;
     }
     else
     {
         Destroy(this);
     }
 }
Example #20
0
 void OnTriggerExit(Collider other)
 {
     foreach (GameObject target in targets)
     {
         OpenDoor oper = target.GetComponent <OpenDoor>();
         if (oper != null)
         {
             oper.Deactivate();
         }
     }
 }
Example #21
0
    void Start()
    {
        Transform[] trans;
        trans = GetComponentsInChildren <Transform>();
        for (int i = 1; i < trans.Length; i++)
        {
            //print(trans[i].name);
            Checkpoint.Add(new CheckData(trans[i].name));
        }

        door_script = door.GetComponent <OpenDoor>();
    }
Example #22
0
        /// <summary>
        /// Gets called whenever a player interacts with a door.
        /// </summary>
        /// <param name="openDoor"></param>
        public override void OnEvent(OpenDoor openDoor)
        {
            var door = openDoor.Entity.GetState <IDoor>();

            if (!(door.Cooldown <= 0))
            {
                return;
            }

            door.IsOpen   = !door.IsOpen;
            door.Cooldown = 3;
        }
Example #23
0
    void Start()
    {
        Transform[] trans;
        trans = GetComponentsInChildren<Transform>();
        for (int i = 1; i < trans.Length; i++)
        {
            //print(trans[i].name);
            Checkpoint.Add(new CheckData(trans[i].name));
        }

        door_script = door.GetComponent<OpenDoor>();
    }
Example #24
0
        private void All_Click(object sender, MouseButtonEventArgs e)
        {
            TextBlock button = (TextBlock)sender;
            DoorItem  door   = button.DataContext as DoorItem;

            OpenDoor?.Invoke(sender, new OpenDoorEventArgs
            {
                ButtonName = "count",
                Door       = button.DataContext as DoorItem
            });

            e.Handled = true;
        }
Example #25
0
        private IRoom GenerateRoom3()
        {
            IRoom     room  = Plateau();
            Container chest = Chest();

            chest.ExamineDescription = "The carvings show a mighty lion roaring into the distant.";
            room.AddItemToRoom(chest);
            IItem lion = Lion();

            chest.Items.Add(lion);

            IEnchantment get       = new GetEnchantment();
            CloseDoor    closeDoor = new CloseDoor();

            closeDoor.Chest = new BaseObjectId()
            {
                Zone = 22, Id = 1
            };
            closeDoor.Statue = new BaseObjectId()
            {
                Zone = 22, Id = 6
            };
            closeDoor.Door = new BaseObjectId()
            {
                Zone = 22, Id = 3
            };
            get.Effect            = closeDoor;
            get.ActivationPercent = 100;
            chest.Enchantments.Add(get);

            IEnchantment put      = new PutEnchantment();
            OpenDoor     openDoor = new OpenDoor();

            openDoor.Chest = new BaseObjectId()
            {
                Zone = 22, Id = 1
            };
            openDoor.Statue = new BaseObjectId()
            {
                Zone = 22, Id = 6
            };
            openDoor.Door = new BaseObjectId()
            {
                Zone = 22, Id = 3
            };
            put.Effect            = openDoor;
            put.ActivationPercent = 100;
            chest.Enchantments.Add(put);

            return(room);
        }
    public tasks getCurrentTask()
    {
        List <tasks> taskList = new List <tasks>();

        tasks openDoor = new OpenDoor();
        tasks bargeIn  = new BargeDoor();

        taskList.Add(openDoor);
        taskList.Add(bargeIn);

        sequence bargeClosedDoor = new sequence(taskList);

        return(bargeClosedDoor);
    }
Example #27
0
    // Update is called once per frame
    void Update()
    {
        //SpawnButton spawnbutton = GetComponent<>
        if (Input.GetMouseButtonDown(0))
        {
            RaycastHit hitInfo = new RaycastHit();
            Ray        ray     = Camera.main.ScreenPointToRay(Input.mousePosition);
            //ray.origin = playerObject.transform.position;
            bool       hit     = Physics.Raycast(ray, out hitInfo, range);
            GameObject _target = hitInfo.transform.gameObject;
            if (_target != null)
            {
                //  Debug.Log(_target);

                if (_target.tag == "Door")
                {
                    Door = _target;
                    OpenDoor OpenDoor = Door.GetComponent <OpenDoor>();
                    OpenDoor.DoorOpen();
                }
            }
            if (_target.tag == "SmallBug")
            {
                SmallBug = _target;
                Mount PMount = playerObject.GetComponent <Mount>();
                Mount BMount = _target.GetComponent <Mount>();
                PMount.mount(_target, playerObject);
                BMount.mount(_target, playerObject);
            }
            if (_target.tag == "Finish")
            {
                // Clicked();
            }
            if (_target.tag == "PickUp")
            {
                UIManager IUE = UI.GetComponent <UIManager>();

                if (_target.name.Contains("Ball"))
                {
                    //IUE.Inventory[1] = _target.name;
                    IUE.Amount[0] += 1;
                }
                if (_target.name == "TeddyBear")
                {
                    IUE.Amount[1] += 1;
                }
                DestroyImmediate(_target);
            }
        }
    }
Example #28
0
    public ITask ConfigureBehavior()
    {
        List <ITask> moveToOpenRoom = new List <ITask>();
        ITask        CheckOpenDoor  = new isDoorOpen(door);
        ITask        MoveIntoRoom   = new MoveToTarget();

        moveToOpenRoom.Add(CheckOpenDoor);
        moveToOpenRoom.Add(MoveIntoRoom);
        Sequence moveToOpenRoomSeq = new Sequence(moveToOpenRoom);

        List <ITask> tryToOpenDoor = new List <ITask>();
        ITask        isUnlocked    = new isDoorUnlocked(door);
        ITask        openDoor      = new OpenDoor(door);

        tryToOpenDoor.Add(isUnlocked);
        tryToOpenDoor.Add(openDoor);
        ITask tryToOpenSeq = new Sequence(tryToOpenDoor);

        List <ITask> breakLockedDoor = new List <ITask>();
        ITask        doorClosed      = new isDoorClosed(door);
        ITask        bargeDoor       = new BargeDoor(door);

        breakLockedDoor.Add(doorClosed);
        breakLockedDoor.Add(bargeDoor);
        ITask breakDoor = new Sequence(breakLockedDoor);

        List <ITask> interactWithDoor = new List <ITask>();

        interactWithDoor.Add(tryToOpenSeq);
        interactWithDoor.Add(breakDoor);
        ITask interact = new Selector(interactWithDoor);

        List <ITask> moveToDoor = new List <ITask>();
        ITask        goToDoor   = new MoveToDoor();
        ITask        goToRoom   = new MoveToTarget();

        moveToDoor.Add(goToDoor);
        moveToDoor.Add(interact);
        moveToDoor.Add(goToRoom);
        ITask moveToClosedRoomSeq = new Sequence(moveToDoor);

        List <ITask> taskList = new List <ITask>();

        taskList.Add(moveToOpenRoomSeq);
        taskList.Add(moveToClosedRoomSeq);

        ITask root = new Selector(taskList);

        return(root);
    }
        public async Task <IActionResult> OpenDoor([FromRoute] int doorId, [FromBody] OpenDoor command)
        {
            command.DoorId = doorId;
            var result = await Mediator.Send(command);

            if (result.Success)
            {
                return(Ok(result.Item));
            }
            else
            {
                return(BadRequest(result.Message));
            }
        }
Example #30
0
        private IRoom GenerateRoom11()
        {
            IRoom     room  = Plateau();
            Container chest = Chest();

            chest.ExamineDescription = "The carvings show a bear climbing the tree of life.";
            room.AddItemToRoom(chest);
            chest.Items.Add(Bear());

            IEnchantment get       = new GetEnchantment();
            CloseDoor    closeDoor = new CloseDoor();

            closeDoor.Chest = new BaseObjectId()
            {
                Zone = 22, Id = 5
            };
            closeDoor.Statue = new BaseObjectId()
            {
                Zone = 22, Id = 2
            };
            closeDoor.Door = new BaseObjectId()
            {
                Zone = 22, Id = 11
            };
            get.Effect            = closeDoor;
            get.ActivationPercent = 100;
            chest.Enchantments.Add(get);

            IEnchantment put      = new PutEnchantment();
            OpenDoor     openDoor = new OpenDoor();

            openDoor.Chest = new BaseObjectId()
            {
                Zone = 22, Id = 5
            };
            openDoor.Statue = new BaseObjectId()
            {
                Zone = 22, Id = 2
            };
            openDoor.Door = new BaseObjectId()
            {
                Zone = 22, Id = 11
            };
            put.Effect            = openDoor;
            put.ActivationPercent = 100;
            chest.Enchantments.Add(put);

            return(room);
        }
Example #31
0
        private IRoom GenerateRoom15()
        {
            IRoom     room  = Plateau();
            Container chest = Chest();

            chest.ExamineDescription = "The carvings show a large fish swallowing the world.";
            room.AddItemToRoom(chest);
            chest.Items.Add(Fish());

            IEnchantment get       = new GetEnchantment();
            CloseDoor    closeDoor = new CloseDoor();

            closeDoor.Chest = new BaseObjectId()
            {
                Zone = 22, Id = 7
            };
            closeDoor.Statue = new BaseObjectId()
            {
                Zone = 22, Id = 4
            };
            closeDoor.Door = new BaseObjectId()
            {
                Zone = 22, Id = 15
            };
            get.Effect            = closeDoor;
            get.ActivationPercent = 100;
            chest.Enchantments.Add(get);

            IEnchantment put      = new PutEnchantment();
            OpenDoor     openDoor = new OpenDoor();

            openDoor.Chest = new BaseObjectId()
            {
                Zone = 22, Id = 7
            };
            openDoor.Statue = new BaseObjectId()
            {
                Zone = 22, Id = 4
            };
            openDoor.Door = new BaseObjectId()
            {
                Zone = 22, Id = 15
            };
            put.Effect            = openDoor;
            put.ActivationPercent = 100;
            chest.Enchantments.Add(put);

            return(room);
        }
 public void Handle(OpenDoor command)
 {
 }
Example #33
0
    // Update is called once per frame
    void Update()
    {
        // 左クリックを取得
        if(Input.GetButtonDown("Fire1")) {
            // クリックしたスクリーン座標をrayに変換
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            // Rayの当たったオブジェクトの情報を格納する
            RaycastHit hit = new RaycastHit();
            // オブジェクトにrayが当たった時
            if(Physics.Raycast(ray, out hit, distance)) {
                // rayが当たったオブジェクトの名前を取得
                string objectName = hit.collider.gameObject.name;
                string objectName2 = hit.collider.gameObject.transform.parent.name;
                Debug.Log(objectName);

                if (objectName == "RDoor1") {
                    if (numberSaw == false) {
                        textcontroller.drawText ("開かない。よく見るとダイヤルロックが掛かっている。");
                    } else if (refLocked == true) {
                        textcontroller.inputDial ();
                        Debug.Log (textcontroller.key);
                        refLocked = false;
                    } else if(refLocked == false) {
                        openrdoor = rdoor1.GetComponent<OpenRDoor> ();
                        if (openrdoor.opened) {
                            openrdoor.opened = false;
                            textcontroller.drawText ("冷蔵庫の扉を閉めた。");
                        } else {
                            openrdoor.opened = true;
                            textcontroller.drawText ("冷蔵庫の扉を開けた。");
                        }
                    }
                } else if (objectName == "RDoor2") {
                    openrdoor = rdoor2.GetComponent<OpenRDoor> ();
                    if (openrdoor.opened) {
                        openrdoor.opened = false;
                        textcontroller.drawText ("冷蔵庫の扉を閉めた。");
                    } else {
                        openrdoor.opened = true;
                        textcontroller.drawText ("冷蔵庫の扉を開けた。");
                    }
                } else if (objectName2 == "Refrigerator") {
                    textcontroller.drawText ("何の変哲もない冷蔵庫だ。");
                }
                if (objectName == "ak47_2") {
                    GameObject obj = GameObject.Find ("ak47");
                    Vector3 scale = obj.transform.localScale;
                    scale.x = 1f;
                    scale.y = 1f;
                    scale.z = 1f;
                    obj.transform.localScale = scale;

                    GameObject obj2 = GameObject.Find ("ak47_2");
                    Destroy (obj2);

                    textcontroller.drawText ("AK-47(のモデルガン)を手に入れた!" + System.Environment.NewLine + "(右クリックで発砲できます。)");
                }
                if (objectName == "Curtain" || objectName == "Curtain_Closed" ) {
                    GameObject obj1 = GameObject.Find ("Curtain");
                    GameObject obj2 = GameObject.Find ("Curtain_Closed");
                    Vector3 scale1 = obj1.transform.localScale;
                    Vector3 scale2 = obj2.transform.localScale;
                    if (curtainClosed == false) {
                        textcontroller.drawText ("Curtainを閉めた。");
                        scale1.x = 0f;
                        scale1.z = 0f;
                        scale2.x = 0.4f;
                        scale2.z = 0.8f;
                        curtainClosed = true;
                        lights[6].SetActive (false);
                    } else {
                        textcontroller.drawText ("カーテンを開けた。");
                        scale1.x = 0.4f;
                        scale1.z = 0.8f;
                        scale2.x = 0f;
                        scale2.z = 0f;
                        curtainClosed = false;
                        lights [6].SetActive (true);
                    }
                    obj1.transform.localScale = scale1;
                    obj2.transform.localScale = scale2;
                }
                if (objectName == "Conditioner1" || objectName == "Conditioner2") {
                    textcontroller.drawText("何の変哲もないエアコンだ。");
                }
                if (objectName == "Table1" || objectName == "Table2" || objectName == "Table3" || objectName == "Table4") {
                    textcontroller.drawText("何の変哲もない机だ。上には何も置かれていない。");
                }
                if (objectName == "Table5") {
                    textcontroller.drawText ("何の変哲もない机だ。パソコンが置かれている。");
                }
                if (objectName == "Keyboard005") {
                    textcontroller.drawText ("何の変哲もないキーボードだ。");
                }
                if (objectName == "Monitor005") {
                    textcontroller.drawText ("パソコンのモニターだ。Windows XPがインストールされている様だ。");
                }
                if (objectName == "PC005") {
                    textcontroller.drawText ("パソコンの本体だ。");
                }
                if (objectName == "Printer") {
                    textcontroller.drawText ("何の変哲もないプリンタだ。");
                }
                if (objectName == "Chair1" || objectName == "Chair2" || objectName == "Chair2" || objectName == "Chair3" || objectName == "Chair4" || objectName == "Chair5" || objectName == "Chair6" || objectName == "Chair7" || objectName == "Chair8" || objectName == "Chair9") {
                    textcontroller.drawText ("何の変哲もない椅子だ。");
                }
                if (objectName2 == "ProjectionMapping") {
                    textcontroller.drawText ("プロジェクションマッピングの装置だ。");
                }
                if (objectName2 == "Shelf") {
                    textcontroller.drawText ("何の変哲もない棚だ。");
                }
                if (objectName2 == "Shelf2") {
                    textcontroller.drawText ("棚だ。電気ケトルの様なもの、オーブントースターの様なもの、電子レンジの様なものが置かれている。");
                }
                if (objectName2 == "WhiteBoard") {
                    if (lights [0].activeSelf == false && lights [6].activeSelf == false) {
                        textcontroller.drawText ("数字が書かれている。");
                    } else {
                        textcontroller.drawText ("何の変哲もないホワイトボードだ。");
                    }
                }
                if (objectName == "WhiteBoard2") {
                    textcontroller.drawText ("何の変哲もないホワイトボードだ。何か書かれているが、重要なことではなさそうだ。");
                }
                if (objectName2 == "DustBox") {
                    textcontroller.drawText ("何の変哲もないゴミ箱だ。");
                }
                if (objectName == "Switches") {
                    textcontroller.drawText ("スイッチ類だ。操作する必要はなさそうだ。");
                }
                if (objectName == "Plug") {
                    textcontroller.drawText ("コンセントの差込口だ。");
                }
                if (objectName == "Door1") {
                    textcontroller.drawText ("扉がある。外側から鍵が掛けられている様だ。");
                }
                if (objectName == "Door2") {
                    textcontroller.drawText ("TK309と書かれている。");
                }
                if (objectName == "Switches") {
                    textcontroller.drawText ("操作する必要は無さそうだ。");
                }
                if (objectName == "Switch") {
                    if (lightIsOn == true) {
                        textcontroller.drawText ("電気を消した。");
                        for (int i = 0; i < 6; i++) {
                            lights [i].SetActive (false);
                        }
                        lightIsOn = false;
                    } else {
                        textcontroller.drawText ("電気を点けた。");
                        for (int i = 0; i < 6; i++) {
                            lights [i].SetActive (true);
                        }
                        lightIsOn = true;
                    }
                }
                if (objectName == "CardReader") {
                    if (cardGot == false) {
                        textcontroller.drawText ("カードリーダーだ。カードをかざすと扉が開くかもしれない。");
                    } else {
                        textcontroller.drawText ("扉が開いた!");
                        opendoor = door.GetComponent<OpenDoor> ();
                        opendoor.opened = true;
                    }
                }
                if (objectName == "Card") {
                    textcontroller.drawText ("学生証を手に入れた!");
                    cardGot = true;
                }
            }
        }

        if (lights [0].activeSelf == false && lights [6].activeSelf == false) {
            GameObject obj1 = GameObject.Find ("Num1");
            GameObject obj2 = GameObject.Find ("Num2");
            Vector3 scale1 = obj1.transform.localScale;
            Vector3 scale2 = obj2.transform.localScale;
            scale1.x = 0.96f;
            scale1.z = 0.96f;
            scale2.x = 0.96f;
            scale2.z = 0.96f;
            obj1.transform.localScale = scale1;
            obj2.transform.localScale = scale2;
            numberSaw = true;
        }
    }