• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Major-Idea · Aug 03, 2012 at 12:14 PM · delayrespawnfadedeath

Fade on death!

Hi all,

I have a 1st person controller that dies and respawns correctly, but its something very raw - Player hits death object and immediately respawns.

I need it to be smooth and have the screen turn black when he dies, wait for a couple of seconds and the fade into view.

I managed to set the delay. Any help with the fading would me most appreciated.

(I cant access the wiki to get a fade script in there. Says the community has been hacked.)

This is what I have:

function OnTriggerEnter (theCollider : Collider) { if (theCollider.tag == "KillerPatrol") { yield WaitForSeconds(2.0); transform.position = Vector3(42.66871, -103.2632, -873.2073); }

Thanks!

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by Sundar · Aug 03, 2012 at 04:04 PM

Got this from wiki( I guess...) the author uses guiText to show fade in and out. Replace GuiText with your gameobject. Hope this help.

///////////////////////////////////////////// ///Zapp's Uber fading timer script/////////// ///////////////////////////////////////////// ///v3.141//////////////////////////////////// ///////////////////////////////////////////// ///Brought to you by the letter Z..////////// ///////////////////////////////////////////// ///And a grant from the MyWallet Foundation// ///////////////////////////////////////////// using UnityEngine; using System.Collections;

public class Timer : MonoBehaviour {

public int minutes; public int seconds; public int fraction;

public float startTime; float FadeStartTime; float FadeTime;

public float playTime; public float FadeSpeed;

public Color TimerColor = new Color(1,1,1,0);

bool go = false; public bool fadeIn = false; public bool fadeOut = false;

 void Start ()
 {
     if( !guiText )
     {
         Debug.Log("This timer requires a GUIText component");
         enabled = false;
         return;
     }
    
     if(FadeSpeed == 0)
     {
         FadeSpeed = 1;
     }
     guiText.material.color = TimerColor;
 }
   
   
 void Update ()
 {
    
     //This is for testing, make sure to remove it after your done.
     if(Input.GetMouseButtonDown(0))
     {
         if(!go)
         {
             StartTimer();
         }
         Fade();
     }
            
     if(go)
     {
         playTime = Time.time - startTime;
         minutes = (int)(playTime/60f );
         seconds = (int)(playTime % 60f);
         fraction =  (int)((playTime *10) %10);
         guiText.text = string.Format("{0}\'{1}\"{2}", minutes, seconds, fraction);
     }
    
     if(fadeIn)
     {
         FadeIn();
     }
    
     if(fadeOut)
     {
         FadeOut();
     }
    
 }
   
 public void StartTimer()
 {
     startTime = Time.time;
     go = true;
     FadeStartTime = Time.time;
     fadeIn = true;
 }
   
 public void StopTimer()
 {
     go = false;
 }
   
 public void Fade()
 {
     if( !fadeIn && !fadeOut )
     {
         FadeStartTime = Time.time;
         if(TimerColor.a == 1)
         {
             Debug.Log(TimerColor.a);
             fadeOut = true;
         }
         else
         {
             guiText.enabled = true;
             fadeIn = true;
         }
     }
     else
     {
    
         FadeStartTime = Time.time - ((1 - FadeTime) / FadeSpeed);
         fadeIn = !fadeIn;
         fadeOut = !fadeOut;
        
     }
 }
   
 void FadeIn()
 {
     FadeTime = (Time.time - FadeStartTime) * FadeSpeed;
     TimerColor.a = Mathf.SmoothStep(0, 1, FadeTime );
     guiText.material.color = TimerColor;
     if(TimerColor.a == 1)
     {
         fadeIn = false;
     }
 }
   
 void FadeOut()
 {
     FadeTime = (Time.time - FadeStartTime) * FadeSpeed;
     TimerColor.a = Mathf.SmoothStep(1, 0, FadeTime );
     guiText.material.color = TimerColor;
     if(TimerColor.a == 0)
     {
         fadeOut = false;
     }
 }

}


Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

8 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Wait and fading script 1 Answer

Make Deaths end game 1 Answer

Help with player death/respawn coroutine? 1 Answer

How do I make my character die when hitting the terrain? 2 Answers

2D project - player respawn delay problem 0 Answers

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges