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 NikkySan · Apr 25, 2014 at 10:35 AM · triggerontriggerenteroncollisionentergameover

Trying to create a gameover trigger with enemy.

I'm trying to make a gameover trigger when an enemy touches me, but I'm having problems with the code. The errors I have are:

error CS1525: Unexpected symbol ` whatHitMe' error CS8025: Parsing error

Here's my coding. I have two scripts for the game and the gameover trigger:

 using UnityEngine;
 using System.Collections;
 
 public class SpaceGameManager : MonoBehaviour {
 
     private string gameState;
     public GUIStyle myTextStyle;
 
     void Awake()
     {
         gameState = "playing";
     }
 
     public void SetGameOver()
     {
         Time.timeScale = 0.0f; // pause game
         gameState = "lost";
     }
 
     void OnGUI()
     {
         
         if (gameState == "lost")
         {
             GUILayout.Label("You Lost!", myTextStyle);
             if (GUILayout.Button("Try Again"))
             {
                 Application.LoadLevel(Application.loadedLevel);    
             }
         }
 
     }

 using UnityEngine;
 using System.Collections;
 
 public class SpaceGameoverTrigger : MonoBehaviour {
 
     SpaceGameManager SGM;
 
     // Use this for initialization
     void Start () {
 
      OnCollisionEnter(Collision whatHitMe)
         {
             if(whatHitMe.gameObject.tag == "Enemy")
             {
                 ccs.FoundCoin();
                 Destroy(whatHitMe.gameObject);
             }
         }
 
         SGM = whatHitMe.gameObject.tag == "Enemy";
     
     }
     void OnTriggerEnter()
     {
         SGM.SetGameOver();    
     }
     // Update is called once per frame
     void Update () {
     
     }
 }

Thanks in advance!

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 wijesijp · Apr 25, 2014 at 11:17 AM

your OnCollisionEnter function is inside start function. Move it out.

Comment
Add comment · Show 5 · 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 NikkySan · Apr 25, 2014 at 11:35 AM 0
Share

Done, but now I'm getting an error saying whatHit$$anonymous$$e does not exist in the current context.

 using UnityEngine;
 using System.Collections;
 
 public class SpaceGameoverTrigger : $$anonymous$$onoBehaviour {
 
     SpaceGame$$anonymous$$anager SG$$anonymous$$;
 
     void OnCollisionEnter(Collision whatHit$$anonymous$$e)
     {
         if(whatHit$$anonymous$$e.gameObject.tag == "Enemy")
         {
             Destroy(whatHit$$anonymous$$e.gameObject);
         }
     }
 
     // Use this for initialization
     void Start () {
 
         SG$$anonymous$$ = whatHit$$anonymous$$e.gameObject.tag == "Enemy";
     
     }
     void OnTriggerEnter()
     {
         SG$$anonymous$$.SetGameOver();    
     }
     // Update is called once per frame
     void Update () {
     
     }
 }

It's probably something simple that I'm missing but I can't figure this out.

avatar image wijesijp · Apr 25, 2014 at 11:49 AM 0
Share

you still have SG$$anonymous$$ = whatHit$$anonymous$$e.gameObject.tag == "Enemy";

inside the Start function. It should be inside the OnCollisionEnter function

avatar image NikkySan · Apr 25, 2014 at 12:19 PM 0
Share

Okay, now it's saying it cannot implicitly convert type bool' to SpaceGame$$anonymous$$anager'.

avatar image wijesijp · Apr 25, 2014 at 12:43 PM 0
Share

whatHit$$anonymous$$e.gameObject.tag == "Enemy"; return true or false

so SpaceGame$$anonymous$$anager type SG$$anonymous$$ can't be equal to that. I guess what needs to happen is ...

 void OnCollisionEnter(Collision whatHit$$anonymous$$e)
     {
        if(whatHit$$anonymous$$e.gameObject.tag == "Enemy")
        {
          // do some other action with SG$$anonymous$$ 
          Destroy(whatHit$$anonymous$$e.gameObject);
        }
     }
avatar image NikkySan · Apr 27, 2014 at 02:23 AM 0
Share

I can't think of another action to use it with. What would you suggest?

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

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

Related Questions

Colliding two GameObjects 1 Answer

OnEnterTrigger wont work 2 Answers

OnTriggerEnter with exact spot of collision 2 Answers

On Trigger Enter, Collide with object, specific collision 1 Answer

Character collider falls away unless "isTrigger" selected 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