Ejemplo n.º 1
0
    public void UpgradeGunData(GameEnums.GunDataType gunDataTypeToBuy, int cost)
    {
        if (PlayerStaticRunTimeData.coins >= cost)
        {
            FirePointData.GunConfiguration PlayerConfigFromPath        = PlayerStaticRunTimeData.playerTruckData.firePointData.GetConfigOnLocation(gunPoint.locationPath);
            FirePointData.GunConfiguration CustomizationConfigFromPath = PlayerStaticRunTimeData.customizationTruckData.firePointData.GetConfigOnLocation(gunPoint.locationPath);

            PlayerConfigFromPath.gunDataType        = gunDataTypeToBuy;
            CustomizationConfigFromPath.gunDataType = gunDataTypeToBuy;

            currentGunDataType = gunDataTypeToBuy;

            int    gunType          = (int)PlayerConfigFromPath.gunDataType;
            char[] typeNumbersChars = gunType.ToString().ToCharArray();


            menuHandler.customization.RateOfFireStat.GetComponent <Slider>().value     = typeNumbersChars[0] - 48;
            menuHandler.customization.DamageStat.GetComponent <Slider>().value         = typeNumbersChars[1] - 48;
            menuHandler.customization.TargetingSpeedStat.GetComponent <Slider>().value = typeNumbersChars[2] - 48;


            PlayerStaticRunTimeData.coins -= cost;
            currentGunDataType             = gunDataTypeToBuy;
            PlayerStaticDataHandler.SaveData(PlayerStaticRunTimeData.playerTruckData, new PlayerSessionData(0, 0, 0));

            CustomizationState.Instance.RefreshPlayerStats();
        }
        else
        {
            WarningWindow.Instance.ShowWarning(WarningStrings.DontHaveMoney());
        }
    }
Ejemplo n.º 2
0
    private void SelectGun()
    {
        Camera.main.transform.position = transform.position + new Vector3(2, 2, 2);
        Camera.main.transform.LookAt(gunPoint.gunsLocation);

        if (gunPoint.gunsLocation.childCount > 0)
        {
            rateOfFireStat.SetActive(true);
            damageStat.SetActive(true);

            for (int i = 0; i < CustomizationHandler.playerTruck.TruckData.firePointData.gunsConfigurations.Length; i++)
            {
                if (CustomizationHandler.playerTruck.TruckData.firePointData.gunsConfigurations[i].locationPath.ToString() == gunPoint.locationPath)
                {
                    currentGunDataType = CustomizationHandler.playerTruck.TruckData.firePointData.gunsConfigurations[i].gunDataType;
                }
            }

            UpdateGunStats();

            rateOfFireStat.GetComponentInChildren <Button>().onClick.AddListener(() => UpgradeRateOfFire());
            damageStat.GetComponentInChildren <Button>().onClick.AddListener(() => UpgradeDamage());
        }

        changeGunButton.gameObject.SetActive(true);
        changeGunButton.onClick.AddListener(() => ChangeGun());

        gameObject.GetComponent <Image>().enabled = false;
        backButton.onClick.RemoveAllListeners();
        backButton.onClick.AddListener(() => BackToMain());
    }
Ejemplo n.º 3
0
    public void BuyGun(GameEnums.Gun guntype)
    {
        int cost = CustomizationHandler.ShopCosts.ItemsCost(guntype.ToString());

        if (PlayerStaticRunTimeData.coins >= cost)
        {
            for (int i = 0; i < PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations.Length; i++)
            {
                if (PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations[i].locationPath.ToString() == gunPoint.locationPath)
                {
                    PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations[i].gunType            = gunTypeToBuy;
                    PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations[i].gunDataType        = GameEnums.GunDataType.LrLd;
                    PlayerStaticRunTimeData.customizationFirePointData.gunsConfigurations[i].gunType     = gunTypeToBuy;
                    PlayerStaticRunTimeData.customizationFirePointData.gunsConfigurations[i].gunDataType = GameEnums.GunDataType.LrLd;

                    currentGunDataType = GameEnums.GunDataType.LrLd;
                }
            }

            PlayerStaticRunTimeData.coins -= cost;
            PlayerDataDebug.RefreshStatistics();
            PersistentPlayerDataHandler.SaveData(PlayerStaticRunTimeData.playerTruckData, PlayerStaticRunTimeData.playerFirePointData, new PlayerSessionData(0, 0));

            buyButton.gameObject.GetComponentInChildren <Text>().text = "";

            changeGunButton.onClick.RemoveAllListeners();
            buyButton.onClick.RemoveAllListeners();
            damageStat.GetComponentInChildren <Button>().onClick.RemoveAllListeners();
            rateOfFireStat.GetComponentInChildren <Button>().onClick.RemoveAllListeners();


            SelectGun();
        }
    }
