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 BaldiWonKenobi · Jul 29, 2014 at 07:58 PM · c#collisiongamescorenoob

Most efficient way to get scores

Ok so here is the scenario... I am creating a game where you throw bags at a board. If the bags land on the board you get a score. If they land on the board but fall off or are knocked off then the score goes down. The area I need help is in the scoring. What is the easiest way to accomplish this? I am using prefabs for the bags if that makes any difference. I am not new to code but I am new to C# and unity.... soooooo yea any help you could provide would be awesome and very appreciated.

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 ShadoX · Jul 29, 2014 at 08:11 PM

The easiest way would probably to just have a trigger on the board and another below it. (in which case the bags would have to have a rigidBody attached to them)

And on those triggers just use something like

http://docs.unity3d.com/ScriptReference/Collider.OnTriggerEnter.html

to increase and decrease the score when a bag hits the trigger. (just make sure that it doesn't keep increasing / decreasing the score over and over again)

Comment
Add comment · Show 2 · 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 BaldiWonKenobi · Jul 30, 2014 at 01:19 AM 0
Share

i did that using void OnTriggerEnter(Collider col){ //otherObject.GetComponent().canScore = false; otherObject.GetComponent ().canScore = false; bool hit = otherObject.GetComponent().canScore; if (col.gameObject.tag == "bagClone" && hit == false){ int currentScore = int.Parse (score.GetComponent ().text) + 1;

             print (otherObject.GetComponent<bagDetect>().canScore);
                 score.GetComponent<GUIText> ().text = currentScore.ToString ();
                 otherObject.GetComponent<bagDetect>().canScore = true;
             print (otherObject.GetComponent<bagDetect>().canScore);
         }

and it did not work... thoughts??

avatar image BaldiWonKenobi · Jul 30, 2014 at 02:53 AM 0
Share

also tried

 public GameObject score; //reference to the ScoreText gameobject, set in editor
     public GameObject otherObject;
 
     void OnTriggerEnter(Collider  col) {
         bool hit = otherObject.GetComponent<bagDetect>().canScore;
         print (hit);
         if (col.gameObject.tag == "bagClone") {
             otherObject.GetComponent<bagDetect> ().canScore = false;
         
             if (col.gameObject.tag == "bagClone" && hit == false) {
                     otherObject.GetComponent<bagDetect> ().canScore = true;
                     int currentScore = int.Parse (score.GetComponent<GUIText> ().text) + 1; //add 1 to the score
                     score.GetComponent<GUIText> ().text = currentScore.ToString ();
                 
                     print (hit);
             }
             //otherObject.GetComponent<bagDetect> ().canScore = false;
         }

and it does not work either... the score is still incremented by more than one sometimes...

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

3 People are following this question.

avatar image avatar image avatar image

Related Questions

Scoring System 1 Answer

Trying to get this coin system to work to no avail 1 Answer

Collider just for Tag (2D) (C#) 1 Answer

Multiple scores from collisions how do I stop after one collsion 3 Answers

Distribute terrain in zones 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