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 }
void Update() { if (Input.GetKeyDown(KeyCode.Space)) { OpenDoor.openDoor(); } }
// // 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. } } }
// // 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 }
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); }
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); }
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); }
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); }
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 }); }
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); }
private void Start() { dRange = new DoorRange(); dRange2 = new Door2Range(); dAway = new DoorAway(); dLocked = new DoorLocked(); openDoor = new OpenDoor(); closeDoor = new CloseDoor(); jumpingDoors = new Cat(); }
private void Awake() { if (instance != null) { Destroy(gameObject); } else { instance = this; } }
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); }
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 }
void Awake() { if (_instance == null) { _instance = this; } else { Destroy(this); } }
void OnTriggerExit(Collider other) { foreach (GameObject target in targets) { OpenDoor oper = target.GetComponent <OpenDoor>(); if (oper != null) { oper.Deactivate(); } } }
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>(); }
/// <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; }
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>(); }
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; }
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); }
// 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); } } }
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)); } }
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); }
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) { }
// 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; } }