private void Update() { time += Time.deltaTime; if (time > actionTime) { time = 0; float rnd = Random.value; if (rnd < 0.25f) { player.CrossFade("TurnOnSpotLeftA", 0.2f); } else if (rnd < 0.5f) { player.CrossFade("TurnOnSpotRightA", 0.2f); } else if (rnd < 0.75f) { player.CrossFade("TurnOnSpotRightC", 0.2f); } else { player.CrossFade("TurnOnSpotLeftC", 0.2f); } } if (player.IsTimeAtTheEndOfLoop) { player.CrossFade("Idle", 0.8f); } }
private void Update() { if (Input.GetKeyDown(KeyCode.W)) { isForward = true; } if (Input.GetKeyUp(KeyCode.W)) { isForward = false; } if (Input.GetKeyDown(KeyCode.S)) { isBackward = true; } if (Input.GetKeyUp(KeyCode.S)) { isBackward = false; } if (Input.GetKeyDown(KeyCode.A)) { isTurningLeft = true; } if (Input.GetKeyUp(KeyCode.A)) { isTurningLeft = false; } if (Input.GetKeyDown(KeyCode.D)) { isTurningRight = true; } if (Input.GetKeyUp(KeyCode.D)) { isTurningRight = false; } if (isForward) { forwardSpeed += 0.5f * Time.deltaTime; } if (!isForward) { if (isBackward) { forwardSpeed -= 0.2f * Time.deltaTime; } else { forwardSpeed -= 1.25f * Time.deltaTime; } } if (isTurningLeft || isTurningRight) { forwardSpeed -= 0.8f * Time.deltaTime; } forwardSpeed = Mathf.Clamp01(forwardSpeed); if (forwardSpeed == 0) { if (isTurningLeft) { player.CrossFade("TurnOnSpotLeftB", 0.2f); } else if (isTurningRight) { player.CrossFade("TurnOnSpotRightB", 0.2f); } else if (isBackward) { player.CrossFade("TurnOnSpotRightD", 0.2f); } else { player.CrossFade("Idle", 0.2f); } } if (forwardSpeed > 0 && forwardSpeed <= 0.4f) { if (isTurningLeft) { player.CrossFade("PlantNTurneft90", 0.2f); } else if (isTurningRight) { player.CrossFade("PlantNTurnRigtht90", 0.2f); } else if (isBackward) { player.CrossFade("PlantNTurnRight180", 0.2f); } else { player.CrossFade("Walk", 0.2f); } } if (forwardSpeed > 0.4f) { if (isTurningLeft) { player.CrossFade("PlantNTurneft90", 0.2f); } else if (isTurningRight) { player.CrossFade("PlantNTurnRigtht90", 0.2f); } else if (isBackward) { player.CrossFade("PlantNTurnRight180", 0.2f); } else { player.CrossFade("Run", 0.2f); } } }