// Add Score
    public void AddScore(SCORE_TYPE type)
    {
        int amount = 0;

        switch (type)
        {
        case SCORE_TYPE.PT1_DIE:            // 10 Points
        case SCORE_TYPE.PT2_DIE:
        case SCORE_TYPE.APEWOLF_ROCKS:
        case SCORE_TYPE.SQWOLF_ACID:
            amount = 10;
            break;

        case SCORE_TYPE.PT1_POISON:            // 1 Points
        case SCORE_TYPE.PT2_FIRE:
            amount = 1;
            break;

        case SCORE_TYPE.APEWOLF_DIE:           // 50 Points
            amount = 50;
            break;

        case SCORE_TYPE.SQWOLF_DIE:            // 30 Points
            amount = 30;
            break;
        }
        score += amount;
    }
    public void PrepareMe(Dictionary <int, Result[]> inGameResults, Result[] afterGameResults, string reason, int distance, Mission mission, PlayerState player)
    {
        Distance         = distance;
        GameOverReason   = reason;
        Mission          = mission;
        InGameResults    = inGameResults;
        AfterGameResults = afterGameResults;

        if (Passed = Mission.Passed(InGameResults, AfterGameResults))
        {
            player.MissionDone(Mission);
        }
        CarSmasherSocial.UpdateLeaderboard(GoogleLeaderboard.LEADERB_BEST_DISTANCES_ADV, afterGameResults);
        HighScores.AddScore(Distance, HighScoreType.Adventure);

        foreach (AchievQuery aq in Mission.AfterGameReqs)
        {
            TaskToBeDone       = aq.ScoreType;
            TaskToBeDoneAmount = aq.Value;
        }

        foreach (Result r in afterGameResults)
        {
            if (r.ScoreType == SCORE_TYPE.COINS)
            {
                CoinsCollected = r.Value;
            }
            if (r.ScoreType == TaskToBeDone)
            {
                TaskDoneAmount = r.Value;
            }
        }
    }
 public GoogleAchievement(string id, ACHIEVEMENT_TYPE type, SCORE_TYPE whatIncrement, List <AchievQuery> achievQuery, ProcessScore processScore = null)
 {
     Id            = id;
     _Type         = type;
     WhatIncrement = whatIncrement;
     Queries       = achievQuery;
     ProcessScore  = processScore != null ? processScore : DefaultProcessScore;
 }
Ejemplo n.º 4
0
    public void AddScore(SCORE_TYPE type)
    {
        switch (type)
        {
        case SCORE_TYPE.BUILDING_SMALL_TYPE_1:
            _score += _building_small_type1_score;
            writeScorePlus(_building_small_type1_score);
            break;

        case SCORE_TYPE.BUILDING_SMALL_TYPE_2:
            _score += _building_small_type2_score;
            writeScorePlus(_building_small_type2_score);
            break;

        case SCORE_TYPE.BUILDING_SMALL_TYPE_3:
            _score += _building_small_type3_score;
            writeScorePlus(_building_small_type3_score);
            break;

        case SCORE_TYPE.BUILDING_BIG_TYPE_1:
            _score += _building_big_type1_score;
            writeScorePlus(_building_big_type1_score);
            break;

        case SCORE_TYPE.BUILDING_BIG_TYPE_2:
            _score += _building_big_type2_score;
            writeScorePlus(_building_big_type2_score);
            break;

        case SCORE_TYPE.BUILDING_BIG_TYPE_3:
            _score += _building_big_type3_score;
            writeScorePlus(_building_big_type3_score);
            break;

        case SCORE_TYPE.ENEMY_A:
            _score += _enemy_a_score;
            writeScorePlus(_enemy_a_score);
            break;

        case SCORE_TYPE.ENEMY_B:
            _score += _enemy_b_score;
            writeScorePlus(_enemy_b_score);
            break;

        case SCORE_TYPE.ENEMY_C:
            _score += _enemy_c_score;
            writeScorePlus(_enemy_c_score);
            break;

        case SCORE_TYPE.BONUS:
            _score += _bonus;
            writeScorePlus(_bonus);
            break;

        default:
            break;
        }
    }
Ejemplo n.º 5
0
    private SCORE_TYPE GetScoreType()
    {
        SCORE_TYPE type = SCORE_TYPE.COINS;         //it can't be null

        foreach (AchievQuery aq in AfterGameReqs)
        {
            type = aq.ScoreType;
        }
        return(type);
    }
Ejemplo n.º 6
0
    public SCORE_TYPE GetAmountType()
    {
        SCORE_TYPE s = SCORE_TYPE.COINS;         //it can't be null

        foreach (AchievQuery aq in AfterGameReqs)
        {
            s = aq.ScoreType;
        }
        return(s);
    }
Ejemplo n.º 7
0
    public int GetNextMissionLevel(SCORE_TYPE ScoreType)
    {
        int next = 1;

        if (MissionsDone.ContainsKey(ScoreType))
        {
            next = MissionsDone[ScoreType] + 1;
        }
        return(next);
    }
