private void SetVisible(bool value) { var newstate = Game.Data.Get("loader_visible", false); if (curstate == newstate) { return; } curstate = newstate; ez?.Kill(); var circle_from = fg.color; var fader_from = bg.color; cv.enabled = true; gameObject.SetActive(true); if (newstate) { ez = EZ.SpawnGlobal().Add(0.1f, pt => { fg.color = Color.Lerp(circle_from, Color.black, pt); bg.color = Color.Lerp(fader_from, Color.white, pt); }); } else { ez = EZ.SpawnGlobal().Add(0.1f, pt => { fg.color = Color.Lerp(circle_from, Color.clear, pt); bg.color = Color.Lerp(fader_from, Color.clear, pt); }).Add(() => { cv.enabled = false; }); } }
void InvokeMessage(object arg) { var str = (string)arg; label.text = str; cnv.enabled = true; var tf = (RectTransform)label.transform; tf.anchoredPosition = Vector3.zero; var transp = new Color(1, 1, 1, 0); ez?.Kill(); ez = EZ.SpawnGlobal().Add(t => { t = EZ.BackOut(t); tf.localScale = Vector3.one * t; label.color = Color.Lerp(transp, Color.white, t); }).Wait(0.3f).Add(t => { t = EZ.QuadIn(1 - t); tf.localScale = Vector3.one * t; label.color = Color.Lerp(transp, Color.white, t); }).Add(() => { cnv.enabled = false; }); }
void SetActive(bool value = false) { Log.Trace($"{this}: {fieldName} = {value}", gameObject); if (value == current) { return; } current = value; ez?.Kill(); _canvas.enabled = true; var pos_from = window.localPosition; _fader.color = new Color(0, 0, 0, value ? 0 : 0.7f); if (value) { ez = EZ.Spawn(global).Add(t => { t = EZ.BackOut(t); var c = _fader.color; c.a = t * 0.7f; _fader.color = c; window.localPosition = Vector3.LerpUnclamped(pos_from, Vector3.zero, t); }); } else { ez = EZ.Spawn(global).Add(t => { var c = _fader.color; c.a = (1 - t) * 0.7f; _fader.color = c; window.localPosition = Vector3.LerpUnclamped(pos_from, offscreen, t); }).Add(() => { _fader.color = new Color(0, 0, 0, 0); _canvas.enabled = false; }); } }