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 DJ_Soru · Jul 07, 2012 at 10:07 PM · guiracingcheckpoint

About "How do I make laps in a racing game?"

I am working on a racing game and I used the player and checkpoint scripts provided in the answer "save" made, but now I want to see the checkpoint counter on my GUI going up everytime I go through a checkpoint and what I managed to code created a CP and Lap counter on a GUI label, but it won't go up as I pass through the checkpoints.

The Player code is this

 var checkPointArray : Transform[]; //Checkpoint GameObjects stored as an array
 private static public var currentCheckpoint : int = 0; //Current checkpoint
 private static public var currentLap : int = 0; //Current lap
 private static public var startPos : Vector3; //Starting position
 private var moveMultiplier : int = 8; //Multiplies the Input.GetAxis movement of our player
 
 function Start () {
     //Set a simple visual aid for the Checkpoints
     for (objAlpha in checkPointArray) {
        objAlpha.renderer.material.color.a = 0.2;
     }
     checkPointArray[0].renderer.material.color.a = 0.8;
 
     //Store the starting position of the player
     startPos = transform.position;
 }
 
 function FixedUpdate () {
     //Movement for the player (Standard Input: Arrow Keys/W,A,S,D)
     rigidbody.AddForce(Input.GetAxis("Horizontal")*moveMultiplier, 0, Input.GetAxis("Vertical")*moveMultiplier);
 }

The checkpoint code (slightly modified in the end) is this

 static var playerTransform : Transform; //Store the player transform
 
 function Start () {
     playerTransform = gameObject.Find("Sphere (Player)").transform; //Set the player transform
 }
 
 function OnTriggerEnter (other : Collider) {
     //Is it the Player who enters the collider?
     if (!other.CompareTag("Player")) 
        return; //If it's not the player dont continue
 
     //Is this transform equal to the transform of checkpointArrays[currentCheckpoint]?
     if (transform==playerTransform.GetComponent(Player).checkPointArray[Player.currentCheckpoint].transform) {
        //Check so we dont exceed our checkpoint quantity
        if (Player.currentCheckpoint+1<playerTransform.GetComponent(Player).checkPointArray.length) {
          //Add to currentLap if currentCheckpoint is 0
          if(Player.currentCheckpoint==0)
           Player.currentLap++;
          Player.currentCheckpoint++;
        } else {
          //If we dont have any Checkpoints left, go back to 0
          Player.currentCheckpoint=0;
        }
        visualAid(); //Run a coroutine to update the visual aid of our Checkpoints
        //Update the 3dtext
        Camera.main.GetComponent("CPLap").text = "Checkpoint: "+(Player.currentCheckpoint)+" Lap: "+(Player.currentLap);
     }
 }
 
 function visualAid () {
     //Set a simple visual aid for the Checkpoints
     for (objAlpha in playerTransform.GetComponent(Player).checkPointArray) {
        objAlpha.renderer.material.color.a = 0.2;
     }
     playerTransform.GetComponent(Player).checkPointArray[Player.currentCheckpoint].renderer.material.color.a = 0.8;
 }

The only change I made was on the CP 26th code line, to try and get it to find the GUI.label working as the counter, but it fails to work.

Here is the CPLap script I made:

 #pragma strict
 
 function OnGUI () {
     GUI.Label (Rect (10, 10, 100, 400), "Checkpoint: 0 Lap: 0");
 }

Sadly, it's not working and I have to deliver the project on Friday and I can't finish this part, and I cannot buy a racing script pack like those professional ones. The project is for the course I'm taking.

I thank in advance whoever helps me with this, as all the people I know who code are unavailable and my programing mentor is busy all week, making this very urgent.

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
1

Answer by GluedBrain · May 05, 2013 at 10:04 AM

Laps and checkpoint system

Check this out

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 lyzard · Jul 10, 2012 at 11:20 AM

wait, if you do

 GUI.Label (Rect (10, 10, 100, 400), "Checkpoint: 0 Lap: 0");

then it should be obvious that the lap does not change, try something like:

 GUI.Label (Rect (10, 10, 100, 400), "Checkpoint: "+ Player.currentCheckpoint+" Lap: "+Player.currentLap);
Comment
Add comment · 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 DJ_Soru · Jul 17, 2012 at 07:37 AM 0
Share

It didn't work, but don't worry I talked to a programmer and he solved it with me thanks to the debug mode.

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

7 People are following this question.

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

Related Questions

Ranking System in Racing Game 1 Answer

How to set high score (best time) with playerprefs 1 Answer

Star graphic after finishing a level 0 Answers

Unity Main Menu 1 Answer

Race checkpoint system small help please :) 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