Ejemplo n.º 4
0
 public void SetAllGunDataTypesToRandom()
 {
     for (int i = 0; i < gunsConfigurations.Length; i++)
     {
         int randomGunDataTypeNumber             = Random.Range(0, System.Enum.GetNames(typeof(GameEnums.GunDataType)).Length);
         GameEnums.GunDataType randomGunDataType = (GameEnums.GunDataType)randomGunDataTypeNumber;
         gunsConfigurations[i].gunDataType = randomGunDataType;
     }
 }
Ejemplo n.º 5
0
    public void UpgradeTargetingSpeed()
    {
        int upgradedTargetingSpeed = (int)currentGunDataType + 1;

        char[] typeNumbersChars = upgradedTargetingSpeed.ToString().ToCharArray();
        if (typeNumbersChars[2] - 48 > 3)
        {
            return;
        }

        GameEnums.GunDataType upgradedGunData = (GameEnums.GunDataType)upgradedTargetingSpeed;
        UpgradeGunData(upgradedGunData, 500 * (typeNumbersChars[2] - 48));

        menuHandler.customization.TargetingSpeedStat.GetComponentInChildren <Button>().GetComponentInChildren <Text>().text = UpgradeTargetingSpeedCost();
    }
Ejemplo n.º 6
0
    private void UpgradeDamage()
    {
        int upgradedDamage = (int)currentGunDataType + 10;

        char[] typeNumbersChars = upgradedDamage.ToString().ToCharArray();
        if (typeNumbersChars[1] - 48 > 3)
        {
            return;
        }

        GameEnums.GunDataType upgradedGunData = (GameEnums.GunDataType)upgradedDamage;
        UpgradeGunData(upgradedGunData, 500 * (typeNumbersChars[1] - 48));

        menuHandler.customization.DamageStat.GetComponentInChildren <Button>().GetComponentInChildren <Text>().text = UpgradeDamageCost();
    }
Ejemplo n.º 7
0
    private void UpgradeDamage()
    {
        UpdateGunStats();

        int upgradedDamage = (int)currentGunDataType + 1;

        char[] typeNumbersChars = upgradedDamage.ToString().ToCharArray();
        if (typeNumbersChars[1] - 48 > 3)
        {
            return;
        }

        GameEnums.GunDataType upgradedGunData = (GameEnums.GunDataType)upgradedDamage;
        //int cost = CustomizationHandler.ShopCosts.ItemsCost(upgradedGunData.ToString());

        UpgradeGunData(upgradedGunData, 300);

        //damageStat.GetComponentInChildren<Button>().onClick.RemoveAllListeners();
    }
Ejemplo n.º 8
0
 public void UpgradeGunData(GameEnums.GunDataType gunDataTypeToBuy, int cost)
 {
     if (PlayerStaticRunTimeData.coins >= cost)
     {
         for (int i = 0; i < PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations.Length; i++)
         {
             if (PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations[i].locationPath.ToString() == gunPoint.locationPath)
             {
                 PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations[i].gunDataType        = gunDataTypeToBuy;
                 PlayerStaticRunTimeData.customizationFirePointData.gunsConfigurations[i].gunDataType = gunDataTypeToBuy;
             }
         }
         PlayerStaticRunTimeData.coins -= cost;
         currentGunDataType             = gunDataTypeToBuy;
         PersistentPlayerDataHandler.SaveData(PlayerStaticRunTimeData.playerTruckData, PlayerStaticRunTimeData.playerFirePointData, new PlayerSessionData(0, 0));
     }
     PlayerDataDebug.RefreshStatistics();
     UpdateGunStats();
 }
