virtual protected void Start() { fadeCanvas = GameObject.Find("FadeCanvas"); fadeState = FADE_STATE.FADEIN; fadeImage = fadeCanvas.GetComponent <FadeImage>(); fadeImage.Range = FADE_MAX; }
/// <summary> /// フェード /// </summary> /// <param name="fadeTime">フェードにかける時間</param> /// <param name="startAlpha">開始アルファ値</param> /// <param name="endAlpha">終了アルファ値</param> /// <param name="action">フェード終了時イベント</param> /// <returns></returns> private IEnumerator Fade(float fadeTime, float startAlpha, float endAlpha, Action action = null) { fadePanel.gameObject.SetActive(true); float elapsedTime = 0.0f; while (elapsedTime < fadeTime) { elapsedTime += Time.unscaledDeltaTime; var currentAlpha = Mathf.Lerp(startAlpha, endAlpha, Mathf.Clamp01(elapsedTime / fadeTime)); SetAlpha(currentAlpha); yield return(new WaitForEndOfFrame()); } if (action != null) { action(); } if (state == FADE_STATE.FADEIN) { fadePanel.gameObject.SetActive(false); } state = FADE_STATE.IDLE; }
void FixedUpdate() { if (playerScript.IsDead()) { if (timeOfDeath == 0) { timeOfDeath = Time.time; aiManager.SetAllToPatrol(); fadeState = FADE_STATE.FADE_OUT; } if (Time.time - timeOfDeath >= waitTimeAfterDeath) { fadeState = FADE_STATE.FADE_IN; timeOfDeath = 0; playerScript.SetHealth(playerScript.maxHealth); player.transform.position = lastCheckpoint; aiManager.ResetAIPositions(); } } if (fadeState == FADE_STATE.FADE_IN) { fadeScreen.color = new Color(fadeScreen.color.r, fadeScreen.color.g, fadeScreen.color.b, fadeScreen.color.a - (1.0f / fadeInTime) * Time.fixedDeltaTime); if (fadeScreen.color.a <= 0) fadeState = FADE_STATE.NONE; } else if (fadeState == FADE_STATE.FADE_OUT) { fadeScreen.color = new Color(fadeScreen.color.r, fadeScreen.color.g, fadeScreen.color.b, fadeScreen.color.a + (1.0f / fadeOutTime) * Time.fixedDeltaTime); if (fadeScreen.color.a >= 1) fadeState = FADE_STATE.NONE; } }
// フェードイン状態 void FadeIn() { fadeImage.Range -= FadeSpeed; if (fadeImage.Range <= FADE_MIN) { fadeImage.Range = FADE_MIN; fadeState = FADE_STATE.NONE; } }
void Start() { lastCheckpoint = new Vector3(0, 0, 0); player = GameObject.FindGameObjectWithTag("Player"); playerScript = player.GetComponent<Player>(); aiManager = GetComponent<LastPlayerSighting>(); timeOfDeath = 0; fadeState = FADE_STATE.FADE_IN; fadeScreen = fadeGameObject.GetComponent<Image>(); fadeScreen.color = new Color(fadeScreen.color.r, fadeScreen.color.g, fadeScreen.color.b, 1.0f); fadeOutTime = waitTimeAfterDeath; }
/// <summary> /// フェードイン開始 /// </summary> /// <param name="time"></param> public void FadeIn(float time, Action action = null) { // フェード中は無効 if (state != FADE_STATE.IDLE) { return; } if (fadePanel == null) { CreateFadePanel(); } state = FADE_STATE.FADEIN; StartCoroutine(Fade(time, 1.0f, 0.0f, action)); }
private void fade(int liTarget) { float lfDiff = Mathf.Abs(fader.color.a - liTarget); //If we're close enough to the target alpha if (lfDiff < 0.02f){ fader.color = new Color (0, 0, 0, liTarget); //If the change player state flag is on, change players state to next logical place in the sequence if (bChangePlayerState){ bChangePlayerState = false; _NP.setPlayerState ((fadeState == FADE_STATE.FadeIn ? NetPlayer.PLAYER_STATE.RaceReady : NetPlayer.PLAYER_STATE.SceneChangeReady)); } fadeState = FADE_STATE.Stay; } //End if (lfDiff < 0.1f) else{ fader.color = new Color (0, 0, 0, Mathf.SmoothDamp (fader.color.a, (float)liTarget, ref refA, fFadeTime)); } }
} void Update () { if (me_do) { // Update is called once per frame switch (fadeState) { case (FADE_STATE.FADE_IN): currentTime += Time.deltaTime * 2; if (currentTime > fadeInTime) { currentTime -= fadeInTime; fadeState = FADE_STATE.IN; textColor.a = 1.0f; } else { textColor.a = currentTime / fadeInTime; } break; case (FADE_STATE.IN): currentTime += Time.deltaTime * 2; if (currentTime > inTime) { currentTime -= inTime; fadeState = FADE_STATE.FADE_OUT; textColor.a = 1.0f - currentTime / fadeOutTime; } else { textColor.a = 1.0f; } break; case (FADE_STATE.FADE_OUT): currentTime += Time.deltaTime * 2; if (currentTime > fadeOutTime) { currentTime -= fadeOutTime; fadeState = FADE_STATE.OUT; textColor.a = 0.0f; } else { textColor.a = 1.0f - currentTime / fadeOutTime; } break; case (FADE_STATE.OUT): currentTime += Time.deltaTime * 2; if (currentTime > outTime) { currentTime -= outTime; fadeState = FADE_STATE.FADE_IN; textColor.a = currentTime / fadeInTime; } else { textColor.a = 0.0f; } break; } CanvasMgr.instance.alert.GetComponent<Image>().color = textColor*0.8f; fade_time += Time.deltaTime; if (fade_time > 5.0) { CanvasMgr.instance.alert.SetActive(false); Destroy(this.gameObject); } } }
public void setFadeState(FADE_STATE state, bool pbChangePlayerState = true) { fadeState = state; bChangePlayerState = pbChangePlayerState; }
// Update is called once per frame void Update () { switch (fadeState) { case (FADE_STATE.FADE_IN): currentTime += Time.deltaTime * 2; if (currentTime > fadeInTime) { currentTime -= fadeInTime; fadeState = FADE_STATE.IN; textColor.a = 1.0f; } else { textColor.a = currentTime / fadeInTime; } break; case (FADE_STATE.IN): currentTime += Time.deltaTime * 2; if (currentTime > inTime) { currentTime -= inTime; fadeState = FADE_STATE.FADE_OUT; textColor.a = 1.0f - currentTime / fadeOutTime; } else { textColor.a = 1.0f; } break; case (FADE_STATE.FADE_OUT): currentTime += Time.deltaTime * 2; if (currentTime > fadeOutTime) { currentTime -= fadeOutTime; fadeState = FADE_STATE.OUT; textColor.a = 0.0f; } else { textColor.a = 1.0f - currentTime / fadeOutTime; } break; case (FADE_STATE.OUT): currentTime += Time.deltaTime * 2; if (currentTime > outTime) { currentTime -= outTime; fadeState = FADE_STATE.FADE_IN; textColor.a = currentTime / fadeInTime; } else { textColor.a = 0.0f; } break; } this.GetComponent<Text>().color = textColor; fade_time += Time.deltaTime; this.transform.position = new Vector3(this.transform.position.x, this.transform.position.y + fade_time/400, this.transform.position.z); if (fade_time>1.5) { Destroy(this.gameObject); } }
public void SetFadeState(FADE_STATE newState) { fadeState = newState; }
// Update is called once per frame void Update() { switch (fadeState) { case (FADE_STATE.FADE_IN): currentTime += Time.deltaTime; if (currentTime > fadeInTime) { currentTime -= fadeInTime; fadeState = FADE_STATE.IN; textColor.a = 1.0f; } else { textColor.a = currentTime / fadeInTime; } break; case (FADE_STATE.IN): currentTime += Time.deltaTime; if (currentTime > inTime) { currentTime -= inTime; fadeState = FADE_STATE.FADE_OUT; textColor.a = 1.0f - currentTime / fadeOutTime; } else { textColor.a = 1.0f; } break; case (FADE_STATE.FADE_OUT): currentTime += Time.deltaTime; if (currentTime > fadeOutTime) { currentTime -= fadeOutTime; fadeState = FADE_STATE.OUT; textColor.a = 0.0f; } else { textColor.a = 1.0f - currentTime / fadeOutTime; } break; case (FADE_STATE.OUT): currentTime += Time.deltaTime; if (currentTime > outTime) { currentTime -= outTime; fadeState = FADE_STATE.FADE_IN; textColor.a = currentTime / fadeInTime; } else { textColor.a = 0.0f; } break; } //this.guiText.color = textColor; }
// Update is called once per frame void Update() { waiting_current_time += Time.deltaTime; //待ち時間終了後処理 if (waiting_current_time > waitngTime) { //最初のみ待ち時間処理が必要なため if (!started_fade) { fadeState = FADE_STATE.FADE_IN; started_fade = true; } switch (fadeState) { case (FADE_STATE.FADE_IN): currentTime += Time.deltaTime; if (currentTime > fadeInTime) { currentTime -= fadeInTime; fadeState = FADE_STATE.IN; textColor.a = 1.0f; } else { textColor.a = currentTime / fadeInTime; } break; case (FADE_STATE.IN): currentTime += Time.deltaTime; if (currentTime > inTime) { currentTime -= inTime; fadeState = FADE_STATE.FADE_OUT; textColor.a = 1.0f - currentTime / fadeOutTime; } else { textColor.a = 1.0f; } break; case (FADE_STATE.FADE_OUT): currentTime += Time.deltaTime; if (currentTime > fadeOutTime) { currentTime -= fadeOutTime; fadeState = FADE_STATE.OUT; textColor.a = 0.0f; } else { textColor.a = 1.0f - currentTime / fadeOutTime; } break; case (FADE_STATE.OUT): currentTime += Time.deltaTime; if (currentTime > outTime) { currentTime -= outTime; fadeState = FADE_STATE.FADE_IN; textColor.a = currentTime / fadeInTime; } else { textColor.a = 0.0f; fadeState = FADE_STATE.END; } break; } preface.color = textColor; } }