Example #1
0
    void OnTriggerEnter2D(Collider2D collider)
    {
        if (collider.tag == "Player")
        {
            // Broacast event to handle player's death.

            PlatformerController diedPlayer = collider.GetComponent <PlatformerController>();

            // Only send death event if I'm the runner that died
            if (diedPlayer.IamThisRunner())
            {
                EventManagerNetworked.Instance.BroadcastEvent(EventType.PlayerDied, new EventManagerArg(diedPlayer.myTeam));
            }
        }
    }
Example #2
0
    void OnCollisionEnter2D(Collision2D coll)
    {
        if (coll.gameObject != gameObject && coll.gameObject.name == "hero 1(Clone)")
        {
            PlatformerController player = coll.gameObject.GetComponent <PlatformerController>();
            EventManager.Instance.PostNotification(EventType.Explosion, this, null);
            // Only send death event if I'm the runner that died
            if (player.IamThisRunner())
            {
                EventManagerNetworked.Instance.BroadcastEvent(EventType.PlayerDied, new EventManagerArg(player.myTeam));
            }

            Destroy(gameObject);

            return;
        }

        if (coll.gameObject.tag.Equals("Block") && coll.gameObject != this.gameObject)
        {
            Destroy(coll.gameObject);
            Destroy(gameObject);
        }
    }
Example #3
0
    void OnTriggerEnter2D(Collider2D collider)
    {
        // Make sure it was a player that hit the trigger
        if (collider.tag == "Player")
        {
            Team localTeam = this.engine.GetTeam();

            if (IsDebug)
            {
                Debug.Log("FlagTrigger - Castle Team: " + castleTeam);
            }
            if (IsDebug)
            {
                Debug.Log("FlagTrigger - Local team: " + localTeam);
            }

            PlatformerController player = collider.GetComponent <PlatformerController>();

            // Only send flag event if I'm the runner dealing with the flag
            if (!player.IamThisRunner())
            {
                return;
            }

            // Throw flag capture (i.e. drop off) event.
            if (player.HasFlag() && castleTeam == localTeam)
            {
                EventManagerNetworked.Instance.BroadcastEvent(EventType.FlagCaptured, new EventManagerArg(localTeam));
            }
            // Throw flag grab event.
            else if (!player.HasFlag() && castleTeam != localTeam)
            {
                EventManagerNetworked.Instance.BroadcastEvent(EventType.FlagGrabbed, new EventManagerArg(localTeam));
            }
        }
    }