示例#1
0
    // Use this for initialization
    void Start()
    {
        int s = PlayerPrefs.GetInt(string.Format("SkinState_{0}", _skinNum));

        if (s == 1)
        {
            if (PlayerPrefs.GetInt("CurrentSkin") == _skinNum)
            {
                _skinState = SkinState.SS_SELECTED;
            }
            else
            {
                _skinState = SkinState.SS_UNSELECTED;
            }
        }
        else
        {
            _skinState = SkinState.SS_BUY;
        }
        _skinMoneyNum = PlayerPrefs.GetInt(string.Format("SkinPrice_{0}", _skinNum));
        _toggle       = GetComponentInChildren <Toggle> ();
        _text         = GetComponentInChildren <Text> ();
        _text.text    = _skinMoneyNum.ToString();
        SetByState(_skinState);
        Messenger <int> .AddListener(GameEvent.CHANGE_SKIN, OnChangeSkinCallBack);

        Messenger <JsonData> .AddListener(GameEvent.BUY_SKIN, OnBuySkinCallBack);
    }
示例#2
0
    void SetByState(SkinState state)
    {
        switch (state)
        {
        case SkinState.SS_BUY:
        {
            _toggle.gameObject.SetActive(false);
            _text.gameObject.SetActive(true);
            //set _text.text base on _skinNum
        }
        break;

        case SkinState.SS_UNSELECTED:
        {
            _toggle.gameObject.SetActive(true);
            _toggle.isOn = false;
            _text.gameObject.SetActive(false);
        }
        break;

        case SkinState.SS_SELECTED:
        {
            _toggle.gameObject.SetActive(true);
            _toggle.isOn = true;
            _text.gameObject.SetActive(false);
        }
        break;
        }
    }
示例#3
0
 void OnChangeSkinCallBack(int num)
 {
     if (num == _skinNum)
     {
         return;
     }
     if (_toggle.gameObject.activeInHierarchy)
     {
         _toggle.isOn = false;
         _skinState   = SkinState.SS_UNSELECTED;
     }
 }
示例#4
0
    public void OnPointerClickCallBack(BaseEventData data)
    {
        switch (_skinState)
        {
        case SkinState.SS_BUY:
        {
            if (PlayerPrefs.GetInt("Money") >= int.Parse(_text.text))
            {
                Debug.Log("Buy Skin");

                _buyConfirmMask.gameObject.SetActive(true);
                string tiptext = DataManager._languageIndex == 1 ? string.Format("确定消耗\n{0}金币\n购买皮肤?", _skinMoneyNum) : string.Format("Cost\n{0}coins\nto buy skin?", _skinMoneyNum);
                _buyTipInfo.text = tiptext;

                var buttons = _buyConfirmMask.GetComponentsInChildren <Button> ();
                buttons [0].onClick.RemoveAllListeners();
                buttons [0].onClick.AddListener(BuyConfirm);
                buttons [1].onClick.RemoveAllListeners();
                buttons [1].onClick.AddListener(BuyCancle);
            }
            else
            {
                Debug.Log("Not Enough Money");

                GameObject canvas = GameObject.Find("Canvas");
                GameObject tip    = GameObject.Instantiate(_tipPrefab, canvas.transform);
                var        rect   = tip.transform as RectTransform;
                rect.anchoredPosition = new Vector2(0, 0);
                rect.sizeDelta        = new Vector2(Screen.width, Screen.height);
                tip.GetComponentInChildren <Text> ().text = DataManager._languageIndex == 1 ? "金币不足!" : "Not Enough Money";
            }
        }
        break;

        case SkinState.SS_UNSELECTED:
        {
            _toggle.isOn = true;
            _skinState   = SkinState.SS_SELECTED;
            PlayerPrefs.SetInt("CurrentSkin", _skinNum);
            Messenger <int> .Broadcast(GameEvent.CHANGE_SKIN, _skinNum);
        }
        break;

        case SkinState.SS_SELECTED:
            break;
        }
    }
