private IEnumerator DoInitialize()
    {
        if (MonoBehaviourSingleton <InGameRecorder> .IsValid() && MonoBehaviourSingleton <InGameRecorder> .I.players.Count > 0)
        {
            LoadingQueue load_queue = new LoadingQueue(this);
            LoadObject   lo         = load_queue.Load(RESOURCE_CATEGORY.UI, "QuestResultDirector", false);
            List <InGameRecorder.PlayerRecord> playerRecords = MonoBehaviourSingleton <InGameRecorder> .I.players;
            int m = 0;
            while (m < playerRecords.Count)
            {
                InGameRecorder.PlayerRecord p = playerRecords[m];
                if (p == null || p.playerLoadInfo == null)
                {
                    playerRecords.RemoveAt(m);
                }
                else
                {
                    m++;
                }
            }
            players = MonoBehaviourSingleton <InGameRecorder> .I.CreatePlayerModels();

            winnder_voice_id = 0;
            if (players != null)
            {
                winnder_voice_id = players[0].GetVoiceId(ACTION_VOICE_ID.HAPPY_01);
                load_queue.CacheActionVoice(winnder_voice_id, null);
            }
            if (load_queue.IsLoading())
            {
                yield return((object)load_queue.Wait());
            }
            while (true)
            {
                bool wait = false;
                int  l    = 0;
                for (int k = players.Length; l < k; l++)
                {
                    if (players[l].isLoading)
                    {
                        wait = true;
                        break;
                    }
                }
                if (!wait)
                {
                    break;
                }
                yield return((object)null);
            }
            int j = 0;
            for (int i = players.Length; j < i; j++)
            {
                players[j].animator.set_applyRootMotion(false);
            }
            director         = ResourceUtility.Realizes(lo.loadedObject, MonoBehaviourSingleton <StageManager> .I._transform, -1).GetComponent <QuestResultDirector>();
            director.players = players;
        }
        base.Initialize();
    }
 public override void Initialize()
 {
     //IL_013e: Unknown result type (might be due to invalid IL or missing references)
     detailUserID  = 0;
     isSelfData    = false;
     isQuestResult = false;
     if (record == null)
     {
         record = (GameSection.GetEventData() as InGameRecorder.PlayerRecord);
         if (record != null)
         {
             detailUserID     = ((record.id == 0) ? MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id : record.charaInfo.userId);
             isSelfData       = (detailUserID == MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id);
             mSelectedDegrees = ((!isSelfData) ? record.charaInfo.selectedDegrees : MonoBehaviourSingleton <UserInfoManager> .I.selectedDegreeIds);
             if (MonoBehaviourSingleton <GameSceneManager> .I.GetCurrentSceneName().Contains("InGame"))
             {
                 isQuestResult = true;
             }
             else if (!isChangeEquip)
             {
                 AlwaysNowStatusModel = true;
             }
         }
     }
     selfCharaEquipSetNo = ((!isSelfData) ? (-1) : MonoBehaviourSingleton <UserInfoManager> .I.userStatus.eSetNo);
     transRoot           = SetPrefab((Enum)UI.OBJ_EQUIP_SET_ROOT, "FriendInfoBase");
     this.StartCoroutine(DoInitialize());
 }
Пример #3
0
	public bool OnRecvRoomLeaved(Party_Model_RoomLeaved model)
	{
		Logd("OnRecvRoomLeaved. cid={0}", model.cid);
		if (model.cid != MonoBehaviourSingleton<UserInfoManager>.I.userInfo.id)
		{
			string text = string.Empty;
			PartyModel.SlotInfo slotInfoByUserId = MonoBehaviourSingleton<PartyManager>.I.GetSlotInfoByUserId(model.cid);
			if (slotInfoByUserId != null)
			{
				text = slotInfoByUserId.userInfo.name;
			}
			else if (MonoBehaviourSingleton<InGameRecorder>.IsValid())
			{
				InGameRecorder.PlayerRecord playerByUserId = MonoBehaviourSingleton<InGameRecorder>.I.GetPlayerByUserId(model.cid);
				if (playerByUserId != null)
				{
					text = playerByUserId.charaInfo.name;
				}
			}
			if (chatConnection != null && !string.IsNullOrEmpty(text))
			{
				chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.CHAT, 6u, text));
			}
		}
		return true;
	}
