Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 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 tnecniv · May 24, 2011 at 11:16 AM · collisionglobalbce0005globalvariables

BCE 0005 unknown identifier error when accessing global variable.

I have a problem here, i am trying to make a life display with 3 images. when the character touches a trap it has a life deducted. i have declared the LIVES to be global but when i try to access it using my fpswalker it come with error bce0005 unknown identifier

 var health1: Texture2D;// 1 life left
 var health2: Texture2D;//2 life left
 var health3: Texture2D; //full  health
 
 
 static var LIVES =3; // Global variable(static) - accessible by any script
 
 function Update () {
     print("Lives: "+ LIVES + "Hits: "+HITS); 
     switch(LIVES){
         case 3:
             guiTexture.texture = health3;
         break;
         case 2:
             guiTexture.texture = health2;
         break;
         case 1:
             guiTexture.texture = health1;
         break;
         case 0:
             //gameover script
         break;
     }
     
 }

Below is my fpswalker script.

 var speed = 6.0;
 var jumpSpeed = 8.0;
 var gravity = 20.0;
 
 private var moveDirection = Vector3.zero;
 private var grounded : boolean = false;
 
 function OnTriggerEnter(hit: Collider){ //hit is a controllercolliderhit type
     if(hit.gameObject.tag == "TrapPoison"){
         HealthCtrl1.LIVES -=1; 
 // this is the part getting error when trying to run
     }
 }
 function FixedUpdate() {
     
     if (grounded) {
         // We are grounded, so recalculate movedirection directly from axes
         moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
         moveDirection = transform.TransformDirection(moveDirection);
         moveDirection *= speed;
         
         if (Input.GetButton ("Jump")) {
             moveDirection.y = jumpSpeed;
         }
     }
     // Apply gravity
     moveDirection.y -= gravity * Time.deltaTime;
     
     // Move the controller
     var controller : CharacterController = GetComponent(CharacterController);
     var flags = controller.Move(moveDirection * Time.deltaTime);
     grounded = (flags & CollisionFlags.CollidedBelow) != 0;
 }


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

5 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by Bunny83 · May 24, 2011 at 12:50 PM

Àre you sure that your class is called HealthCtrl1? What's the exact error? It normally prints the unknown identifier's name.

Oh and btw. static != global. static means the variable belong to the class instead of a class instance.

edit

If you would read the error it says: "BCE0005: Unknown identifier: 'HITS'."
Why don't you read the error completely or post at least the whole error. It says clearly that the unknown identifier is HITS!

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
-1

Answer by tnecniv · May 24, 2011 at 04:27 PM

,my javascript is created and named as HealthCtrl1. is this the class name? by using static it means i can access with other script in the same project correct?

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 Bunny83 · May 24, 2011 at 10:35 PM 0
Share

Don't post comments as answers. We have a comment-function below each answer or question. I've updated my answer. Next time read the error carefully before you just copy a part of it into a question here.

avatar image
-1

Answer by tnecniv · May 24, 2011 at 04:27 PM

my javascript is created and named as HealthCtrl1. is this the class name? by using static it means i can access with other script in the same project correct?

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
-1

Answer by tnecniv · May 25, 2011 at 01:44 AM

This is the error message i got: Assets/Standard Assets/Scripts/FPSWalker 2.js(10,17): BCE0005: Unknown identifier: 'HealthCtrl1'.

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 Bunny83 · May 25, 2011 at 02:01 PM 0
Share

Is it really so hard to press the comment button?
You obviously named your HealthCtrl1 script not HealthCtrl1.js. Watchout! in Unity you must not include the extention. In Unity your script is just called "HealthCtrl1". Unity doesn't show the extention ".js". If you named your script HealthCtrl1.js in Unity the read name would be HealthCtrl1.js.js and that's not a valid classname. Also the filename/classname is "case sensitive". Healthctrl1 is not the same as HealthCtrl1

avatar image
0

Answer by tnecniv · May 25, 2011 at 03:35 PM

i have pressed on the comment button. the naming convention is correct.

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

2 People are following this question.

avatar image avatar image

Related Questions

Global variables - static keyword ? UnityScript? javascript? 1 Answer

Add seconds to timer countdown. 3 Answers

PlayerPrefs are global? 3 Answers

Two player collision ? 1 Answer

Global Variables with Prefabs/ Self-Naming Variables 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