// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ // Seleciona a cor do Seletor. public void SetColor(SelectorStateType color) { Color newColor; switch (color) { case SelectorStateType.Valid: newColor = validColor; break; case SelectorStateType.Invalid: newColor = invalidColor; break; case SelectorStateType.Opponent: newColor = opponetColor; break; default: newColor = Color.black; break; } // TODO: Fazer interpolação de cores. _projector.material.color = newColor; Color startColor = new Color(newColor.r, newColor.g, newColor.b, 0f); Color endColor = new Color(newColor.r, newColor.g, newColor.b, 1f); _selectorArc.startColor = startColor; _selectorArc.endColor = endColor; Color colorRenderer = new Color(newColor.r, newColor.g, newColor.b, 0.5f); _renderer.material.SetColor("_TintColor", colorRenderer); _renderer.transform.GetChild(0).GetComponent <ParticleSystemRenderer>().material.SetColor("_TintColor", colorRenderer); }
// TODO: Otimizar melhor, o operador da comparação não está funcionando como deveria com os arrays. public void SetSelectorState(NetworkSelectorHitState newState) { _currentSelectorHitState = newState; if ((SelectorStateType)newState.selectorState != _instance.currentState) { this.currentState = (SelectorStateType)newState.selectorState; _selectorController.SetColor(this.currentState); } // _instance._target = AttackPreferenceRules(ref newState.opponent); }