Пример #4
0
    public bool OnRecvRoomJoined(Lounge_Model_RoomJoined model)
    {
        //IL_00b0: Unknown result type (might be due to invalid IL or missing references)
        //IL_00b5: Unknown result type (might be due to invalid IL or missing references)
        //IL_00d2: Unknown result type (might be due to invalid IL or missing references)
        Logd("OnRecvRoomJoined. cid={0}", model.cid);
        if (MonoBehaviourSingleton <LoungeManager> .IsValid())
        {
            MonoBehaviourSingleton <LoungeManager> .I.OnRecvRoomJoined(model.cid);
        }
        if (model.cid != MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id && MonoBehaviourSingleton <LoungeManager> .IsValid())
        {
            if (!MonoBehaviourSingleton <LoungeManager> .IsValid())
            {
                return(true);
            }
            if (MonoBehaviourSingleton <LoungeManager> .I.HomePeople == null)
            {
                return(true);
            }
            if (MonoBehaviourSingleton <LoungeManager> .I.HomePeople.selfChara == null)
            {
                return(true);
            }
            Vector3 position = MonoBehaviourSingleton <LoungeManager> .I.HomePeople.selfChara._transform.get_position();

            LOUNGE_ACTION_TYPE actionType = MonoBehaviourSingleton <LoungeManager> .I.HomePeople.selfChara.GetActionType();

            RoomPosition(model.cid, position, actionType);
        }
        if (FieldManager.IsValidInGame())
        {
            Protocol.Try(delegate
            {
                MonoBehaviourSingleton <LoungeMatchingManager> .I.SendInfo(delegate
                {
                }, false);
            });
        }
        string empty = string.Empty;

        LoungeModel.SlotInfo slotInfoByUserId = MonoBehaviourSingleton <LoungeMatchingManager> .I.GetSlotInfoByUserId(model.cid);

        if (slotInfoByUserId != null)
        {
            empty = slotInfoByUserId.userInfo.name;
        }
        else if (MonoBehaviourSingleton <InGameRecorder> .IsValid())
        {
            InGameRecorder.PlayerRecord playerByUserId = MonoBehaviourSingleton <InGameRecorder> .I.GetPlayerByUserId(model.cid);

            if (playerByUserId != null)
            {
                empty = playerByUserId.charaInfo.name;
            }
        }
        return(true);
    }
Пример #5
0
 public override void Initialize()
 {
     isChangeEquip = true;
     isVisualMode  = false;
     InGameRecorder.PlayerRecord playerRecord = InitializePlayerRecord();
     object[] array = GameSection.GetEventData() as object[];
     GameSection.SetEventData(new object[3]
     {
         playerRecord,
         array[0],
         array[1]
     });
     base.Initialize();
 }
Пример #6
0
 public InGameRecorder.PlayerRecord CreateInGameRecord(CharaInfo _charaInfo)
 {
     if (_charaInfo != null)
     {
         charaInfo = _charaInfo;
     }
     InGameRecorder.PlayerRecord playerRecord = new InGameRecorder.PlayerRecord();
     playerRecord.id               = ((!isSelf) ? charaInfo.userId : 0);
     playerRecord.isNPC            = false;
     playerRecord.isSelf           = isSelf;
     playerRecord.charaInfo        = charaInfo;
     playerRecord.beforeLevel      = charaInfo.level;
     playerRecord.playerLoadInfo   = PlayerLoadInfo.FromCharaInfo(charaInfo, true, true, true, false);
     playerRecord.animID           = playerRecord.playerLoadInfo.weaponModelID / 1000;
     playerRecord.givenTotalDamage = givenTotalDamage;
     return(playerRecord);
 }
    private void OnQuery_FOLLOW()
    {
        int playerIndex = (int)GameSection.GetEventData();

        InGameRecorder.PlayerRecord record = playerRecords[playerIndex];
        if (record == null)
        {
            GameSection.StopEvent();
        }
        else if (MonoBehaviourSingleton <FriendManager> .I.followNum >= MonoBehaviourSingleton <UserInfoManager> .I.userStatus.maxFollow)
        {
            GameSection.ChangeEvent("FOLLOW_MAX", null);
        }
        else
        {
            GameSection.StayEvent();
            List <int> list = new List <int>();
            list.Add(record.charaInfo.userId);
            MonoBehaviourSingleton <FriendManager> .I.SendFollowUser(list, delegate(Error err, List <int> follow_list)
            {
                if (err == Error.None)
                {
                    GameSection.ChangeStayEvent("FOLLOW_DIALOG", new object[1]
                    {
                        record.charaInfo.name
                    });
                    Transform root = itemsL[playerIndex];
                    SetButtonSprite(root, UI.BTN_FOLLOW, "ResultfollowBtnOff", true);
                    SetButtonEnabled(root, UI.BTN_FOLLOW, false);
                    if (MonoBehaviourSingleton <CoopApp> .IsValid())
                    {
                        CoopApp.UpdateField(null);
                    }
                }
                else if (follow_list.Count == 0)
                {
                    GameSection.ChangeStayEvent("FAILED_FOLLOW", new object[1]
                    {
                        record.charaInfo.name
                    });
                }
                GameSection.ResumeEvent(err == Error.None, null);
            });
        }
    }
 public override void Initialize()
 {
     charaInfo = (GameSection.GetEventData() as FriendCharaInfo);
     InGameRecorder.PlayerRecord playerRecord = new InGameRecorder.PlayerRecord();
     playerRecord.id             = charaInfo.userId;
     playerRecord.isNPC          = false;
     playerRecord.isSelf         = false;
     playerRecord.playerLoadInfo = PlayerLoadInfo.FromCharaInfo(charaInfo, true, true, true, true);
     playerRecord.animID         = PLAYER_ANIM_TYPE.GetStatus(charaInfo.sex);
     playerRecord.charaInfo      = charaInfo;
     GameSection.SetEventData(new object[3]
     {
         playerRecord,
         false,
         false
     });
     base.Initialize();
 }
