Итак, вот моя проблема, у меня есть сценарий, который позволяет мне блокировать и вращать вражескую цель. Проблема в том, что мой персонаж движется, нажав кнопку блокировки, персонаж будет продолжать движение в любом направлении, которое он собирался до нажатия кнопки, независимо от того, какие кнопки нажимаются на кнопки в противоположном направлении.Unity-Character Continues Перемещение при блокировке на врага
Это не происходит, когда я неподвижен, если мой персонаж стоит на месте, и я нажимаю кнопку блокировки, все работает нормально. Это только когда я двигаюсь.
Я не уверен, если это достаточно информации, или, что еще кому-то нужно, чтобы лучше понять, но вот мой сценарий:
if (GetComponent<DetectedEnemies>().locked)//checks bool to see if lockOn button was pressed
{
mainCam.SetActive(false);//turns off main cam
lockCam.SetActive(true);//turns on lockOn cam
movesetting.tarObject = GetComponent<DetectedEnemies>().Closest;//target object will be the closest enemy to player
this.transform.LookAt(movesetting.tarObject.transform.position);//player will look at the target object at all times
if (currXRot.x > maxXRot.x)//if the current x rot of this object exceeds the maxXRot it can go...
currXRot.x = maxXRot.x;//it gets reset
transform.Translate(Vector3.right * movesetting.speed * Time.deltaTime * turnInput);//orbits around the target object
transform.Translate(Vector3.forward * movesetting.speed * Time.deltaTime * forwardInput);//in control of moving towards and away from target
}
Любой помощь очень appreaciated, спасибо заранее. Если вам нужна дополнительная информация или если что-то неясно, сообщите мне.