Ejemplo n.º 9
0
    private void UpgradeDamage()
    {
        int upgradedDamage = (int)currentGunDataType + 1;

        GameEnums.GunDataType upgradedGunData = (GameEnums.GunDataType)upgradedDamage;
        //int cost = CustomizationHandler.ShopCosts.ItemsCost(upgradedGunData.ToString());
        if (PlayerStaticRunTimeData.coins >= 300)
        {
            for (int i = 0; i < PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations.Length; i++)
            {
                if (PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations[i].locationPath.ToString() == gunPoint.locationPath)
                {
                    PlayerStaticRunTimeData.playerFirePointData.gunsConfigurations[i].gunDataType = upgradedGunData;
                }
            }
            damageStat.GetComponent <Slider>().value += 0.35f;
            PlayerStaticRunTimeData.coins            -= 300;
        }

        PlayerDataDebug.RefreshStatistics();
    }
Ejemplo n.º 10
0
    private void SelectGun()
    {
        CustomizationState.Instance.RefreshPlayerStats();

        CustomizationHandler.Instance.StartCoroutine(CustomizationHandler.Instance.CameraTracking(Camera.main.transform.position, transform.position + gunPoint.gunsLocation.up * 2 + gunPoint.gunsLocation.forward * 2, gunPoint.gunsLocation.position));

        FirePointData.GunConfiguration ConfigFromPath = PlayerStaticRunTimeData.playerTruckData.firePointData.GetConfigOnLocation(gunPoint.locationPath);

        if (ConfigFromPath.gunType != GameEnums.Gun.None)
        {
            menuHandler.customization.RateOfFireStat.SetActive(true);
            menuHandler.customization.DamageStat.SetActive(true);
            menuHandler.customization.TargetingSpeedStat.SetActive(true);

            currentGunDataType = ConfigFromPath.gunDataType;
            int    gunType          = (int)currentGunDataType;
            char[] typeNumbersChars = gunType.ToString().ToCharArray();


            menuHandler.customization.RateOfFireStat.GetComponent <Slider>().value     = typeNumbersChars[0] - 48;
            menuHandler.customization.DamageStat.GetComponent <Slider>().value         = typeNumbersChars[1] - 48;
            menuHandler.customization.TargetingSpeedStat.GetComponent <Slider>().value = typeNumbersChars[2] - 48;

            menuHandler.customization.RateOfFireStat.GetComponentInChildren <Button>().onClick.AddListener(() => UpgradeRateOfFire());
            menuHandler.customization.DamageStat.GetComponentInChildren <Button>().onClick.AddListener(() => UpgradeDamage());
            menuHandler.customization.TargetingSpeedStat.GetComponentInChildren <Button>().onClick.AddListener(() => UpgradeTargetingSpeed());

            menuHandler.customization.RateOfFireStat.GetComponentInChildren <Button>().GetComponentInChildren <Text>().text     = UpgradeRateOfFireCost();
            menuHandler.customization.DamageStat.GetComponentInChildren <Button>().GetComponentInChildren <Text>().text         = UpgradeDamageCost();
            menuHandler.customization.TargetingSpeedStat.GetComponentInChildren <Button>().GetComponentInChildren <Text>().text = UpgradeTargetingSpeedCost();
        }

        menuHandler.customization.ChangeGunButton.SetActive(true);
        menuHandler.customization.ChangeGunButton.GetComponent <Button>().onClick.AddListener(() => ChangeGun());

        menuHandler.BackButton.GetComponent <Button>().onClick.RemoveAllListeners();
        menuHandler.BackButton.GetComponent <Button>().onClick.AddListener(() => BackToGunsOverView());

        CustomizationHandler.Instance.ShopGunButtonsRenderSetActive(false);
    }