Пример #9
0
    public bool OnRecvRoomLeaved(Lounge_Model_RoomLeaved model)
    {
        Logd("OnRecvRoomLeaved. cid={0}", model.cid);
        if (model.cid != MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id)
        {
            string text = string.Empty;
            LoungeModel.SlotInfo slotInfoByUserId = MonoBehaviourSingleton <LoungeMatchingManager> .I.GetSlotInfoByUserId(model.cid);

            if (slotInfoByUserId != null)
            {
                text = slotInfoByUserId.userInfo.name;
            }
            else if (MonoBehaviourSingleton <InGameRecorder> .IsValid())
            {
                InGameRecorder.PlayerRecord playerByUserId = MonoBehaviourSingleton <InGameRecorder> .I.GetPlayerByUserId(model.cid);

                if (playerByUserId != null)
                {
                    text = playerByUserId.charaInfo.name;
                }
            }
            if (chatConnection != null && !string.IsNullOrEmpty(text))
            {
                chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 11u, text));
            }
        }
        if (FieldManager.IsValidInGame())
        {
            Protocol.Try(delegate
            {
                MonoBehaviourSingleton <LoungeMatchingManager> .I.SendInfo(delegate
                {
                }, false);
            });
        }
        if (MonoBehaviourSingleton <LoungeManager> .IsValid())
        {
            MonoBehaviourSingleton <LoungeManager> .I.OnRecvRoomLeaved(model.cid);
        }
        return(true);
    }
Пример #10
0
    protected InGameRecorder.PlayerRecord InitializePlayerRecord()
    {
        UserInfo   userInfo   = MonoBehaviourSingleton <UserInfoManager> .I.userInfo;
        UserStatus userStatus = MonoBehaviourSingleton <UserInfoManager> .I.userStatus;

        InGameRecorder.PlayerRecord playerRecord = new InGameRecorder.PlayerRecord();
        playerRecord.id     = 0;
        playerRecord.isNPC  = false;
        playerRecord.isSelf = true;
        MonoBehaviourSingleton <StatusManager> .I.CreateLocalEquipSetData();

        playerRecord.playerLoadInfo     = CreatePlayerLoadInfo(userStatus.eSetNo);
        playerRecord.animID             = 90;
        playerRecord.charaInfo          = new CharaInfo();
        playerRecord.charaInfo.userId   = userInfo.id;
        playerRecord.charaInfo.name     = userInfo.name;
        playerRecord.charaInfo.comment  = userInfo.comment;
        playerRecord.charaInfo.code     = userInfo.code;
        playerRecord.charaInfo.level    = userStatus.level;
        playerRecord.charaInfo.atk      = userStatus.atk;
        playerRecord.charaInfo.def      = userStatus.def;
        playerRecord.charaInfo.hp       = userStatus.hp;
        playerRecord.charaInfo.faceId   = userStatus.faceId;
        playerRecord.charaInfo.sex      = userStatus.sex;
        playerRecord.charaInfo.equipSet = null;
        MonoBehaviourSingleton <StatusManager> .I.CreateLocalVisualEquipData();

        StatusManager.LocalVisual localVisualEquip = MonoBehaviourSingleton <StatusManager> .I.GetLocalVisualEquip();

        playerRecord.charaInfo.aId      = (int)((localVisualEquip.visualItem[0] != null) ? localVisualEquip.visualItem[0].tableID : 0);
        playerRecord.charaInfo.hId      = (int)((localVisualEquip.visualItem[1] != null) ? localVisualEquip.visualItem[1].tableID : 0);
        playerRecord.charaInfo.rId      = (int)((localVisualEquip.visualItem[2] != null) ? localVisualEquip.visualItem[2].tableID : 0);
        playerRecord.charaInfo.lId      = (int)((localVisualEquip.visualItem[3] != null) ? localVisualEquip.visualItem[3].tableID : 0);
        playerRecord.charaInfo.showHelm = (localVisualEquip.isVisibleHelm ? 1 : 0);
        equipSetMax = MonoBehaviourSingleton <StatusManager> .I.EquipSetNum();

        return(playerRecord);
    }
