Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • 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 lasha_an · Aug 04, 2012 at 05:48 PM · guitextpointinvisiblevisible

how GUIText get visible?

Hi guys, i'm creating racing game, so i created Lap Time Point, so i want when my car hit tiggered collider show the GUIText, i tried like this. sry for my bad english

 var points = 0;
 var targetGuiText : GUIText;
 var Renderer;
 
 function OnTriggerEnter(hit : Collider)
 {
  if(hit.gameObject.tag == "FinalLap")
  {
  targetGuiText.enabled = true;
  Finish();
  }
 }
 
 
 function Update()
 {
  targetGuiText.enabled = false;
  targetGuiText.text = ("I finished in: " +points);
  print("I finished in: " +points); 
 }
 function Finish()
 {
  if(Time.time <= 100) //if you make it before 90 seconds
  {
   points += 5; //add points
  }
  if(Time.time <= 50) //if you made it before 50 seconds
  {
   points += 10; //add points
  } 
 }
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

2 Replies

· Add your reply
  • Sort: 
avatar image
0

Answer by RodrigoSeVeN · Aug 04, 2012 at 07:19 PM

The script seems to be in order, but you have one line that is not working as intended.

On update:

targetGuiText.enabled = false;

This line is repeating every frame, and when you detect the collision, this line won't let it become visible. Try to put this line inside function Start(){} so it becomes invisible on the start and can become visible again when the collision is detected at the end.

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
avatar image
0

Answer by Akill · Aug 04, 2012 at 07:12 PM

Check this : http://docs.unity3d.com/Documentation/ScriptReference/Time-time.html

You want to keep track of time yourself, to do this is quite easy. Each time Update is called within Unity, the Time.deltaTime variable gets set, which is the time between each frame(in seconds).

So, if you keep a variable which will increment based on this value every frame, you can accurately test how long something has taken etc.

    var points = 0;
 var targetGuiText : GUIText;
 var Renderer;
 var raceTimer  = 0;
 
 function OnTriggerEnter(hit : Collider)
 {
  if(hit.gameObject.tag == &quot;FinalLap&quot;)
  {
  targetGuiText.enabled = true;
  Finish();
  }
 }
 
 
 function Update()
 {
 raceTimer += Time.deltaTime; //keep adding the time each frame
  targetGuiText.enabled = false;
  targetGuiText.text = (&quot;I finished in: &quot; +points);
  print(&quot;I finished in: &quot; +points); 
 }
 function Finish()
 {
  if(raceTimer  &lt;= 100) //if you make it before 90 seconds
  {
   points += 5; //add points
  }
  if(raceTimer  &lt;= 50) //if you made it before 50 seconds
  {
   points += 10; //add points
  } 
 }

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.

Follow this Question

Answers Answers and Comments

9 People are following this question.

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

Related Questions

Invisible objects renderer disable? How to stop this? 0 Answers

Mouse over make object Visible 2 Answers

get object invisible for couple seconds and get visible again 1 Answer

Converting C# to JS: rendering a mesh 1 Answer

Simple Point system 3 Answers


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