• 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
Question by Rider · Oct 06, 2012 at 05:37 PM · triggermaterialtimercountdown

Enable/Disable script with timer

hiya,

Do you have some time to help me on this, please? I have a particle system shooting at a sphere which I want to light up when particles collide.

Right now I have two scripts: 1 - one called "Color Change", that just swaps the sphere's material. 2 - and another called "Trigger" that is supposed to listen for particles that collide, enable "Color Change" during some time, and then disabling it.

I can't get it to disable the "Color Change" script. :/

1 - "Color Change" :

 var material1 : Material;
 var material2 : Material;
 
 
 function Update () {
 
     renderer.material.Lerp (material1, material2, 1);
      
  }



2 - "Trigger" :

 private var startTime;
 
 private var restSeconds : int;
 
 private var roundedRestSeconds : int;
 
 private var displaySeconds : int;
 
 private var displayMinutes : int;
 
 
 
 var countDownSeconds : float;
 
 
 
 function Start () {
 
 
 
 GetComponent("Color Change").enabled = false;
 
 
 
 }
 
 
 
 
 
 function Awake() 
 
 {    
 
     Reset();
 
 }
 
 
 
 function Reset()
 
 {
 
     startTime = Time.time;
 
 }
 
 
 
 function OnParticleCollision (other : GameObject){
 
    
 
    Reset();
 
    GetComponent("Color Change").enabled = true;
 
    var guiTime = Time.time - startTime;
 
 
 
     restSeconds = countDownSeconds - (guiTime);
 
 
 
         if (restSeconds == 0) {
 
         print ("Time is Over");
 
         GetComponent("Color Change").enabled = false;
 
           }
 
           
 
      }
 
 
 
 
 
 function OnGUI () {
   
     //display the timer
 
     roundedRestSeconds = Mathf.CeilToInt(restSeconds);
 
     displaySeconds = roundedRestSeconds % 60;
 
     displayMinutes = roundedRestSeconds / 60; 
 
 
 
     text = String.Format ("{0:00}:{1:00}", displayMinutes, displaySeconds); 
 
     GUI.Label (Rect (400, 25, 100, 30), text);
 
 }


p.s. should I make just one single script in which when the timer reaches 0, the material is just swapped back ? I don't want to use Mathf.Pingpong, because the sphere should just only light up once for every particle collided.

Thanks!

Comment

People who like this

0 Show 0
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

  • Sort: 
avatar image

Answer by Alex Rider · Oct 07, 2012 at 01:46 AM

bump ?

Comment

People who like this

0 Show 1 · 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
avatar image AlucardJay · Oct 07, 2012 at 01:46 AM 0
Share

Hi There.

Please don't post comments as answers. Post comments by clicking the [add new comment] button, a window then open for you to type in. Answer fields are for answers only, as this is a knowledge base.

You can convert this answer to a comment (or just edit your original question), you'll also get a better chance of getting an actual answer if the main list shows none or one answer in blue =]

Unity Answers is in Read-Only mode

Unity Answers content will be migrated to a new Community platform and we are aiming to launch a public beta on June 13. Please note, Unity Answers is now in read-only so we can prepare for the final data migration.

For more information and updates, please read our full announcement thread in the Unity Forum.

Follow this Question

Answers Answers and Comments

11 People are following this question.

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

Related Questions

script countdown 2 Answers

End Game when hit's water 2 Answers

How to stop a Countdown Timer? 1 Answer

Start timer with trigger 1 Answer

Change main Camera to another camera with a Trigger then back with a Timer. 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges