Exemple #1
0
    //добалвение модификаторов (обьектов) в меню магазина

    /*public void AddModificators(int count)
     * {
     *  //получение координат исходного модификатора
     *  RectTransform rectTransform = modificatorToBuy.transform.GetComponent<RectTransform>();
     *  Vector3 firstModificatorrCoord = rectTransform.position;
     *  Vector2 anchorMin = rectTransform.anchorMin;
     *  Vector2 anchorMax = rectTransform.anchorMax;
     *
     *  for (int i = 0; i < count - 1; ++i)
     *  {
     *      //копирование исходного модификатора
     *      GameObject gm = (GameObject)Instantiate(modificatorToBuy, firstModificatorrCoord, Quaternion.identity);
     *      gm.transform.SetParent(modificatorsPanel.transform);
     *      RectTransform rectTransformClone = gm.transform.GetComponent<RectTransform>();
     *
     *      //перемещение клона модификатора вправо
     *      anchorMin.x += 0.32f;
     *      anchorMax.x += 0.32f;
     *
     *      //установка координат клона модификатора
     *      rectTransformClone.anchorMin = anchorMin;
     *      rectTransformClone.anchorMax = anchorMax;
     *      rectTransformClone.localScale = rectTransform.localScale;
     *      rectTransformClone.sizeDelta = rectTransform.sizeDelta;
     *  }
     *
     *  //установка текстуры и цены модификатора в меню магазина
     *  for (int i = 0; i < modificatorsPanel.transform.childCount && i < shopData.modificators.Count; i++)
     *  {
     *      modificatorsPanel.transform.GetChild(i).transform.GetComponent<Image>().sprite = Resources.Load<Sprite>("Sprites/UI/Shop/" + shopData.modificators[i].first);
     *      modificatorsPanel.transform.GetChild(i).transform.GetChild(0).GetComponent<Text>().text = shopData.modificators[i].second.ToString();
     *  }
     * }*/

    //покупка модификатора
    public void BuyModificator(GameObject modificator)
    {
        //получение цены модификатора
        int money = int.Parse(modificator.transform.GetChild(2).transform.GetComponent <Text>().text);

        //поиск номера этого модификатора в списке
        for (int i = 0; i < modificatorsPanel.transform.childCount; ++i)
        {
            if (modificator.transform.GetChild(4).GetComponent <Image>().sprite.name == modificatorsPanel.transform.GetChild(i).GetChild(4).GetComponent <Image>().sprite.name)
            {
                //если у юзера есть такое кол-во денег, происходит покупка
                if (playerData.money >= money)
                {
                    int count = int.Parse(modificator.transform.GetChild(5).GetComponent <Text>().text);
                    count++;
                    modificator.transform.GetChild(5).GetComponent <Text>().text = count.ToString();

                    userShopData.userModificators[i] = count;
                    XMLManager.SaveData <UserShopData>(userShopData, "UserShopData");

                    //уменьшаем деньги у игрока
                    playerData.money -= money;
                    playerData.Save();
                    LoadMoney();

                    AudioManager.PlaySound(AudioManager.Audio.select);
                }
                else
                {
                    NativeAndroidInUnity.ShowToast(ToastText.GetComponent <Text>().text);
                    AudioManager.PlaySound(AudioManager.Audio.refuse);
                }
            }
        }
    }
Exemple #2
0
    //покупка шайбы
    public void BuyChecker(GameObject checker)
    {
        //получение цены шайбы
        int money;

        try
        {
            money = int.Parse(checker.transform.GetChild(2).GetComponent <Text>().text);
        }
        catch
        {
            money = 0;
        }

        //поиск номера этой шайбы в списке
        for (int i = 0; i < checkerPanel.transform.childCount; ++i)
        {
            if (checker.transform.GetChild(4).GetComponent <Image>().sprite.name == checkerPanel.transform.GetChild(i).transform.GetChild(4).GetComponent <Image>().sprite.name)
            {
                //если фишка свободна для покупки (True)
                if (userShopData.userCheckers[i])
                {
                    //если у юзера есть такое кол-во денег, происходит покупка
                    if (playerData.money >= money)
                    {
                        //меняем текст
                        ChangeChecker(checker);

                        //записываем эту фишку как купленную
                        userShopData.userCheckers[i] = false;
                        XMLManager.SaveData <UserShopData>(userShopData, "UserShopData");

                        //уменьшаем деньги у игрока
                        playerData.money -= money;
                        playerData.Save();
                        LoadMoney();

                        StartCoroutine(fadeAudio());
                        AudioManager.PlaySound(AudioManager.Audio.buy);
                    }
                    else
                    {
                        NativeAndroidInUnity.ShowToast(ToastText.GetComponent <Text>().text);
                        AudioManager.PlaySound(AudioManager.Audio.refuse);
                    }
                }
                else
                {
                    if (currenChecker != checker)
                    {
                        ChangeChecker(checker);
                        AudioManager.PlaySound(AudioManager.Audio.select);
                    }
                }
            }
        }
    }
    void Start()
    {
        if (platform == null)
        {
            PlayGamesClientConfiguration config = new PlayGamesClientConfiguration.Builder().Build();
            PlayGamesPlatform.InitializeInstance(config);
            PlayGamesPlatform.DebugLogEnabled = false;
            platform = PlayGamesPlatform.Activate();
        }

        Social.Active.localUser.Authenticate(success =>
        {
            if (!success)
            {
                NativeAndroidInUnity.ShowToast("Sign into Google play games failed");
            }
        });
    }