public void TryCloseDoor(ObstacleTowerAgent agent) { if (open && door.CompareTag("lockedDoorLever")) { CloseDoor(agent); } }
public override void InitializeAcademy() { floor.environmentParameters = new EnvironmentParameters(); agentComponent = FindObjectOfType <ObstacleTowerAgent>(); GraphicsSettings.useScriptableRenderPipelineBatching = true; }
public void Awake() { floor.environmentParameters = new EnvironmentParameters(); agentComponent = FindObjectOfType <ObstacleTowerAgent>(); GraphicsSettings.useScriptableRenderPipelineBatching = true; Academy.Instance.OnEnvironmentReset += ResetTower; }
private void OpenDoor(ObstacleTowerAgent agent) { animator.Play(clips[0]); open = true; if (agent.denseReward) { agent.AddReward(0.1f); } }
private void CloseDoor(ObstacleTowerAgent agent) { open = false; animator.Play(clips[1]); if (agent.denseReward) { agent.AddReward(-0.1f); } }
public void TryOpenDoor(ObstacleTowerAgent agent) { if (!open) { if (door.CompareTag("lockedDoorRegular") || door.CompareTag("lockedDoorPuzzle") || door.CompareTag("lockedDoorLever")) { OpenDoor(agent); } if (door.CompareTag("lockedDoorKey")) { if (agent.keyController) { if (agent.keyController.currentNumberOfKeys > 0) { agent.keyController.UseKey(); OpenDoor(agent); } } } } }
void Awake() { rb = GetComponent <Rigidbody>(); agent = FindObjectOfType <ObstacleTowerAgent>(); }