Ejemplo n.º 11
0
    public void BuyGun(GameEnums.Gun guntype)
    {
        int cost = CustomizationHandler.Instance.shopCosts.ItemsCost(guntype.ToString());

        if (PlayerStaticRunTimeData.coins >= cost)
        {
            FirePointData.GunConfiguration PlayerConfigFromPath        = PlayerStaticRunTimeData.playerTruckData.firePointData.GetConfigOnLocation(gunPoint.locationPath);
            FirePointData.GunConfiguration CustomizationConfigFromPath = PlayerStaticRunTimeData.customizationTruckData.firePointData.GetConfigOnLocation(gunPoint.locationPath);

            PlayerConfigFromPath.gunType     = gunTypeToBuy;
            PlayerConfigFromPath.gunDataType = GameEnums.GunDataType.LrLdLs;

            CustomizationConfigFromPath.gunType     = gunTypeToBuy;
            CustomizationConfigFromPath.gunDataType = GameEnums.GunDataType.LrLdLs;

            currentGunDataType = GameEnums.GunDataType.LrLdLs;

            PlayerStaticRunTimeData.coins -= cost;
            PlayerStaticDataHandler.SaveData(PlayerStaticRunTimeData.playerTruckData, new PlayerSessionData(0, 0, 0));

            menuHandler.customization.BuyButton.GetComponentInChildren <Text>().text = "";

            menuHandler.customization.ChangeGunButton.GetComponent <Button>().onClick.RemoveAllListeners();

            menuHandler.customization.BuyButton.SetActive(false);
            menuHandler.customization.BuyButton.GetComponent <Button>().onClick.RemoveAllListeners();
            menuHandler.customization.RateOfFireStat.GetComponentInChildren <Button>().onClick.RemoveAllListeners();
            menuHandler.customization.DamageStat.GetComponentInChildren <Button>().onClick.RemoveAllListeners();
            menuHandler.customization.TargetingSpeedStat.GetComponentInChildren <Button>().onClick.RemoveAllListeners();

            menuHandler.customization.GunInfoWindow.SetActive(false);

            SelectGun();
        }
        else
        {
            WarningWindow.Instance.ShowWarning(WarningStrings.DontHaveMoney());
        }
    }
Ejemplo n.º 12
0
 public void SetGunData(GameEnums.GunDataType gunData)
 {
     this.gunData = DataReturnersHolder.Instance.TurretGunDataReturner.GetData(gunData.ToString()) as GunData;
 }
Ejemplo n.º 13
0
    public void SetUpDatas()
    {
        for (int i = 0; i < datas.Length; i++)
        {
            //datas[i].name = System.Enum.GetNames(typeof(GameEnums.GunDataType))[i];

            //string assetPath = AssetDatabase.GetAssetPath(datas[i].GetInstanceID());
            //AssetDatabase.RenameAsset(assetPath, System.Enum.GetNames(typeof(GameEnums.GunDataType))[i]);
            //AssetDatabase.SaveAssets();

            Debug.Log($"Name of data = {datas[i].name} and it would be {System.Enum.GetNames(typeof(GameEnums.GunDataType))[i].ToString()}");

            GameEnums.GunDataType value = (GameEnums.GunDataType)System.Enum.Parse(typeof(GameEnums.GunDataType), System.Enum.GetNames(typeof(GameEnums.GunDataType))[i]);
            int dataTypeValue           = (int)value;
            Debug.Log($"dataType value = {dataTypeValue} and it would be {value.ToString() + (int)value}");
            char[] dataTypeChars = dataTypeValue.ToString().ToCharArray();
            for (int j = 0; j < dataTypeChars.Length; j++)
            {
                Debug.Log($"<color=red> {dataTypeChars[j] - 48} </color>");
            }
            //RateOfFire
            if (dataTypeChars[0] - 48 == 1)
            {
                datas[i].rateofFire = lowRateOfFireValue;
            }
            else if (dataTypeChars[0] - 48 == 2)
            {
                datas[i].rateofFire = mediumRateOfFireValue;
            }
            else if (dataTypeChars[0] - 48 == 3)
            {
                datas[i].rateofFire = highRateOfFireValue;
            }
            //Damage
            if (dataTypeChars[1] - 48 == 1)
            {
                datas[i].battleUnit = LowDamageBattleUnitName;
            }
            else if (dataTypeChars[1] - 48 == 2)
            {
                datas[i].battleUnit = MediumDamageBattleUnitName;
            }
            else if (dataTypeChars[1] - 48 == 3)
            {
                datas[i].battleUnit = HighDamageBattleUnitName;
            }
            //Accuracy
            if (dataTypeChars[2] - 48 == 1)
            {
                datas[i].targetingSpeed = lowTargetingSpeedValue;
            }
            else if (dataTypeChars[2] - 48 == 2)
            {
                datas[i].targetingSpeed = mediumTargetingSpeedValue;
            }
            else if (dataTypeChars[2] - 48 == 3)
            {
                datas[i].targetingSpeed = highTargetingSpeedValue;
            }
        }

        SetUpDataReturner();

        //AssetDatabase.SaveAssets();
    }