public IEnumerator UpdateView() { while (true) { AbilityWrapper wrapper = m_entity.m_abilities.Find(a => a.HotkeySlot == m_hotkey); if (wrapper != null && (m_wrapper == null || wrapper.AbilityName != m_wrapper.AbilityName)) { m_wrapper = wrapper; m_icon.enabled = true; m_backgroundIcon.enabled = true; m_icon.sprite = wrapper.GetAbility().m_icon; m_backgroundIcon.sprite = wrapper.GetAbility().m_icon; } else if (wrapper == null) { m_wrapper = null; m_icon.enabled = false; m_backgroundIcon.enabled = false; } string hotkeyText = ""; if (m_entity is Player) { Rewired.Player player = ((Player)m_entity).m_rewiredPlayer; Rewired.Controller lastActive = player.controllers.GetLastActiveController(); if (lastActive != null && lastActive.type == Rewired.ControllerType.Mouse) { lastActive = player.controllers.Keyboard; } Rewired.ActionElementMap elementMap = player.controllers.maps.GetFirstElementMapWithAction( lastActive, "Hotkey " + m_hotkey, false); if (elementMap != null) { hotkeyText = elementMap.elementIdentifierName; } else { elementMap = player.controllers.maps.GetFirstElementMapWithAction("Hotkey " + m_hotkey, false); if (elementMap != null) { hotkeyText = elementMap.elementIdentifierName; } } } m_hotkeyText.text = hotkeyText; yield return(new WaitForSeconds(Constants.ABILITY_VIEW_REFRESH)); } }
/** * Initialises the controller. */ public Controller(RewiredController controller) { m_controller = controller; }