Ejemplo n.º 8
0
    public int GetAmountDone(Result[] results)
    {
        int amountDone = 0;

        SCORE_TYPE type = GetScoreType();

        foreach (Result r in results)
        {
            if (r.ScoreType == type)
            {
                amountDone = r.Value;
            }
        }
        return(amountDone);
    }
Ejemplo n.º 9
0
    public void AddScore( SCORE_TYPE _scoreType, GamePlayer _player, bool _broadcast )
    {
        TEAM team = _player.team;
        int points = this.GetScoreTypeAmount( _scoreType );

        this.GetTeamScore( team ).score += points;

        _player.personalScore += points;

        DebugConsole.Log( "Player " + _player.id + " earned " + points + " points for " + _scoreType );

        if ( _broadcast && Network.peerType != NetworkPeerType.Disconnected )
        {
            GameNetworkManager.instance.SendAddScoreMessage( _scoreType, _player );
        }
    }
    public static string HumanName(this SCORE_TYPE s)
    {
        switch (s)
        {
        case SCORE_TYPE.DISTANCE: return("Distance");

        case SCORE_TYPE.COINS: return("Coins");

        case SCORE_TYPE.FUEL_PICKED: return("Fuel");

        case SCORE_TYPE.FUEL_PICKED_IN_ROW: return("Fuel picked in a row");

        case SCORE_TYPE.FUEL_PICKED_WHEN_LOW: return("Fuel picked when low");

        case SCORE_TYPE.TURNS: return("Turns");

        default: return(s.ToString());
        }
    }
Ejemplo n.º 11
0
    private static int GetValueForScore(SCORE_TYPE scoreType, int level)
    {
        switch (scoreType)
        {
        case SCORE_TYPE.DISTANCE: return(CumulativePercentCombination(18, 0.11f, level, 30, 0.03f));

        case SCORE_TYPE.COINS: return(CumulativePercent(2, 0.1f, level));

        case SCORE_TYPE.FUEL_PICKED: return(CumulativePercentCombination(2, 0.1f, level, 30, 0.03f));

        case SCORE_TYPE.FUEL_PICKED_IN_ROW: return(CumulativePercentCombination(2, 0.1f, level, 30, 0.03f));

        case SCORE_TYPE.FUEL_PICKED_WHEN_LOW: return(CumulativePercentCombination(1, 0.1f, level, 30, 0.03f));

        case SCORE_TYPE.TURNS: return(CumulativePercentCombination(8, 0.1f, level, 30, 0.03f));

        default:
            throw new UnityException("There is no value for score type: " + scoreType);
        }
    }
Ejemplo n.º 12
0
    private void Deserialize(string serialized)
    {
        Debug.Log("Deserializing: " + serialized);
        Dictionary <string, object> dict = (Dictionary <string, object>)MiniJSON.Json.Deserialize(serialized);

        //we don't want here to increase the ever earned coins field
        _Coins = int.Parse((string)dict ["coins"]);
        if (dict.ContainsKey("everEarnedCoins"))
        {
            _EverEarnedCoins = int.Parse((string)dict ["everEarnedCoins"]);
        }
        Dictionary <string, object> tmp = (Dictionary <string, object>)MiniJSON.Json.Deserialize((string)dict ["missionsDone"]);

        foreach (KeyValuePair <string, object> kvp in tmp)
        {
            SCORE_TYPE parsed = (SCORE_TYPE)System.Enum.Parse(typeof(SCORE_TYPE), kvp.Key);
            object     value  = kvp.Value;
            if (!MissionsDone.ContainsKey(parsed))
            {
                MissionsDone.Add(parsed, int.Parse(string.Format("{0}", value)));
            }
        }
        CarConfig.Deserialize((string)dict["carConfig"]);
    }
Ejemplo n.º 13
0
 public void SendAddScoreMessage( SCORE_TYPE _scoreType, GamePlayer _player )
 {
     this.GetComponent<NetworkView>().RPC( "OnAddScoreRPC", RPCMode.Others, (int)_scoreType, _player.id );
 }
Ejemplo n.º 14
0
 public void addScore(SCORE_TYPE scoreType)
 {
     setScore(score + scoreValues[(int)scoreType]);
 }
Ejemplo n.º 15
0
 public Mission(SCORE_TYPE scoreType, int level)
 {
     ScoreType = scoreType;
     Level     = level;
     Initialize(new AchievQuery[] { }, new AchievQuery[] { new AchievQuery(scoreType, SIGN.BIGGER_EQUAL, GetValueForScore(scoreType, level)) }, GetRewardForLevel(level), Environment.AdventureMission);
 }
Ejemplo n.º 16
0
 private int GetScoreTypeAmount( SCORE_TYPE _scoreType )
 {
     switch ( _scoreType )
     {
     case SCORE_TYPE.FIGHTER_KILL:
         return this.fighterKillPoints;
     case SCORE_TYPE.MISSILE_KILL:
         return this.missileKillPoints;
     case SCORE_TYPE.TURRET_KILL:
         return this.turretKillPoints;
     case SCORE_TYPE.DAMAGE:
         return this.targetDamagePoints;
     default:
         DebugConsole.Error( "Unknown score type \"" + _scoreType + "\"" );
         return 0;
     }
 }