示例#5
0
            protected override DanceMotion ReadTarget(BinaryReader reader, IReadingSession session)
            {
                string         name        = reader.ReadMoostaString();
                int            beatCount   = reader.ReadInt32();
                int            num         = reader.ReadInt32();
                DanceModelInfo sourceModel = (num == 0) ? null : (session.GetObject(num) as DanceModelInfo);

                string[] array = new string[reader.ReadInt32()];
                for (int i = 0; i < array.Length; i++)
                {
                    array[i] = reader.ReadMoostaString();
                }
                string[] array2 = new string[reader.ReadInt32()];
                for (int j = 0; j < array2.Length; j++)
                {
                    array2[j] = reader.ReadMoostaString();
                }
                string[] array3 = new string[reader.ReadInt32()];
                for (int k = 0; k < array3.Length; k++)
                {
                    array3[k] = reader.ReadMoostaString();
                }
                DancePose[] array4 = new DancePose[reader.ReadInt32()];
                for (int l = 0; l < array4.Length; l++)
                {
                    CtVector3D         bodyPos   = new CtVector3D(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle());
                    DancePoseFootState footState = (DancePoseFootState)reader.ReadInt32();
                    BoneState[]        array5    = new BoneState[array2.Length];
                    for (int m = 0; m < array2.Length; m++)
                    {
                        array5[m] = new BoneState(new CtQuaternion(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle()));
                    }
                    SkinState[] array6 = new SkinState[array3.Length];
                    for (int n = 0; n < array3.Length; n++)
                    {
                        array6[n] = new SkinState(reader.ReadSingle());
                    }
                    array4[l] = new DancePose(array2, array5, array3, array6, bodyPos)
                    {
                        FootState = footState
                    };
                }
                return(new DanceMotion(name, beatCount, array4, sourceModel)
                {
                    Tags = array
                });
            }
示例#6
0
    void OnBuySkinCallBack(JsonData res)
    {
        if (_buySkinNum != _skinNum)
        {
            return;
        }
        //if response error == 0
        string str = "";

        if ((int)(res ["error"]) == 0)
        {
            _text.gameObject.SetActive(false);
            _toggle.gameObject.SetActive(true);
            _toggle.isOn = true;
            _skinState   = SkinState.SS_SELECTED;

            PlayerPrefs.SetInt("Money", int.Parse(res ["data"] ["money"].ToString()));
            Messenger.Broadcast(GameEvent.UPDATA_USER_INFO);

            PlayerPrefs.SetInt("CurrentSkin", _skinNum);
            PlayerPrefs.SetInt(string.Format("SkinState_{0}", _skinNum), 1);
            Messenger <int> .Broadcast(GameEvent.CHANGE_SKIN, _skinNum);

            str = "皮肤购买成功!";
        }
        else
        {
            Debug.Log("Buy Skin Error");
            if ((int)(res ["error"]) == 4)
            {
                str = "金币不足!";
            }
            else if ((int)(res ["error"]) == 5)
            {
                str = "皮肤不存在!";
            }
        }
        GameObject canvas = GameObject.Find("Canvas");
        GameObject tip    = GameObject.Instantiate(_tipPrefab, canvas.transform);
        var        rect   = tip.transform as RectTransform;

        rect.anchoredPosition = new Vector2(0, 0);
        rect.sizeDelta        = new Vector2(Screen.width, Screen.height);
        tip.GetComponentInChildren <Text> ().text = str;
    }
示例#7
0
 void CheckState()
 {
     if (value <= -0.5)
     {
         skinState = SkinState.PALE;
     }
     else if (value > -0.5 && value <= 0.1)
     {
         skinState = SkinState.NEUTRAL;
     }
     else if (value > 0.1 && value < 0.5)
     {
         skinState = SkinState.BLUSHING;
     }
     else if (value >= 0.5)
     {
         skinState = SkinState.FURIOUS;
     }
 }
示例#8
0
            protected override DanceMotion ReadTarget(BinaryReader reader, IReadingSession session)
            {
                string name      = reader.ReadMoostaString();
                int    beatCount = reader.ReadInt32();

                string[] array = new string[reader.ReadInt32()];
                for (int i = 0; i < array.Length; i++)
                {
                    array[i] = reader.ReadMoostaString();
                }
                string[] array2 = new string[reader.ReadInt32()];
                for (int j = 0; j < array2.Length; j++)
                {
                    array2[j] = reader.ReadMoostaString();
                }
                string[] array3 = new string[reader.ReadInt32()];
                for (int k = 0; k < array3.Length; k++)
                {
                    array3[k] = reader.ReadMoostaString();
                }
                DancePose[] array4 = new DancePose[reader.ReadInt32()];
                for (int l = 0; l < array4.Length; l++)
                {
                    BoneState[] array5 = new BoneState[array2.Length];
                    for (int m = 0; m < array2.Length; m++)
                    {
                        array5[m] = new BoneState(new CtQuaternion(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle()));
                    }
                    SkinState[] array6 = new SkinState[array3.Length];
                    for (int n = 0; n < array3.Length; n++)
                    {
                        array6[n] = new SkinState(reader.ReadSingle());
                    }
                    array4[l] = new DancePose(array2, array5, array3, array6, CtVector3D.Zero);
                }
                return(new DanceMotion(name, beatCount, array4, null)
                {
                    Tags = array
                });
            }