Ejemplo n.º 1
0
 public void RegisterCollisionEnter(UnityAction <Collision> evt)
 {
     if (collisionEnterEvent == null)
     {
         collisionEnterEvent = new CollisionEnterEvent();
     }
     collisionEnterEvent.AddListener(evt);
 }
Ejemplo n.º 2
0
    public static CollisionEnterEvent Create(GameObject gameObject, Collision col)
    {
        CollisionEnterEvent e = new CollisionEnterEvent();

        e.Type              = QuarkEventType.CollisionEnter;
        e.Id                = gameObject.GetInstanceID();
        e.Tag               = gameObject.tag;
        e.OtherTag          = col.gameObject.tag;
        e.CollisionPosition = col.GetContact(0).point;
        return(e);
    }
Ejemplo n.º 3
0
 void OnCollisionEnter2D(Collision2D collision2D)
 {
     if (collision2D.gameObject.tag.Equals("Player"))
     {
         MathTrialManager.Instance.RequestMathTrial(this);
     }
     else
     {
         CollisionEnterEvent?.Invoke(collision2D);
     }
 }
Ejemplo n.º 4
0
 public void OnCollisionEnter(Collision col)
 {
     if (ColliderTags.Contains(col.gameObject.tag))
     {
         //TAG: MakeEvent area.Logger.Log(Logger.CreateMessage(LogMessageType.Debug, $"Ran into {col.gameObject.name}"), this);
         TriggerCollider = col.collider.Some();
         if (area.EventSystem != null)
         {
             area.EventSystem.RaiseEvent(CollisionEnterEvent.Create(gameObject, col));
         }
     }
 }
Ejemplo n.º 5
0
    // Event Handler Methods

    void Handle(CollisionEnterEvent e)
    {
        if (e.egoComponent1.HasComponents <Movement>() && e.egoComponent2.HasComponents <Ground>())
        {
            Movement movement;
            if (!e.egoComponent1.TryGetComponents(out movement))
            {
                return;
            }
            SetOnGround(movement);
        }
        if (e.egoComponent1.HasComponents <Ground>() && e.egoComponent2.HasComponents <Movement>())
        {
            Movement movement;
            if (!e.egoComponent2.TryGetComponents(out movement))
            {
                return;
            }
            SetOnGround(movement);
        }

        if (e.egoComponent1.HasComponents <Movement>() && e.egoComponent2.HasComponents <PassThrough>())
        {
            Movement movement;
            if (!e.egoComponent1.TryGetComponents(out movement))
            {
                return;
            }
            movement.onPassThrough = true;
            Debug.Log("onPassThrough");
        }
        if (e.egoComponent1.HasComponents <PassThrough>() && e.egoComponent2.HasComponents <Movement>())
        {
            Movement movement;
            if (!e.egoComponent2.TryGetComponents(out movement))
            {
                return;
            }
            Debug.Log("onPassThrough");
            movement.onPassThrough = true;
        }
    }
Ejemplo n.º 6
0
 void Handle(CollisionEnterEvent e)
 {
     if (e.egoComponent1.HasComponents <BottomComponent>() && e.egoComponent2.HasComponents <Ground>())
     {
         BottomComponent bottom;
         if (!e.egoComponent1.TryGetComponents(out bottom))
         {
             return;
         }
         SetOnGround(bottom);
     }
     if (e.egoComponent1.HasComponents <Ground>() && e.egoComponent2.HasComponents <BottomComponent>())
     {
         BottomComponent bottom;
         if (!e.egoComponent2.TryGetComponents(out bottom))
         {
             return;
         }
         SetOnGround(bottom);
     }
 }
Ejemplo n.º 7
0
 private void OnCollisionEnter(Collision other)
 {
     CollisionEnterEvent.Invoke();
 }
Ejemplo n.º 8
0
 private void OnCollisionEnter(Collision collision)
 {
     CollisionEnterEvent.Invoke(collision);
 }
Ejemplo n.º 9
0
 void OnCollisionEnter( Collision collision )
 {
     var e = new CollisionEnterEvent( egoComponent, collision.gameObject.GetComponent<EgoComponent>(), collision );
     EgoEvents<CollisionEnterEvent>.AddEvent( e );
 }
Ejemplo n.º 10
0
 private void OnCollisionEnter2D(Collision2D collision)
 {
     CollisionEnterEvent?.Invoke(this, EventArgs.Empty);
 }
    void OnCollisionEnter(Collision collision)
    {
        var e = new CollisionEnterEvent(egoComponent, collision.gameObject.GetComponent <EgoComponent>(), collision);

        EgoEvents <CollisionEnterEvent> .AddEvent(e);
    }
Ejemplo n.º 12
0
 public void OnCollisionEnter2D(Collision2D collision)
 {
     CollisionEnterEvent?.Invoke(collision);
 }
Ejemplo n.º 13
0
 private void OnCollisionEnter2D(Collision2D collision)
 {
     // 衝突時に通知する
     CollisionEnterEvent?.Invoke(collision);
 }
Ejemplo n.º 14
0
 private void OnCollisionEnter2D(Collision2D other)
 {
     CollisionEnterEvent?.Invoke(other);
 }
Ejemplo n.º 15
0
 private void OnCollision(CollisionEnterEvent evt)
 {
     Destroy(actor.gameObject);
 }
Ejemplo n.º 16
0
 void OnCollisionEnter(Collision collision)
 {
     CollisionEnterEvent?.Invoke(collision.transform);
 }