Question by 
               jacobdykman · Apr 15, 2021 at 03:58 PM · 
                c#2d-platformerprogramming  
              
 
              Having problems with Overlap Circle
So basically when this chest hits the ground layer(Terrain) I want it to just freeze in place but for some reason as soon as I hit play it thinks it's touching the ground layer but it's not. Is there something dumb that I'm doing wrong?
 using System.Collections;
 using System.Collections.Generic;
 using System.Threading;
 using UnityEngine;
 
 public class chestScript : MonoBehaviour
 {
     public SpriteRenderer spriteRenderer;
     public Sprite openSprite;
     public Sprite closeSprite;
     [SerializeField] private LayerMask groundLayer;                          
     public Transform groundCheck1;
     public Transform groundCheck2;
     public Rigidbody2D rigidbody2D;
     public bool open;
     public bool m_Grounded;
     const float checkRadius = .1f;
     private void Start()
     {
         m_Grounded = false;
         Transform transform = gameObject.transform;
 
     }
 private void FixedUpdate()
     {
         if (open)
         {
             OpenChest();
         }
         else if (!open)
         {
             CloseChest();
         }
 
         m_Grounded = false;
         // The player is grounded if a circlecast to the groundcheck position hits anything designated as ground
         // This can be done using layers instead but Sample Assets will not overwrite your project settings.
         Collider2D[] colliders1 = Physics2D.OverlapCircleAll(groundCheck1.position, checkRadius, groundLayer);
         Collider2D[] colliders2 = Physics2D.OverlapCircleAll(groundCheck2.position, checkRadius, groundLayer);
 
         foreach (Collider2D enemy in colliders1)
         {
             m_Grounded = true;
             Landing();
             Debug.Log(groundLayer);
         }
 
     }
     public void OnDrawGizmosSelected()
     {
         Gizmos.DrawWireSphere(groundCheck1.position, checkRadius);
         Gizmos.DrawWireSphere(groundCheck2.position, checkRadius);
     }
     void Landing()
     {
         Destroy(rigidbody2D);
     }
     void OpenChest()
     {
         spriteRenderer.sprite = openSprite;
     }
     void CloseChest()
     {
         spriteRenderer.sprite = closeSprite;
     }
 }
 
               Comment
              
 
               
              Your answer
 
 
              koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                