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 Gigabeard · May 02, 2014 at 03:18 PM · getcomponentleveltransitionracing

Win Condition of Racing Level

Hello There

Im making a racing game and i am currently trying to get the win conditions of the level finished so you can progress to the next race, the idea being that when the player (tagged with player) collides with a trigger checkpoint it accesses the script called "lapcounter" attached to the player and checks the 2 conditions in that script "lapcount" and "tokencount" and if lapcount = >4 and tokencount >=3 when the player hits the checkpoint it will progress to the next level/menu

I think i might be correct with the if statement checking to see if the lapcount and tokencount conditions have been met but when i try and build the code i get the error "The name lapcount does not exist in this current context"

Am i close with this idea and it needs a little tweaking or am i completely barking up the wrong tree?

(of note i am more of a designer than a programmer so go easy on me xD)

public class WinLevel1 : MonoBehaviour {

 // Use this for initialization
 void Start () 
 {

 }
 
 // Update is called once per frame
 void Update () {
     
 }
 
 void OnCollisionEnter(Collision Col){
     if (Col.gameObject.tag == "Player")
     {
         GetComponent("lapcounter");

         if(lapcount >= 4 && tokencount >= 3)
         {
             Application.LoadLevel("Track 3");
         }
     }
 }
 

}

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
Best Answer

Answer by robertbu · May 02, 2014 at 03:25 PM

You are not barking up the wrong tree, but you need to do a bit more research on how stuff fits together. First, you want to set 'isTrigger' on the collider and use OnTriggerEnter(). You don't want the car to crash into your checkpoint. Second never use the string version of GetComponent() if you can help it. And you have to use the reference it gives back to access the component. I'm assuming that 'LapCounter' is a component on the player object, and that 'lapcount' and 'tokencount' are public variables of the LapCounter class. If so you can do something like:

 void OnTriggerEnter(Collider col){
     if (col.tag == "Player")
     {
        LapCounter lc = col.GetComponent<LapCounter>();
 
        if(lc.lapcount >= 4 && lc.tokencount >= 3)
        {
          Application.LoadLevel("Track 3");
        }
     }
 }

Note that I first use GetComponent() to get a reference to the LapCount component. Then I used that reference to get access to the specific 'lapcout' and 'tokencount' in that component.

Comment
Add comment · Show 3 · 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 Gigabeard · May 02, 2014 at 03:43 PM 0
Share

Thanks for the help so quickly, good to know i wasnt barking up the wrong tree :D

the actual name of the component is "Lapcounter" case sensitive So i guess i would just change both of the "LapCounter" in line 4 to match then drag this script onto the checkpoint?

Which is also set to Is Trigger now

avatar image robertbu · May 02, 2014 at 04:12 PM 0
Share

Yep. Just change in both places and you should be good to go.

avatar image Gigabeard · May 02, 2014 at 04:12 PM 0
Share

YUP There we go, bit of fiddling with the names and number counts and its fully working, much appreciated dude :D

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

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

Related Questions

What's the best way Unity Free users can disguise our level transitions? 1 Answer

getting a variable from another script problem 1 Answer

Difficulties in transfering data between levels 0 Answers

An easy way to add level transitions? 1 Answer

Level transition 2d runner game mobile 2 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