Exemple #1
0
    private void UpdateNarration(NarrationData _data, Zone _zone)
    {
        if (_data.Text != "NARRATION MISSING")
        {
            if (_data.Text != "")
            {
                int    r       = Random.Range(1, _data.Variations);
                string narText = loc.Localize(_data.Text + r);
                if (narText == null)
                {
                    Debug.LogFormat("MISSING LOC NARRATION!  ORIGINAL STRING: {0}   TURN: {1}", _data.Text, _data.PlayInfo.Turn);
                }
                narText    = ReplaceNames(narText, _data);
                _data.Text = narText;
            }

            visualNarration.UpdateNarration(_data, _zone);
        }
        else
        {
            Debug.LogFormat("MISSING NARRATION!!! -   EVENT: {0}     OFF ACTION: {1}     IS SUCCESS: {2}     TURN: {3}", _data.PlayInfo.Event.ToString(), _data.PlayInfo.OffensiveAction, _data.PlayInfo.IsActionSuccessful, _data.PlayInfo.Turn);
        }


        /*
         * bool isAway;
         * if(_data.PlayInfo.IsActionSuccessful) isAway = _data.PlayInfo.AttackingTeam == awayTeam;
         * else isAway = _data.PlayInfo.DefendingTeam == awayTeam;
         *
         * MatchNarrationTextView textObj =  Instantiate(narrationText, content);
         * textObj.Populate(narText, isAway, _data.PlayInfo, homeColor, awayColor) ;
         * UpdateLayout();
         */
    }
Exemple #2
0
    private NarrationData GetDribbleNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.PlayInfo = _lastPlay;

        if (_lastPlay.IsActionSuccessful)
        {
            flowDribbles++;
            if (flowDribbles == 3)
            {
                narData.Text = "nar_FlowDribbles_";
            }
            else
            {
                narData.Text = "nar_Dribble_";
            }
            SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        }
        else
        {
            if (_lastPlay.IsActionDefended)
            {
                SetNarrationPlayers(narData, _lastPlay.Defender, _lastPlay.Attacker);
                narData.Text = "nar_BlockDribble_";
            }
            else
            {
                SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
                narData.Text = "nar_WrongDribble_";
            }
        }

        return(narData);
    }
Exemple #3
0
    private NarrationData GetCrossNarration(PlayInfo _lastPlay, PlayInfo _currentPlay)
    {
        NarrationData narData = new NarrationData();

        narData.PlayInfo = _lastPlay;

        if (_lastPlay.IsActionSuccessful)
        {
            flowPasses++;
            narData.Text = "nar_Cross_";
            SetNarrationPlayers(narData, _lastPlay.Attacker, _currentPlay.Attacker);
        }
        else
        {
            if (_lastPlay.IsActionDefended)
            {
                SetNarrationPlayers(narData, _lastPlay.Defender, _lastPlay.Attacker);
                narData.Text = "nar_BlockPass_";
            }
            else
            {
                SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
                narData.Text = "nar_WrongCross_";
            }
        }

        return(narData);
    }
Exemple #4
0
    private NarrationData GetGoalAnnouncedNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        switch (_lastPlay.OffenseExcitment)
        {
        case -1:
            narData.Text       = "nar_WorstGoal_";
            narData.Variations = 5;
            break;

        case 0:
            narData.Text       = "nar_Goal_";
            narData.Variations = 8;
            break;

        case 1:
            narData.Text       = "nar_BestGoal_";
            narData.Variations = 5;
            break;
        }

        narData.Type = NarrationType.GoalCelebration;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #5
0
    private NarrationData GetHeaderNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        if (_lastPlay.IsActionSuccessful)
        {
            SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
            narData.Text       = "nar_Header_";
            narData.Variations = 1;
        }
        else
        {
            if (_lastPlay.IsActionDefended)
            {
                SetNarrationPlayers(narData, _lastPlay.Defender, _lastPlay.Attacker);
                narData.Text = "nar_BlockHeader_";
            }
            else
            {
                SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
                narData.Text = "nar_WrongHeader_";
            }
        }
        return(narData);
    }
Exemple #6
0
    private NarrationData GetFirstHalfEndNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_FirstHalfEnd_";
        narData.Variations = 1;
        return(narData);
    }
Exemple #7
0
    private NarrationData GetScorerAnnoucendNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text = "";
        narData.Type = NarrationType.GoalCelebration;
        return(narData);
    }
Exemple #8
0
    private NarrationData GetFullTimeNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_TimeUp_";
        narData.Variations = 1;
        return(narData);
    }
Exemple #9
0
    private NarrationData GetKickOffNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_KickOff_";
        narData.Variations = 1;
        return(narData);
    }
Exemple #10
0
    public Narration()
    {
        narrationData = AssetDatabase.LoadAssetAtPath <NarrationData>("Assets/Data/Narration/NarrationData.asset");

        if (narrationData != null)
        {
            InitFoldout();
        }
    }
Exemple #11
0
    private NarrationData GetOffsideNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_Offside_";
        narData.Variations = 3;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #12
0
    private NarrationData GetPenaltyShotNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_PenaltyTake_";
        narData.Variations = 1;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #13
0
    private NarrationData GetGoalNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text = "nar_GoalScream_";
        narData.Type = NarrationType.GoalCelebration;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #14
0
    private NarrationData GetShotMissedNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_MissedShot_";
        narData.Variations = 2;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #15
0
    private NarrationData GetLostBallNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_LostPossession_";
        narData.Variations = 4;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #16
0
    private NarrationData GetEmptyPlayNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_SwitchPossession_";
        narData.Variations = 1;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #17
0
    private NarrationData GetSecondHalfStartNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_SecondHalfStart_";
        narData.Variations = 1;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #18
0
    private NarrationData GetCornerKickNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.Text       = "nar_CornerKick_";
        narData.Variations = 1;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #19
0
 private void SetNarrationPlayers(NarrationData _data, PlayerData _player1 = null, PlayerData _player2 = null)
 {
     if (_player1)
     {
         SetNarrationPlayer(PLAYER_1, _data, _player1);
     }
     if (_player2)
     {
         SetNarrationPlayer(PLAYER_2, _data, _player2);
     }
 }
    public void UpdateNarration(NarrationData _narData, Zone _zone = Zone.CM)
    {
        switch (_narData.Type)
        {
        case NarrationType.GoalCelebration: ShowGoalCelebration(true, _narData.Text); break;

        default:
            narrationText.text = _narData.Text;
            fieldView.UpdateFieldArea((int)_zone);
            ShowGoalCelebration(false);
            break;
        }
    }
Exemple #21
0
    private string ReplaceNames(string _text, NarrationData _data)
    {
        string txt = _text;

        txt = txt.Replace("{PLAYER_1}", "<color={COLOR_1}>" + _data.Player1 + "</color>");
        txt = txt.Replace("{PLAYER_2}", "<color={COLOR_2}>" + _data.Player2 + "</color>");
        txt = txt.Replace("{TEAM_1}", "<color={COLOR_1}>" + _data.Team1 + "</color>");
        txt = txt.Replace("{TEAM_2}", "<color={COLOR_2}>" + _data.Team2 + "</color>");
        txt = txt.Replace("{COLOR_1}", _data.Color1);
        txt = txt.Replace("{COLOR_2}", _data.Color2);
        txt = txt.Replace("{ZONE}", _data.Zone);

        return(txt);
    }
Exemple #22
0
    private NarrationData GetShotOnGoalNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        if (_lastPlay.OffensiveAction == PlayerAction.Shot)
        {
            narData.Text = "nar_Shot_";
        }
        else if (_lastPlay.OffensiveAction == PlayerAction.Header)
        {
            narData.Text = "nar_Header_";
        }
        narData.Variations = 1;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #23
0
    private NarrationData GetGoalKickNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        if (_lastPlay.IsActionSuccessful)
        {
            narData.Text = "nar_Goalkick_";
        }
        else
        {
            narData.Text = "nar_WrongGoalkick_";
        }

        narData.Variations = 1;
        SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        return(narData);
    }
Exemple #24
0
    private void SetNarrationPlayer(byte _index, NarrationData _data, PlayerData _player)
    {
        Color teamColor = _player.Team.IsAwayTeam ? awayColor : homeColor;

        if (_index == PLAYER_1)
        {
            _data.Player1 = GetFormatedName(_player);
            _data.Team1   = _player.Team.Name;
            _data.Color1  = "#" + ColorUtility.ToHtmlStringRGB(teamColor);
        }
        else
        {
            _data.Player2 = GetFormatedName(_player);
            _data.Team2   = _player.Team.Name;
            _data.Color2  = "#" + ColorUtility.ToHtmlStringRGB(teamColor);
        }
    }
Exemple #25
0
    private NarrationData GetPassNarration(PlayInfo _lastPlay, PlayInfo _currentPlay)
    {
        NarrationData narData = new NarrationData();

        narData.PlayInfo = _lastPlay;

        if (_lastPlay.IsActionSuccessful)
        {
            flowPasses++;
            if (flowPasses == 3)
            {
                narData.Text       = "nar_FlowPasses_";
                narData.Variations = 1;
            }
            else
            {
                switch (_lastPlay.OffenseExcitment)
                {
                case -1: narData.Text = "nar_WorstPass_"; break;

                case 0: narData.Text = "nar_Pass_"; break;

                case 1: narData.Text = "nar_BestPass_"; break;
                }
                narData.Variations = 3;
            }
            SetNarrationPlayers(narData, _lastPlay.Attacker, _currentPlay.Attacker);
        }
        else
        {
            if (_lastPlay.IsActionDefended)
            {
                SetNarrationPlayers(narData, _lastPlay.Defender, _lastPlay.Attacker);
                narData.Text = "nar_BlockPass_";
            }
            else
            {
                SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
                narData.Text = "nar_WrongPass_";
            }
        }
        return(narData);
    }
Exemple #26
0
    private NarrationData GetSprintNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        narData.PlayInfo = _lastPlay;

        if (_lastPlay.IsActionSuccessful)
        {
            narData.Text = "nar_Sprint_";
            SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
        }
        else
        {
            SetNarrationPlayers(narData, _lastPlay.Attacker, _lastPlay.Defender);
            narData.Text = "nar_WrongSprint_1";
        }

        return(narData);
    }
Exemple #27
0
    private NarrationData GetShotSavedNarration(PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        if (_lastPlay.DefenseExcitment == 0)
        {
            narData.Text = "nar_SaveShot_";
        }
        if (_lastPlay.DefenseExcitment == 1)
        {
            narData.Text = "nar_BestSaveShot_";
        }
        else if (_lastPlay.DefenseExcitment == -1)
        {
            narData.Text = "nar_WorstSaveShot_";
        }

        narData.Variations = 1;
        SetNarrationPlayers(narData, _lastPlay.Defender, _lastPlay.Attacker);
        return(narData);
    }
Exemple #28
0
    public void UpdateNarration(PlayInfo _currentPlay, PlayInfo _lastPlay)
    {
        NarrationData narData = new NarrationData();

        if (!_lastPlay.IsActionSuccessful)
        {
            flowDribbles = 0;
            flowPasses   = 0;
        }

        // NO EVENTS
        if (_lastPlay.Event == MatchEvent.None)
        {
            if (_lastPlay.Marking == MarkingType.Steal)
            {
                narData = GetStealNarration(_lastPlay);
            }
            else if (_lastPlay.CounterAttack == 4)
            {
                narData = GetCounterAttackNarration(_lastPlay);
            }
            else if (_lastPlay.Attacker == null)
            {
                narData = GetEmptyPlayNarration(_lastPlay);
            }
            else
            {
                switch (_lastPlay.OffensiveAction)
                {
                case PlayerAction.None: narData = GetLostBallNarration(_lastPlay); break;

                case PlayerAction.Pass: narData = GetPassNarration(_lastPlay, _currentPlay); break;

                case PlayerAction.LongPass: narData = GetLongPassNarration(_lastPlay, _currentPlay); break;

                case PlayerAction.Cross: narData = GetCrossNarration(_lastPlay, _currentPlay); break;

                case PlayerAction.Dribble: narData = GetDribbleNarration(_lastPlay); break;

                case PlayerAction.Header: narData = GetHeaderNarration(_lastPlay); break;

                case PlayerAction.Sprint: narData = GetSprintNarration(_lastPlay); break;
                }
            }
        }
        //EVENTS
        else
        {
            switch (_lastPlay.Event)
            {
            case MatchEvent.KickOff: narData = GetKickOffNarration(_lastPlay); break;

            case MatchEvent.HalfTime: narData = GetFirstHalfEndNarration(_lastPlay); break;

            case MatchEvent.SecondHalfKickOff: narData = GetSecondHalfStartNarration(_lastPlay); break;

            case MatchEvent.FullTime: narData = GetFullTimeNarration(_lastPlay); break;

            case MatchEvent.ShotOnGoal: narData = GetShotOnGoalNarration(_lastPlay);  break;

            case MatchEvent.Goal: narData = GetGoalNarration(_lastPlay); break;

            case MatchEvent.GoalAnnounced: narData = GetGoalAnnouncedNarration(_lastPlay); break;

            case MatchEvent.ScorerAnnounced: narData = GetScorerAnnoucendNarration(_lastPlay); break;

            case MatchEvent.Fault: narData = GetFaultNarration(_lastPlay); break;

            case MatchEvent.CornerKick: narData = GetCornerKickNarration(_lastPlay); break;

            case MatchEvent.Penalty: narData = GetPenaltytNarration(_lastPlay); break;

            case MatchEvent.PenaltyShot: narData = GetPenaltyShotNarration(_lastPlay); break;

            case MatchEvent.ShotSaved: narData = GetShotSavedNarration(_lastPlay); break;

            case MatchEvent.ShotMissed: narData = GetShotMissedNarration(_lastPlay); break;

            case MatchEvent.Offside: narData = GetOffsideNarration(_lastPlay); break;

            case MatchEvent.Goalkick: narData = GetGoalKickNarration(_lastPlay); break;
            }
        }

        narData.PlayInfo = _lastPlay;
        narData.Zone     = loc.GetZoneString(_lastPlay.AttackingTeam.GetTeamZone(_lastPlay.Zone));
        UpdateNarration(narData, _currentPlay.Zone);
    }