Пример #1
0
    public virtual bool Collision(ColliderBase obj)
    {
        ColliderBase me = GetColliderBase();

        if (me.GetColliderType() == obj.GetColliderType())
        {
            if (me.GetColliderType() == Define.ColliderType.Box)
            {
                return(MathEx.IntersectRect(me.GetCollisinoInfo(tp.position), obj.GetCollisinoInfo(obj.transform.position)));
            }
            else
            {
                return(MathEx.IntersectCircle(me.GetCollisinoInfo(tp.position), obj.GetCollisinoInfo(obj.transform.position)));
            }
        }
        else
        {
            if (me.GetColliderType() == Define.ColliderType.Box)
            {
                return(MathEx.IntersectRectCircle(obj.GetCollisinoInfo(obj.transform.position), me.GetCollisinoInfo(tp.position), me.GetBound()));
            }
            else
            {
                return(MathEx.IntersectRectCircle(me.GetCollisinoInfo(tp.position), obj.GetCollisinoInfo(obj.transform.position), obj.GetBound()));
            }
        }
    }
Пример #2
0
 public void Setup()
 {
     ColliderBase.ClearAllColliders();
     actor123 = new DummyActor(new Vector2(0, 2), new Vector2(6, 2));
     actor14  = new DummyActor(new Vector2(-2, 1), new Vector2(2, 4));
     actor258 = new DummyActor(new Vector2(0, 0), new Vector2(2, 6));
     actor6   = new DummyActor(new Vector2(2, 0), new Vector2(2, 2));
     actor89  = new DummyActor(new Vector2(1, -2), new Vector2(4, 2));
 }
Пример #3
0
    /// <summary>
    /// Specify the collider type and add to the specified collider list
    /// </summary>
    /// <param name="obj"></param>
    public static void AddToColliderList(GameObject obj)
    {
        ColliderBase colliderBase = obj.GetComponent <ColliderBase>();

        if (colliderBase.colliderType == ColliderType.Rectangle)
        {
            rectangleColliders.Add(obj.GetComponent <RectangleCollider>());
        }
        else if (colliderBase.colliderType == ColliderType.Circle)
        {
            circleColliders.Add(obj.GetComponent <CircleCollider>());
        }
        else
        {
            Debug.LogWarning("<color=red>Add : Illegal collider type.</color>");
        }
    }
Пример #4
0
    /// <summary>
    /// Specify the collider type and remove from the specified collider list
    /// </summary>
    /// <param name="obj">A GameObject instance</param>
    public static void RemoveFromColliderList(GameObject obj)
    {
        ColliderBase colliderBase = obj.GetComponent <ColliderBase>();

        if (colliderBase.colliderType == ColliderType.Rectangle)
        {
            rectangleColliders.Remove(obj.GetComponent <RectangleCollider>());
            Debug.Log("<color=cyan>Successfully removed from Rectangles List</color>");
        }
        else if (colliderBase.colliderType == ColliderType.Circle)
        {
            circleColliders.Remove(obj.GetComponent <CircleCollider>());
            Debug.Log("<color=cyan>Successfully removed from Circles List</color>");
        }
        else
        {
            Debug.LogWarning("<color=red>Remove : Illegal collider type.</color>");
        }
    }
Пример #5
0
 // "other" is the collider we've hit and contains reference to the object it belongs to
 void MyCollision(ColliderBase other)
 {
 }
Пример #6
0
 private void ColliderBaseTests_CollisionEnded(ColliderBase sender, ColliderBase collider)
 {
     eventRaised = true;
 }
Пример #7
0
 private void Actor1_CollisionStarted(ColliderBase sender, ColliderBase collider)
 {
     eventRaised = true;
 }
Пример #8
0
 public void SetColliderFromChild()
 {
     colliderBase = GetComponentInChildren <ColliderBase>();
 }
Пример #9
0
 public void SetCollider()
 {
     colliderBase = GetComponent <ColliderBase>();
 }
Пример #10
0
    public virtual bool Collision(ObjectBase obj)
    {
        ColliderBase other = obj.GetColliderBase();

        return(Collision(other));
    }
Пример #11
0
 public void Setup()
 {
     ColliderBase.ClearAllColliders();
 }