private void Awake() { if (main == null) { main = this; ReassignDevices(); } }
private IEnumerator StartDuel() { yield return(new WaitForSeconds(delayTillCountdown)); menuPanel.SetActive(false); countdownPanel.SetActive(true); foreach (var playerInput in FindObjectsOfType <PlayerInput>()) { Destroy(playerInput); } var delayTime = new WaitForSeconds(countInterval); countdownAudioSource.Play(); var countdownImageCount = countDownSprites.Length; for (int i = 0; i < countdownImageCount - 1; i++) { countdownImage.sprite = countDownSprites[i]; yield return(delayTime); } countdownImage.sprite = countDownSprites[countdownImageCount - 1]; countdownImage.rectTransform.sizeDelta = lastCountdownImageSize; yield return(delayTime); var inputModules = FindObjectsOfType <InputSystemUIInputModule>(); for (var i = 0; i < _selectedCharacters.Length; i++) { var(character, instantiationParameters) = _selectedCharacters[i]; _instantiatedCharacters[i] = new CinemachineTargetGroup.Target { target = Instantiate(character, instantiationParameters.Position, instantiationParameters.Rotation).transform, weight = 0.5f, radius = characterRadius }; cinemachineTargetGroup.m_Targets = _instantiatedCharacters; character.GetComponent <PlayerInput>().uiInputModule = inputModules[i]; } countdownPanel.SetActive(false); hudPanel.SetActive(true); _selectedCharacters = new Tuple <GameObject, InstantiationParameters> [2]; PlayerInputDeviceManager.ReassignDevices(); yield return(null); }