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 Otis · Apr 07, 2013 at 11:48 AM · arraybooleanrpgfor loop

TurnBased RPG Help, Checking booleans with an array.

Hello, I'm trying to make an Turn based RPG battle system using js and I need some help with checking an array. I have an array called "E" for Enemies and its of the type Gameobject and I just throw the enemy prefab into it in the inspector. Now the every enemy has a script on it called "Alive" witch holds an boolean called "alive" and in the start function "alive" is set to true meaning that enemy has been spawned. I have that part down but now I want to have an array check every enemy in the "E" array to see if its boolean "alive" is true. I get no compiler errors but the code does not work. Any help would be much appreciated, Here is my code.

 //ArrayCheck.js
 
 #pragma strict
 var E : GameObject[]; // Array that holds enemy prefabs
 var sp : Transform; // Spawn point 
 
 
 function Start () {
     Instantiate(E[0], sp.transform.position, sp.transform.rotation); // Here I only Instantiate the first Enemy prefab in the E Array
     
     // Here is where I want to try to access the boolean of the gameobject to see if its true or false
     
     for (var i = 0; i<E.Length; i++){
     
         if(E[i].GetComponent(Alive).alive == true){
             Debug.Log("Im Alive!");
             
         }
     }

}

 //Alive.js
 //This is the script that is attached to all enemies prefabs
 
 #pragma strict
 
 var alive:boolean;
 
 function Start () {
     alive = true;
 }

 
Comment
Add comment · Show 2
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 Chronos-L · Apr 07, 2013 at 11:59 AM 0
Share

I don't think GetComponent() will work with prefabs.

avatar image AlucardJay · Apr 07, 2013 at 01:03 PM 0
Share

When you Instantiate, you are creating a copy. These copies don't exist in your E array.

So if all your E objects already exist in the scene, you don't need to instantiate them, just simply run the for-loop and activate/deactivate them.

If you are instantiating your E objects, then you need to store a reference to those instantiated objects in another list. Then for-loop through the instantiated array to set alive true/false.

You should really do the first method (have all your objects already in the scene, just deactivated), this is called pooling.

If you are instantiating as you only need some of the objects, then store them in a Generic List rather than an array. And for-loop through the list, not the E array.

0 Replies

· Add your reply
  • Sort: 

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

12 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

Related Questions

question about array or list of boolean 1 Answer

Public Array with a class not showing in Inspcetor 1 Answer

How can I do a foreach loop for an array of booleans? 1 Answer

Collecting Array items in order 1 Answer

How can I store game data outside of scripts.(e.g Total list of inventory items) 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