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 TheS1 · Oct 12, 2018 at 07:57 PM · function call

Start function is getting called twiced

Im currently working on a room generation system and i have a script which adds the boxcollidor. It looks like this:

          void Start(){
             BoxCollider2D bottomLeft = 
             setSettings(bottomLeft, verticalSize, minimumSize, -verticalOffsetX, -verticalOffsetY);
             
         }
         void setSettings(BoxCollider2D collidor, float xsize, float ysize, float xoffset, float yoffset){
             collidor.size = new Vector2(xsize, ysize);
             collidor.offset = new Vector2(xoffset, yoffset);
         }


This script is attached to a Room gameobject. The room gameobject is getting instantiated through a level generation script which has multiple rooms in it. So basically i do Instantiate(rooms[i], location, rotation) in a for loop in the level generation script. When i run the game and look at the room it now has every boxcollidor i assigned twice(there is only one object). I have no idea why this happens. It seems like the start function of the boxcollidor is getting called twice but i dont know why.

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 Bunny83 · Oct 12, 2018 at 10:13 PM 0
Share

Please don't claim wild assumptions which can be easily verified by placing a Debug.Log inside Start. Are you sure that your prefab doesn't already contain a BoxCollider?


Start is only called once by Unity. It could be that you somehow call it manually again somewhere?


Try adding this to your Start method:

 Debug.Log("Start of " + gameObject.name, gameObject);

Each debug log entry in the console also has a stacktrace which might help to figure out where the other calls might come from (if it's actually called twice).


Your code in your question is missing your "BoxCollider creation" so it's pretty pointless

avatar image TheS1 Bunny83 · Oct 13, 2018 at 08:23 AM 0
Share

Ok I solved it. I had the room i was creating in the scene so it was creating its own boxcollidors and Instantiate was creating a copy of the object(with the boxcollidors). I forgot that instantiate doesnt create a new object. Oops

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

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

Related Questions

Call a function on a script attached to an object 1 Answer

(WebGL) Activate Unity Functions with HTML/Javascript 1 Answer

Function being called on multiple objects when just one is clicked 1 Answer

Trying to use a derived Function with C# 1 Answer

same script for two scenes, how can i call a function for particular scene with out affecting that function for another scene?? 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