public void SetParticleArcColor(ParticleSystem.MinMaxGradient startColor, ParticleSystem.MinMaxGradient overTimeColor) { ArcArcRenderer prefabRenderer = ArcNotePrefab.GetComponent <ArcArcRenderer>(); ParticleSystem.MainModule prefabMain = prefabRenderer.JudgeEffect.main; prefabMain.startColor = startColor; ParticleSystem.ColorOverLifetimeModule prefabColorOverLifetime = prefabRenderer.JudgeEffect.colorOverLifetime; prefabColorOverLifetime.color = overTimeColor; foreach (ArcArc arc in Arcs) { ParticleSystem.MainModule main = arc.arcRenderer.JudgeEffect.main; main.startColor = startColor; ParticleSystem.ColorOverLifetimeModule colorOverLifetime = arc.arcRenderer.JudgeEffect.colorOverLifetime; colorOverLifetime.color = overTimeColor; } }
public void SetArcColors(Color arcRedLow, Color arcBlueLow, Color arcGreenLow, Color arcRedHigh, Color arcBlueHigh, Color arcGreenHigh, Color arcVoid) { ArcRedLow = arcRedLow; ArcBlueLow = arcBlueLow; ArcGreenLow = arcGreenLow; ArcRedHigh = arcRedHigh; ArcBlueHigh = arcBlueHigh; ArcGreenHigh = arcGreenHigh; ArcVoid = arcVoid; //TODO: arc has slight diifferent color at different hight ArcArcRenderer prefabRenderer = ArcNotePrefab.GetComponent <ArcArcRenderer>(); prefabRenderer.ReloadColor(); foreach (ArcArc arc in Arcs) { arc.arcRenderer.ReloadColor(); } }
public void SetArcBodySkin(Texture2D normal, Texture2D highlight) { ArcMaterial.mainTexture = normal; ArcArcRenderer prefabRenderer = ArcNotePrefab.GetComponent <ArcArcRenderer>(); prefabRenderer.HighlightTexture = highlight; prefabRenderer.DefaultTexture = normal; prefabRenderer.ReloadSkin(); ArcArcSegmentComponent prefabSegmentComponent = prefabRenderer.SegmentPrefab.GetComponent <ArcArcSegmentComponent>(); prefabSegmentComponent.HighlightTexture = highlight; prefabSegmentComponent.DefaultTexture = normal; prefabSegmentComponent.ReloadSkin(); foreach (ArcArc arc in Arcs) { arc.arcRenderer.HighlightTexture = highlight; arc.arcRenderer.DefaultTexture = normal; arc.arcRenderer.ReloadSkin(); } }