Exemplo n.º 1
0
    /// <summary>
    /// Checking the collision table and disabling game objects where needed
    /// </summary>
    /// <param name="a_collision">The collider script of the object we collided with</param>
    private void CheckCollisionTable(Collider2D a_collision)
    {
        foreach (PooledObjectCollisionCheckTable colInfo in m_collisionTable)
        {
            if (a_collision.gameObject.tag == colInfo.m_collisionTag)
            {
                if (colInfo.m_disableOther)
                {
                    PooledObject pooledObjectScript = a_collision.gameObject.GetComponent <PooledObject>();
                    if (pooledObjectScript != null)
                    {
                        pooledObjectScript.DisableInPool();
                    }
                }

                colInfo.m_callOnCollide.Invoke();

                if (colInfo.m_disableSelf)
                {
                    DisableInPool();
                }

                return;
            }
        }
    }