void CellAnimate(FADER_STYLE style, int cellIndex, Color color, float duration) { if (cellIndex < 0 || cellIndex >= cells.Length) { return; } if (cellIndex == _cellHighlightedIndex) { cells [cellIndex].isFading = true; HideCellHighlight(); } Renderer renderer = null; gridSurfaces.TryGetValue(cellIndex, out renderer); Color initialColor = Misc.ColorClear; if (renderer == null) { renderer = SetCellTemporaryColor(cellIndex, initialColor); } else { if (renderer.enabled) { initialColor = renderer.sharedMaterial.color; } else { renderer.enabled = true; } } SurfaceFader.Animate(style, cells [cellIndex], renderer, initialColor, color, duration); }
public static void Animate(FADER_STYLE style, IFader fadeEntity, Renderer renderer, Color initialColor, Color color, float duration) { SurfaceFader fader = renderer.GetComponent <SurfaceFader> (); if (fader != null) { DestroyImmediate(fader); } fader = renderer.gameObject.AddComponent <SurfaceFader> (); fader.duration = duration + 0.0001f; fader.color = color; fader.style = style; fader._renderer = renderer; fader.fadeEntity = fadeEntity; fader.initialColor = initialColor; }
public void Finish(float fadeOutDuration) { repetitions = 0; if (fadeOutDuration <= 0) { startTime = float.MinValue; Update(); } else { style = FADER_STYLE.FadeOut; startTime = Time.time; duration = fadeOutDuration; } }
public static void Animate(FADER_STYLE style, Grid2D grid, GameObject surface, Region region, Material fadeMaterial, Color color, float duration) { SurfaceFader fader = surface.GetComponent <SurfaceFader> (); if (fader != null) { DestroyImmediate(fader); } fader = surface.AddComponent <SurfaceFader> (); fader.grid = grid; fader.startTime = Time.time; fader.duration = duration + 0.0001f; fader.color = color; fader.region = region; fader.fadeMaterial = fadeMaterial; fader.style = style; }
public static void Animate(FADER_STYLE style, TerrainGridSystem grid, GameObject surface, Region region, Material fadeMaterial, Color color, float duration, int repetitions) { SurfaceFader fader = surface.GetComponent <SurfaceFader>(); if (fader != null) { fader.Finish(0); DestroyImmediate(fader); } fader = surface.AddComponent <SurfaceFader>(); fader.grid = grid; fader.startTime = Time.time; fader.duration = duration + 0.0001f; fader.color = color; fader.region = region; fader.fadeMaterial = fadeMaterial; fader.style = style; fader.initialColor = fadeMaterial.color; fader.repetitions = repetitions; }
public static void Animate(FADER_STYLE style, IFader fadeEntity, Renderer renderer, Color initialColor, Color color, float duration) { SurfaceFader fader = renderer.GetComponent <SurfaceFader> (); if (fader == null) { fader = renderer.gameObject.AddComponent <SurfaceFader>(); fader.fadeMaterial = Instantiate(renderer.sharedMaterial); fader.fadeMaterial.hideFlags = HideFlags.DontSave; renderer.sharedMaterial = fader.fadeMaterial; } fader.duration = duration + 0.0001f; fader.color = color; fader.style = style; fader._renderer = renderer; fader.fadeEntity = fadeEntity; fadeEntity.isFading = true; fader.initialColor = initialColor; fader.map = WMSK.GetInstance(renderer.transform); fader.highlightFadeStart = fader.map.time; fader.Update(); }