2
我有一個球員,我使用下面的腳本旋轉。它旋轉播放器20度,而不是10(我需要10)。不明白爲什麼。當我按q
時,它只執行一次。腳本旋轉對象比我需要的更多
private UnityStandardAssets.Characters.FirstPerson.FirstPersonController firstPersonController;
public GameObject player;
void Start()
{
firstPersonController = player.GetComponent<UnityStandardAssets.Characters.FirstPerson.FirstPersonController>();
}
void Update()
{
StartCoroutine("RotatePlayerDelay");
}
IEnumerator RotatePlayerDelay()
{
Debug.Log("1");
firstPersonController.m_MouseLook.myAngle += 10; // here I have +20, not +10
yield return new WaitForSeconds(0.005f);
firstPersonController.m_MouseLook.myAngle = 0;
Debug.Log("2");
}
附:我需要協同程序,因爲沒有它,它將永遠旋轉
這有點難以給出答案而不知道FirstPersonController類和MouseLook類。我也很確定你不需要一個協程,而是像「isAiming」或「isFacingTarget」這樣的布爾值。順便說一句:協程是開始每幀看起來不可取的。 – Wipster