예제 #1
0
 private void Success()
 {
     if (Network.Mode == Network.EConnectMode.Online)
     {
         MyMetaps.TrackTutorialPoint("SetName");
         MyGrowthPush.registCustomerId(MonoSingleton <GameManager> .Instance.Player.OkyakusamaCode);
     }
     ((Behaviour)this).set_enabled(false);
     this.ActivateOutputLinks(1);
 }
예제 #2
0
        public override void OnSuccess(WWWResult www)
        {
            if (Network.IsError)
            {
                this.OnFailed();
            }
            else
            {
                WebAPI.JSON_BodyResponse <Json_PlayerDataAll> jsonObject = JSONParser.parseJSONObject <WebAPI.JSON_BodyResponse <Json_PlayerDataAll> >(www.text);
                DebugUtility.Assert(jsonObject != null, "res == null");
                Network.RemoveAPI();
                if (jsonObject.body == null)
                {
                    ((Behaviour)this).set_enabled(false);
                    PlayerPrefsUtility.SetInt(PlayerPrefsUtility.HOME_LASTACCESS_PLAYER_LV, 0, false);
                    PlayerPrefsUtility.SetInt(PlayerPrefsUtility.HOME_LASTACCESS_VIP_LV, 0, false);
                    MonoSingleton <GameManager> .Instance.Player.ClearTrophies();

                    this.ActivateOutputLinks(1);
                }
                else
                {
                    GlobalVars.CustomerID = jsonObject.body.cuid;
                    int status = jsonObject.body.status;
                    if (status != 0)
                    {
                        GlobalVars.BanStatus = jsonObject.body.status;
                        if (status == 1)
                        {
                            this.ActivateOutputLinks(5);
                        }
                        else if (jsonObject.body.status > 1)
                        {
                            this.ActivateOutputLinks(6);
                        }
                        ((Behaviour)this).set_enabled(false);
                    }
                    else
                    {
                        GameManager instance           = MonoSingleton <GameManager> .Instance;
                        long        lastConnectionTime = Network.LastConnectionTime;
                        instance.Player.LoginDate     = TimeManager.FromUnixTime(lastConnectionTime);
                        instance.Player.TutorialFlags = jsonObject.body.tut;
                        if (instance.IsRelogin)
                        {
                            try
                            {
                                if (jsonObject.body.player != null)
                                {
                                    instance.Deserialize(jsonObject.body.player);
                                }
                                if (jsonObject.body.items != null)
                                {
                                    instance.Deserialize(jsonObject.body.items);
                                }
                                if (jsonObject.body.units != null)
                                {
                                    instance.Deserialize(jsonObject.body.units);
                                }
                                if (jsonObject.body.parties != null)
                                {
                                    instance.Deserialize(jsonObject.body.parties);
                                }
                                if (jsonObject.body.notify != null)
                                {
                                    instance.Deserialize(jsonObject.body.notify);
                                }
                                if (jsonObject.body.artifacts != null)
                                {
                                    instance.Deserialize(jsonObject.body.artifacts, false);
                                }
                                if (jsonObject.body.skins != null)
                                {
                                    instance.Deserialize(jsonObject.body.skins);
                                }
                                if (jsonObject.body.vs != null)
                                {
                                    instance.Deserialize(jsonObject.body.vs);
                                }
                                if (jsonObject.body.tips != null)
                                {
                                    instance.Tips = ((IEnumerable <string>)jsonObject.body.tips).ToList <string>();
                                }
                            }
                            catch (Exception ex)
                            {
                                DebugUtility.LogException(ex);
                                this.Failure();
                                return;
                            }
                        }
                        else
                        {
                            try
                            {
                                instance.Deserialize(jsonObject.body.player);
                                instance.Deserialize(jsonObject.body.items);
                                instance.Deserialize(jsonObject.body.units);
                                instance.Deserialize(jsonObject.body.parties);
                                instance.Deserialize(jsonObject.body.notify);
                                instance.Deserialize(jsonObject.body.artifacts, false);
                                instance.Deserialize(jsonObject.body.skins);
                                instance.Deserialize(jsonObject.body.vs);
                                if (jsonObject.body.tips != null)
                                {
                                    instance.Tips = ((IEnumerable <string>)jsonObject.body.tips).ToList <string>();
                                }
                            }
                            catch (Exception ex)
                            {
                                DebugUtility.LogException(ex);
                                this.Failure();
                                return;
                            }
                        }
                        ((Behaviour)this).set_enabled(false);
                        GlobalVars.BtlID.Set(jsonObject.body.player.btlid);
                        if (!string.IsNullOrEmpty(jsonObject.body.player.btltype))
                        {
                            GlobalVars.QuestType = QuestParam.ToQuestType(jsonObject.body.player.btltype);
                        }
                        GameUtility.Config_OkyakusamaCode = instance.Player.OkyakusamaCode;
                        if (!PlayerPrefsUtility.HasKey(PlayerPrefsUtility.HOME_LASTACCESS_PLAYER_LV))
                        {
                            PlayerPrefsUtility.SetInt(PlayerPrefsUtility.HOME_LASTACCESS_PLAYER_LV, MonoSingleton <GameManager> .Instance.Player.Lv, false);
                        }
                        if (!PlayerPrefsUtility.HasKey(PlayerPrefsUtility.HOME_LASTACCESS_VIP_LV))
                        {
                            PlayerPrefsUtility.SetInt(PlayerPrefsUtility.HOME_LASTACCESS_VIP_LV, MonoSingleton <GameManager> .Instance.Player.VipRank, false);
                        }
                        instance.PostLogin();
                        PlayerData player = MonoSingleton <GameManager> .Instance.Player;
                        if (player != null)
                        {
                            MyGrowthPush.registCustomerId(player.OkyakusamaCode);
                        }
                        this.ActivateOutputLinks(!string.IsNullOrEmpty(jsonObject.body.player.name) ? 3 : 2);
                    }
                }
            }
        }