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 rsltnyldzz · Feb 09, 2019 at 11:21 PM · 2d game2d-platformer2d-physics

Unity crashes

 Collider2D[] colliders = Physics2D.OverlapCircleAll(_enemy.transform.position, 3f, LayerMask.GetMask("Enemy"));
         foreach(Collider2D nearbyObject in colliders)
         {
             Vector2 direction = (nearbyObject.transform.position - _enemy.transform.position);
             Vector2 directionNormal = direction.normalized; ;
             Rigidbody2D rb = nearbyObject.GetComponent<Rigidbody2D>();
             if (rb != null)
                 Debug.LogError("RB found");
             rb.AddForce(30f*directionNormal, ForceMode2D.Impulse);
 
             Enemy nearEnemy = rb.GetComponent<Enemy>();
             nearEnemy.DamageEnemy(40f);
 
 
         }

First off all, I'm finding the near enemy object colliders with Physics2D.OverlapCircleAll function and I can access their rigidbodies with their colliders and add force to them successfully. But when I'm trying to access them as enemies and damage them with my DamageEnemy function which only changes enemies' current health, Unity is crashing and closing by itself. I don't know what I'm doing wrong. Please help me.

Comment
Add comment · Show 5
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 xxmariofer · Feb 09, 2019 at 11:34 PM 0
Share

maybe it is colliding with a lot of objects? can you put a try catch in the enemy damage eney line? associate visual studio with unity editor in the nearenemy line for making sure it is finding the reference.

avatar image rsltnyldzz xxmariofer · Feb 10, 2019 at 10:02 AM 0
Share

It does collide with a lot of object of course but I'm using a layermask to avoid the problem you're assu$$anonymous$$g. I think it's having an infinite loop when I'm colliding with an enemy but I don't know why.

avatar image Crumpet · Feb 10, 2019 at 01:29 AM 0
Share

Unrelated question

what do the asterisks do? I just saw them in your code here

      **Enemy nearEnemy = rb.GetComponent<Enemy>();
                  nearEnemy.DamageEnemy(40f);**

avatar image rsltnyldzz Crumpet · Feb 10, 2019 at 09:58 AM 0
Share

I've put them on purpose for you to see where is the actual problem... They definitely don't exist in the actual code.

avatar image Crumpet rsltnyldzz · Feb 10, 2019 at 04:44 PM 0
Share

I haven't tested this because I haven't got time but maybe it's contantly getting the enemies within your physics overlap every frame, then it iterating through your enemies in the foreach loop which just keeps getting bigger since its still adding the same enemies it already added. I can't say my wording is good but it's something.

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

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

Use 2D Effectors with Raycast Collision Method 0 Answers

My ground checker only works... sometimes 1 Answer

Problem with Falling Platform Script 3 Answers

Play and Stop Animation 1 Answer

"Dash-Move" only work some times. 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