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 xniinja · Jun 12, 2012 at 08:34 PM · instantiateprefabvariablespawnassign

How to force a variable to prefab

Hello, I have an AI ship that I need to spawn from a prefab. The problem is the ship needs the transform of the ship that it needs to attack. I have tried to assign the transform directly to the variable in the inspector but when I try to make that variable stay in the prefab it doesn't. The prefab simply does not have that variable in it. So what I have tried to do is assign it through code by putting it on the script the spaceships are spawned with then assigning it when the spaceship is spawned. Here is an example:

 var prefab : GameObject; //this is the spaceship spawned
 var spawn : boolean = true; //this tells if the spaceship should be spawned
 var enemy : Transform; //this is the transform of the enemy
 
 function Update () {
 
     if(spawn)//if we can spawn something...
     {
     Spawn(); //..go here
     }
     //This makes the spawn point move
     transform.position.x = transform.position.x + 5 * Time.deltaTime;
     
     transform.rotation.y = transform.position.y + 5 * Time.deltaTime;
     
 }
 function Spawn()
 {
     
     Instantiate(prefab, transform.position, transform.rotation);//Instantiate the prefab
     
     spawn = false; //make the spawning stop
     prefab.GetComponent(CollisionAvoidance).enemy = enemy;//THIS DOESN'T WORK!!! WHY?
     
     
     yield WaitForSeconds(10);//wait ten seconds
     
     spawn = true;//spawn another enemy
     
 }

If you could please tell me why the variable can not be assigned that would be great, or if you could tell how to assign the variable to the prefab that would be great too.

Thanks in advance,

Grant

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 Owen-Reynolds · Jun 12, 2012 at 08:57 PM

Internet search for "Unity Instantiate" and look at the Unity manual page (2nd one listed, for me) about Instantiating Prefabs At Runtime. It has an example of how to spawn a rocket and a wreck, and then reach into their scripts.

In general, it will look like myClone.GetComponent(scriptName).varName=

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

4 People are following this question.

avatar image avatar image avatar image avatar image

Related Questions

Error: Instantiated Enemies don't get hit 2 Answers

Failure to assign a prefab to a variable 1 Answer

Any ideas on a simple AI script that doesn't use any drag/drop variables 1 Answer

[Solved]Instantiating prefab from a script and destroy it from another one 2 Answers

Spawning unique prefabs at different transform posititions 0 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