Пример #11
0
    public Player CreatePlayer(int id, CreatePlayerInfo create_info, bool self, Vector3 pos, float dir, PlayerTransferInfo transfer_info = null, PlayerLoader.OnCompleteLoad callback = null)
    {
        //IL_001d: Unknown result type (might be due to invalid IL or missing references)
        //IL_0022: Expected O, but got Unknown
        //IL_003a: Unknown result type (might be due to invalid IL or missing references)
        //IL_010a: Unknown result type (might be due to invalid IL or missing references)
        //IL_0123: Unknown result type (might be due to invalid IL or missing references)
        //IL_01c9: Unknown result type (might be due to invalid IL or missing references)
        if (create_info.charaInfo == null)
        {
            Log.Error("StageObjectManager.CreatePlayer() charaInfo is NULL");
            return(null);
        }
        GameObject val = new GameObject();

        val.set_name("Player:" + id);
        val.get_transform().set_parent(base._transform);
        int num = 0;

        if (create_info.extentionInfo != null)
        {
            num = create_info.extentionInfo.npcDataID;
        }
        bool   flag = num > 0;
        Player player;

        if (self)
        {
            player = val.AddComponent <Self>();
            if (MonoBehaviourSingleton <InGameCameraManager> .IsValid())
            {
                MonoBehaviourSingleton <InGameCameraManager> .I.target = player._transform;
            }
        }
        else if (flag)
        {
            player = val.AddComponent <NonPlayer>();
            NonPlayer nonPlayer = player as NonPlayer;
            nonPlayer.npcId = num;
            if (Singleton <NPCTable> .IsValid())
            {
                nonPlayer.npcTableData = Singleton <NPCTable> .I.GetNPCData(num);
            }
            nonPlayer.lv       = create_info.extentionInfo.npcLv;
            nonPlayer.lv_index = create_info.extentionInfo.npcLvIndex;
        }
        else
        {
            player = val.AddComponent <Player>();
        }
        player.id = id;
        player._transform.set_position(pos);
        player._transform.set_eulerAngles(new Vector3(0f, dir, 0f));
        player.SetState(create_info, transfer_info);
        if (MonoBehaviourSingleton <InGameRecorder> .IsValid())
        {
            int userId = create_info.charaInfo.userId;
            InGameRecorder.PlayerRecord playerRecord = player.record = MonoBehaviourSingleton <InGameRecorder> .I.GetPlayer(id, userId);

            playerRecord.isSelf      = self;
            playerRecord.isNPC       = flag;
            playerRecord.charaInfo   = create_info.charaInfo;
            playerRecord.beforeLevel = create_info.charaInfo.level;
        }
        if (self)
        {
            player.AddController <SelfController>();
        }
        else if (flag)
        {
            player.AddController <NpcController>();
        }
        if (MonoBehaviourSingleton <InGameSettingsManager> .IsValid())
        {
            EffectPlayProcessor component = MonoBehaviourSingleton <InGameSettingsManager> .I.get_gameObject().GetComponent <EffectPlayProcessor>();

            if (component != null && component.effectSettings != null)
            {
                player.effectPlayProcessor = val.AddComponent <EffectPlayProcessor>();
                player.effectPlayProcessor.effectSettings = component.effectSettings;
            }
        }
        PlayerLoadInfo playerLoadInfo = new PlayerLoadInfo();

        if (player.weaponData != null)
        {
            playerLoadInfo.SetEquipWeapon(create_info.charaInfo.sex, (uint)player.weaponData.eId);
        }
        playerLoadInfo.Apply(create_info.charaInfo, false, true, true, true);
        player.Load(playerLoadInfo, callback);
        player.OnSetPlayerStatus(create_info.charaInfo.level, create_info.charaInfo.atk, create_info.charaInfo.def, create_info.charaInfo.hp, false, transfer_info);
        player.StartFieldBuff(MonoBehaviourSingleton <FieldManager> .IsValid() ? MonoBehaviourSingleton <FieldManager> .I.currentFieldBuffId : 0);
        return(player);
    }
    private IEnumerator DoInitialize()
    {
        if (MonoBehaviourSingleton <InGameRecorder> .IsValid())
        {
            playerRecords = MonoBehaviourSingleton <InGameRecorder> .I.players;
            int i = 0;
            while (i < playerRecords.Count)
            {
                InGameRecorder.PlayerRecord p = playerRecords[i];
                if (p == null || p.playerLoadInfo == null)
                {
                    playerRecords.RemoveAt(i);
                }
                else
                {
                    i++;
                }
            }
            playersModels = MonoBehaviourSingleton <InGameRecorder> .I.CreatePlayerModels();

            while (PlayerLoader.IsLoading(playersModels))
            {
                yield return((object)null);
            }
            Transform camera_t = MonoBehaviourSingleton <AppMain> .I.mainCameraTransform;
            if (MonoBehaviourSingleton <InGameRecorder> .I.isVictory)
            {
                int k = 0;
                for (int j = playersModels.Length; k < j; k++)
                {
                    PlayerLoader player = playersModels[k];
                    if (player != null)
                    {
                        player.animator.set_applyRootMotion(false);
                        player.animator.Play("win_loop");
                    }
                }
                camera_t.set_position(camera_t.get_position() + camera_t.get_forward() * 1.5f);
            }
            else if (playersModels.Length > 0)
            {
                OutGameSettingsManager.QuestResult param = MonoBehaviourSingleton <OutGameSettingsManager> .I.questResult;
                SoundManager.RequestBGM(10, false);
                PlayerLoader player_loader = playersModels[0];
                if (player_loader != null)
                {
                    Transform player_t = player_loader.get_transform();
                    cameraTarget = player_t.get_position() + new Vector3(0f, param.loseCameraHeight, 0f);
                    Vector3    camera_pos = cameraTarget + player_t.get_forward() * param.loseCameraDistance;
                    Quaternion camera_rot = Quaternion.LookRotation(cameraTarget - camera_pos);
                    camera_t.set_position(camera_pos);
                    camera_t.set_rotation(camera_rot);
                    PlayerAnimCtrl.Get(default_anim: (Random.Range(0, 2) != 0) ? PLCA.IDLE_02 : PLCA.IDLE_01, _animator: player_loader.animator, on_play: null, on_change: null, on_end: null);
                }
                MonoBehaviourSingleton <AppMain> .I.mainCamera.set_fieldOfView(param.cameraFieldOfView);
            }
        }
        itemsL[0] = GetCtrl(UI.OBJ_ITEM_POS_L_0);
        itemsL[1] = GetCtrl(UI.OBJ_ITEM_POS_L_1);
        itemsL[2] = GetCtrl(UI.OBJ_ITEM_POS_L_2);
        itemsL[3] = GetCtrl(UI.OBJ_ITEM_POS_L_3);
        itemsR[0] = GetCtrl(UI.OBJ_ITEM_POS_R_0);
        itemsR[1] = GetCtrl(UI.OBJ_ITEM_POS_R_1);
        itemsR[2] = GetCtrl(UI.OBJ_ITEM_POS_R_2);
        itemsR[3] = GetCtrl(UI.OBJ_ITEM_POS_R_3);
        if (MonoBehaviourSingleton <InGameManager> .IsValid())
        {
            SetActive((Enum)UI.SPR_TITLE, !MonoBehaviourSingleton <InGameManager> .I.IsRush());
            SetActive((Enum)UI.SPR_RUSH_TITLE, MonoBehaviourSingleton <InGameManager> .I.IsRush());
        }
        base.Initialize();
    }
    public override void UpdateUI()
    {
        //IL_0490: Unknown result type (might be due to invalid IL or missing references)
        //IL_0515: Unknown result type (might be due to invalid IL or missing references)
        //IL_0529: Unknown result type (might be due to invalid IL or missing references)
        if (MonoBehaviourSingleton <InGameRecorder> .IsValid())
        {
            float num = (float)MonoBehaviourSingleton <InGameRecorder> .I.GetTotalEnemyHP();

            int   num2 = 0;
            float num3 = 0f;
            score_list.Clear();
            score_truncation_list.Clear();
            for (int i = 0; i < 4; i++)
            {
                int   num4 = 0;
                float num5 = 0f;
                if (playerRecords != null && i < playerRecords.Count && playerRecords[i] != null)
                {
                    InGameRecorder.PlayerRecord playerRecord = playerRecords[i];
                    float num6 = (float)playerRecord.givenTotalDamage / num * 100f;
                    num4 = (int)num6;
                    num5 = num6 - (float)num4;
                    if (num2 + num4 > 100)
                    {
                        num4 = 100 - num2;
                    }
                    num2 += num4;
                }
                score_list.Add(num4);
                score_truncation_list.Add(num5);
                num3 += num5;
            }
            int num7 = (int)(num3 + 0.1f);
            if (num7 > 0 && num2 < 100)
            {
                for (int j = 0; j < 4; j++)
                {
                    int        num8 = Mathf.CeilToInt(score_truncation_list[j]);
                    List <int> list;
                    List <int> list2 = list = score_list;
                    int        index;
                    int        index2 = index = j;
                    index         = list[index];
                    list2[index2] = index + num8;
                    num7         -= num8;
                    num2         += num8;
                    if (num7 <= 0 || num2 >= 100)
                    {
                        break;
                    }
                }
            }
            InGameRecorder.CheckAndRepairIsSelf(ref playerRecords);
            for (int k = 0; k < 4; k++)
            {
                if (playerRecords != null && k < playerRecords.Count && playerRecords[k] != null)
                {
                    InGameRecorder.PlayerRecord playerRecord2 = playerRecords[k];
                    if (playerRecord2 != null && playerRecord2.charaInfo != null)
                    {
                        bool flag = false;
                        if (playerRecord2.id != 0 && playerRecord2.charaInfo.userId != 0)
                        {
                            QuestResultUserCollection.ResultUserInfo userInfo = MonoBehaviourSingleton <QuestManager> .I.resultUserCollection.GetUserInfo(playerRecord2.charaInfo.userId);

                            if (userInfo != null && !userInfo.CanSendFollow)
                            {
                                flag = true;
                            }
                            if (userInfo != null)
                            {
                                playerRecord2.charaInfo.selectedDegrees = userInfo.selectDegrees;
                            }
                        }
                        Transform root = SetPrefab(itemsL[k], "QuestResultFriendItemL", true);
                        if (playerRecord2.isSelf)
                        {
                            playerRecord2.charaInfo.selectedDegrees = MonoBehaviourSingleton <UserInfoManager> .I.selectedDegreeIds;
                        }
                        CharaInfo.ClanInfo clanInfo = playerRecord2.charaInfo.clanInfo;
                        if (clanInfo == null)
                        {
                            clanInfo        = new CharaInfo.ClanInfo();
                            clanInfo.clanId = -1;
                            clanInfo.tag    = string.Empty;
                        }
                        bool isSameTeam = clanInfo.clanId > -1 && MonoBehaviourSingleton <GuildManager> .I.guildData != null && clanInfo.clanId == MonoBehaviourSingleton <GuildManager> .I.guildData.clanId;
                        if (playerRecord2.isSelf)
                        {
                            SetSupportEncoding(root, UI.LBL_NAME_OWN, true);
                            SetLabelText(root, UI.LBL_NAME_OWN, Utility.GetNameWithColoredClanTag(clanInfo.tag, playerRecord2.charaInfo.name, playerRecord2.id == MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id, isSameTeam));
                            SetActive(root, UI.LBL_NAME, false);
                        }
                        else
                        {
                            SetSupportEncoding(root, UI.LBL_NAME, true);
                            SetLabelText(root, UI.LBL_NAME, Utility.GetNameWithColoredClanTag(clanInfo.tag, playerRecord2.charaInfo.name, playerRecord2.id == MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id, isSameTeam));
                            SetActive(root, UI.LBL_NAME_OWN, false);
                        }
                        if (!playerRecord2.isNPC)
                        {
                            int num9 = playerRecord2.charaInfo.level;
                            if (playerRecord2.isSelf)
                            {
                                num9 = MonoBehaviourSingleton <UserInfoManager> .I.userStatus.level;
                            }
                            SetLabelText(root, UI.LBL_LEVEL, string.Format(base.sectionData.GetText("LEVEL"), num9));
                        }
                        else
                        {
                            SetActive(root, UI.LBL_LEVEL, false);
                            if (FindCtrl(root, UI.BTN_DETAIL) != null && base.GetComponent <UINoAuto>(root, (Enum)UI.BTN_DETAIL) == null)
                            {
                                FindCtrl(root, UI.BTN_DETAIL).get_gameObject().AddComponent <UINoAuto>();
                            }
                        }
                        SetEvent(root, UI.BTN_DETAIL, "DETAIL", k);
                        if (playerRecord2.isSelf)
                        {
                            SetButtonSprite(root, UI.BTN_DETAIL, "ResultPlatemine", true);
                        }
                        PlayerLoadInfo playerLoadInfo = playerRecord2.playerLoadInfo.Clone();
                        playerLoadInfo.armModelID    = -1;
                        playerLoadInfo.weaponModelID = -1;
                        playerLoadInfo.legModelID    = -1;
                        SetRenderPlayerModel(root, UI.TEX_MODEL, playerLoadInfo, 98, new Vector3(0f, -1.613f, 2.342f), new Vector3(0f, 154f, 0f), true, null);
                        if (playerRecord2.charaInfo.selectedDegrees != null && playerRecord2.charaInfo.selectedDegrees.Count == GameDefine.DEGREE_PART_COUNT)
                        {
                            DegreePlate component = FindCtrl(root, UI.OBJ_DEGREE_PLATE).GetComponent <DegreePlate>();
                            component.Initialize(playerRecord2.charaInfo.selectedDegrees, false, delegate
                            {
                            });
                        }
                        root = SetPrefab(itemsR[k], "QuestResultFriendItemR", true);
                        int num10 = score_list[k] % 10;
                        int num11 = score_list[k] / 10 % 10;
                        int num12 = score_list[k] / 100;
                        SetSprite(root, UI.SPR_NUM_0, num10.ToString("D2"));
                        if (num12 != 0 || num11 != 0)
                        {
                            SetSprite(root, UI.SPR_NUM_1, num11.ToString("D2"));
                        }
                        else
                        {
                            SetActive(root, UI.SPR_NUM_1, false);
                        }
                        if (num12 != 0)
                        {
                            SetSprite(root, UI.SPR_NUM_2, num12.ToString("D2"));
                        }
                        else
                        {
                            SetActive(root, UI.SPR_NUM_2, false);
                        }
                        if (!playerRecord2.isSelf && !playerRecord2.isNPC)
                        {
                            SetEvent(root, UI.BTN_FOLLOW, "FOLLOW", k);
                            if (!flag)
                            {
                                SetButtonSprite(root, UI.BTN_FOLLOW, "ResultfollowBtn", true);
                                SetButtonEnabled(root, UI.BTN_FOLLOW, true);
                            }
                            else
                            {
                                SetButtonSprite(root, UI.BTN_FOLLOW, "ResultfollowBtnOff", true);
                                SetButtonEnabled(root, UI.BTN_FOLLOW, false);
                            }
                        }
                        else
                        {
                            SetActive(root, UI.BTN_FOLLOW, false);
                        }
                    }
                }
                else
                {
                    Transform root2 = SetPrefab(itemsL[k], "QuestResultFriendItemL", true);
                    SetActive(root2, UI.LBL_NAME, false);
                    SetActive(root2, UI.LBL_NAME_OWN, false);
                    SetActive(root2, UI.LBL_LEVEL, false);
                    SetButtonSprite(root2, UI.BTN_DETAIL, "ResultPlateGrey", true);
                    SetButtonEnabled(root2, UI.BTN_DETAIL, false);
                    SetEvent(root2, UI.BTN_DETAIL, "DETAIL", k);
                    SetActive(root2, UI.TEX_MODEL, false);
                    root2 = SetPrefab(itemsR[k], "QuestResultFriendItemR", true);
                    SetActive(root2, UI.SPR_NUM_0, false);
                    SetActive(root2, UI.SPR_NUM_1, false);
                    SetActive(root2, UI.SPR_NUM_2, false);
                    SetActive(root2, UI.SPR_PER, false);
                    SetActive(root2, UI.BTN_FOLLOW, false);
                }
            }
            PlayTween((Enum)UI.OBJ_ITEMS, true, (EventDelegate.Callback)null, true, 0);
        }
    }
    public override void UpdateUI()
    {
        //IL_0306: Unknown result type (might be due to invalid IL or missing references)
        allPointEvents = new PointEventCurrentData();
        allPointEvents.pointRankingData = new PointEventCurrentData.PointResultData();
        isVictory = (MonoBehaviourSingleton <QuestManager> .I.arenaCompData != null);
        SetFullScreenButton((Enum)UI.BTN_SKIP_FULL_SCREEN);
        SetActive((Enum)UI.BTN_NEXT, false);
        SetActive((Enum)UI.BTN_RETRY, false);
        SetActive((Enum)UI.OBJ_TIME, false);
        SetActive((Enum)UI.OBJ_CLEAR_EFFECT_ROOT, false);
        SetActive((Enum)UI.OBJ_CLEAR_EFFECT, false);
        SetActive((Enum)UI.OBJ_RANK_UP_ROOT, false);
        SetActive((Enum)UI.OBJ_CONGRATULATIONS_ROOT, false);
        if (m_isTimeAttack)
        {
            SetActive((Enum)UI.OBJ_REMAIN_TIME, false);
            if (isVictory)
            {
                SetActive((Enum)UI.OBJ_TIME, true);
            }
        }
        string arg  = string.Format(StringTable.Get(STRING_CATEGORY.ARENA, 1u), m_rank.ToString());
        string arg2 = string.Format(StringTable.Get(STRING_CATEGORY.ARENA, 0u), m_group.ToString());

        SetLabelText((Enum)UI.LBL_QUEST_NAME, $"{arg} {arg2}");
        List <QuestCompleteRewardList> arenaRewards = MonoBehaviourSingleton <InGameManager> .I.arenaRewards;
        int num  = 0;
        int num2 = 0;

        for (int j = 0; j < arenaRewards.Count; j++)
        {
            QuestCompleteRewardList questCompleteRewardList = arenaRewards[j];
            QuestCompleteReward     drop        = questCompleteRewardList.drop;
            QuestCompleteReward     breakReward = questCompleteRewardList.breakReward;
            QuestCompleteReward     order       = questCompleteRewardList.order;
            num  += drop.exp + breakReward.exp + order.exp;
            num2 += drop.money + breakReward.money + order.money;
        }
        int my_user_id = MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id;

        InGameRecorder.PlayerRecord playerRecord = MonoBehaviourSingleton <InGameRecorder> .I.players.Find((InGameRecorder.PlayerRecord data) => data.charaInfo.userId == my_user_id);

        if (playerRecord.beforeLevel >= Singleton <UserLevelTable> .I.GetMaxLevel())
        {
            num = 0;
        }
        SetLabelText((Enum)UI.LBL_EXP, num.ToString("N0"));
        SetLabelText((Enum)UI.LBL_REWARD_GOLD, num2.ToString("N0"));
        SetLabelText((Enum)UI.LBL_TIME, MonoBehaviourSingleton <InGameProgress> .I.GetArenaRemainTimeToString());
        SetLabelText((Enum)UI.LBL_CLEAR_TIME, InGameProgress.GetTimeWithMilliSecToString(0f));
        SetActive((Enum)UI.SPR_BESTSCORE, false);
        if (isVictory)
        {
            SetLabelText((Enum)UI.LBL_BEFORE_TIME, InGameProgress.GetTimeWithMilliSecToString((float)(int)MonoBehaviourSingleton <QuestManager> .I.arenaCompData.previousClearMilliSec * 0.001f));
        }
        bool flag = pointShopResultData.Count > 0;

        SetActive((Enum)UI.OBJ_POINT_SHOP_RESULT_ROOT, flag);
        if (flag)
        {
            SetGrid(UI.OBJ_POINT_SHOP_RESULT_ROOT, "QuestResultPointShop", pointShopResultData.Count, true, delegate(int i, Transform t, bool b)
            {
                ResetTween(t, 0);
                PointShopResultData pointShopResultData = base.pointShopResultData[i];
                SetActive(t, UI.OBJ_NORMAL_POINT_SHOP_ROOT, !pointShopResultData.isEvent);
                if (!pointShopResultData.isEvent)
                {
                    SetLabelText(t, UI.LBL_NORMAL_GET_POINT_SHOP, string.Format("+" + StringTable.Get(STRING_CATEGORY.POINT_SHOP, 2u), pointShopResultData.getPoint));
                    SetLabelText(t, UI.LBL_NORMAL_TOTAL_POINT_SHOP, string.Format(StringTable.Get(STRING_CATEGORY.POINT_SHOP, 2u), pointShopResultData.totalPoint));
                    UITexture component = FindCtrl(t, UI.TEX_NORMAL_POINT_SHOP_ICON).GetComponent <UITexture>();
                    ResourceLoad.LoadPointIconImageTexture(component, (uint)pointShopResultData.pointShopId);
                }
                SetActive(t, UI.OBJ_EVENT_POINT_SHOP_ROOT, pointShopResultData.isEvent);
                if (pointShopResultData.isEvent)
                {
                    SetLabelText(t, UI.LBL_EVENT_GET_POINT_SHOP, string.Format("+" + StringTable.Get(STRING_CATEGORY.POINT_SHOP, 2u), pointShopResultData.getPoint));
                    SetLabelText(t, UI.LBL_EVENT_TOTAL_POINT_SHOP, string.Format(StringTable.Get(STRING_CATEGORY.POINT_SHOP, 2u), pointShopResultData.totalPoint));
                    UITexture component2 = FindCtrl(t, UI.TEX_EVENT_POINT_SHOP_ICON).GetComponent <UITexture>();
                    ResourceLoad.LoadPointIconImageTexture(component2, (uint)pointShopResultData.pointShopId);
                }
            });
        }
        this.StartCoroutine(PlayAnimation());
    }