Пример #1
0
    public Racer(iVehicleManager vm, DamageController dc, iRace Race, bool IsMachine)
    {
        isMachine          = IsMachine;
        _Race              = Race;
        VehicleManager     = vm;
        _damCtrl           = dc;
        goRacer            = vm.goCar;
        _vehicleController = vm.VehicleController;
        _defaultMotorForce = _vehicleController.motorForce;
        _gps = _vehicleController.Gps;
        if (IsMachine)
        {
            _playerGps   = DrivingPlayManager.Current.PlayerCarManager.Gps;
            _playerRacer = DrivingPlayManager.Current.PlayerCarManager.Racer;
        }
        else
        {
            _scorer = new Scorer(vm, _gps);
            music   = MusicPlayer.Instance;
        }

        RoadSegCount = Road.Instance.Segments.Count;
        if (goRacer.name == "Vehicle1")
        {
            _vehicleController.motorForce *= 1.1f;                               //This car is more powerful. It jumps backward and comes up behind you
        }
        _damCtrl.OnCollisionExitEvent += StartHogTimer;
    }
Пример #2
0
 protected virtual void Dispose(bool b)
 {
     RemoveListeners();
     _Race              = null;
     VehicleManager     = null;
     goRacer            = null;
     _vehicleController = null;
     _damCtrl           = null;
     _gps         = null;
     _playerGps   = null;
     _playerRacer = null;
     _scorer      = null;
     if (PlayerOpposition != null)
     {
         PlayerOpposition.Clear();
         Opposition.Clear();
     }
 }
Пример #3
0
    public void ShowScore(iRace race)
    {
        transform.Find("ptsLapRec").GetComponent <Text>().text = race.LapRecBonus.ToString();
        transform.Find("ptsHog").GetComponent <Text>().text    = race.HogBonus.ToString();
        transform.Find("ptsDrift").GetComponent <Text>().text  = race.DriftBonus.ToString();
        transform.Find("ptsAir").GetComponent <Text>().text    = race.AirBonus.ToString();
        float Mult        = Road.Instance.XSecs.Count * (float)race.Laps / 6000f;
        float MultRounded = Mathf.RoundToInt(Mult * 10) / 10f;

        transform.Find("ptsMult").GetComponent <Text>().text = "X " + MultRounded.ToString();
        TotalScore = Mathf.RoundToInt((race.LapRecBonus + race.HogBonus + race.DriftBonus + race.AirBonus) * MultRounded);
        transform.Find("ptsTotal").GetComponent <Text>().text = TotalScore.ToString();
        PrevCoins = UserDataManager.Instance.Data.Coins;
        NewCoins  = PrevCoins + TotalScore;
        transform.Find("btnCoins/txtCoins").GetComponent <Text>().text = PrevCoins.ToString();
        UserDataManager.Instance.Data.Coins = NewCoins;
        UserDataManager.Instance.SaveToFile();
        StartCoroutine(CountCoins());
    }