Exemple #1
0
    public void Notify(Message m)
    {
        switch (m.messageType)
        {
        case GoalScoredMessage.classMessageType:

            GoalScoredMessage goalM = m as GoalScoredMessage;
            //goal side is the side that was scored on, and is the side that isn't getting a point
            if (goalM.side != puck.side)
            {
                if (puck.lastBumpedPlayer != null)     //if null, don't count it as a valid goal. No-one from the scoring team touched it
                {
                    playerScores[puck.lastBumpedPlayer] += 1;
                }
            }
            else
            {
                if (puck.lastBumpedPlayerOpposingSide != null)     //if null, don't count it as a valid goal. No-one from the scoring team touched it
                {
                    playerScores[puck.lastBumpedPlayerOpposingSide] += 1;
                }
            }


            UpdateScore(goalM.side);
            animateBackgroundTexture();
            break;

        case GameEndMessage.classMessageType:
            GameEndScripting endData = (m as GameEndMessage).endData;
            endData.leftScore    = this.leftScore;
            endData.rightScore   = this.rightScore;
            endData.playerScores = playerScores;

            float       baseImageStrength = background.GetFloat(Tags.ShaderParams.imageStrength);
            float       baseAlpha         = background.GetFloat(Tags.ShaderParams.alpha);
            CanvasGroup group             = GetComponent <CanvasGroup>();
            Callback.DoLerp((float l) => { background.SetFloat(Tags.ShaderParams.imageStrength, baseImageStrength * l); background.SetFloat(Tags.ShaderParams.alpha, baseAlpha * l); group.alpha = l; }, (m as GameEndMessage).time, this, reverse: true, mode: Callback.Mode.REALTIME);
            Observers.Unsubscribe(this, GoalScoredMessage.classMessageType, GameEndMessage.classMessageType);
            break;
        }
    }
 public GameEndMessage(GameEndScripting endData, float time) : base(classMessageType)
 {
     this.endData = endData;
     this.time = time;
 }
Exemple #3
0
 public GameEndMessage(GameEndScripting endData, float time) : base(classMessageType)
 {
     this.endData = endData;
     this.time    = time;
 }