public int GetPartyIndex(int index)
    {
        MultiBattleData multiBattleData = ClassSingleton <MultiBattleData> .Instance;

        string[] playerUserMonsterIds = multiBattleData.PlayerUserMonsterIds;
        GameWebAPI.RespData_WorldMultiStartInfo         respData_WorldMultiStartInfo = this.RespData_WorldMultiStartInfo;
        GameWebAPI.RespData_WorldMultiStartInfo.Party[] party = respData_WorldMultiStartInfo.party;
        for (int i = 0; i < party.Length; i++)
        {
            if (this.IsExistUserMonster(party[i].userMonsters, playerUserMonsterIds[index]))
            {
                return(i);
            }
        }
        return(-1);
    }
Exemple #2
0
    private void SetData()
    {
        MultiBattleData instance = ClassSingleton <MultiBattleData> .Instance;

        instance.IsSimulator    = true;
        instance.MyPlayerUserId = this.myPlayerUserId;
        if (this.maxAttackTime <= 2)
        {
            global::Debug.LogError("Attack待ちMAX時間(maxAttackTime)が2以下ですが宜しいですか?");
        }
        instance.MaxAttackTime = this.maxAttackTime;
        if (this.hurryUpAttackTime <= 1)
        {
            global::Debug.LogError("Attack急かす時間(hurryUpAttackTime)が1以下ですが宜しいですか?");
        }
        instance.HurryUpAttackTime = this.hurryUpAttackTime;
    }
Exemple #3
0
    private void InitInfo()
    {
        this.multiBattleData    = ClassSingleton <MultiBattleData> .Instance;
        this.isMockBattle       = !(this.multiBattleData.MockBattleUserCode == "0");
        this.previousUserStatus = this.multiBattleData.PvPUserDatas.Where((MultiBattleData.PvPUserData item) => item.userStatus.userId == this.multiBattleData.MyPlayerUserId).Select((MultiBattleData.PvPUserData item) => item.userStatus).First <GameWebAPI.ColosseumUserStatus>();
        this.pvpResultData      = this.multiBattleData.BattleEndResponse;
        foreach (GameWebAPI.RespDataMA_ColosseumRankM.ColosseumRank colosseumRank in MasterDataMng.Instance().RespDataMA_ColosseumRankMaster.colosseumRankM)
        {
            this.rankDataDict.Add(colosseumRank.colosseumRankId, colosseumRank);
        }
        this.getClusterLabel.text  = "0";
        this.fluctuateDpLabel.text = "0";
        GameWebAPI.RespDataMA_ColosseumRankM.ColosseumRank colosseumRank2 = this.rankDataDict[this.previousUserStatus.colosseumRankId.ToString()];
        this.currentDpLabel.text = this.previousUserStatus.score.ToString();
        bool flag = this.multiBattleData.BattleResult == 1;

        if (flag && !this.isMockBattle)
        {
            this.nowTotalWin = this.previousUserStatus.winTotal + 1;
        }
        else
        {
            this.nowTotalWin = this.previousUserStatus.winTotal;
        }
        this.totalWinNum.text = string.Format(StringMaster.GetString("MyColosseumTotalWinNum"), this.nowTotalWin.ToString());
        if (this.isMockBattle)
        {
            this.nextRankupWinNum.text = string.Empty;
        }
        else if (this.pvpResultData.battleRecord != null)
        {
            this.nextRankupWinNum.text = string.Format(StringMaster.GetString("ColosseumRankAGroup"), this.pvpResultData.battleRecord.count, this.pvpResultData.battleRecord.winPercent);
        }
        else
        {
            this.nextRankupWinNum.text = string.Format(StringMaster.GetString("NextRankupNum"), int.Parse(colosseumRank2.maxScore) + 1 - this.nowTotalWin);
        }
        this.rankSprite.spriteName = MultiTools.GetPvPRankSpriteName(int.Parse(colosseumRank2.colosseumRankId));
        this.UpdateItemNum();
    }
    public int GetMonsterIndex(int index)
    {
        MultiBattleData multiBattleData = ClassSingleton <MultiBattleData> .Instance;

        string[] playerUserMonsterIds = multiBattleData.PlayerUserMonsterIds;
        GameWebAPI.RespData_WorldMultiStartInfo         respData_WorldMultiStartInfo = this.RespData_WorldMultiStartInfo;
        GameWebAPI.RespData_WorldMultiStartInfo.Party[] party = respData_WorldMultiStartInfo.party;
        int partyIndex = this.GetPartyIndex(index);

        GameWebAPI.Common_MonsterData[] userMonsters = party[partyIndex].userMonsters;
        for (int i = 0; i < userMonsters.Length; i++)
        {
            if (userMonsters[i] != null)
            {
                if (userMonsters[i].userMonsterId == playerUserMonsterIds[index])
                {
                    return(i);
                }
            }
        }
        return(-1);
    }
Exemple #5
0
    private void SetData()
    {
        MultiBattleData instance = ClassSingleton <MultiBattleData> .Instance;

        instance.IsSimulator    = true;
        instance.MyPlayerUserId = this.myPlayerUserId;
        instance.PvPUserDatas   = this.pvpUsers;
        if (this.maxAttackTime <= 2)
        {
            global::Debug.LogError("Attack待ちMAX時間(maxAttackTime)が2以下ですが宜しいですか?");
        }
        instance.MaxAttackTime = this.maxAttackTime;
        if (this.hurryUpAttackTime <= 1)
        {
            global::Debug.LogError("Attack急かす時間(hurryUpAttackTime)が1以下ですが宜しいですか?");
        }
        instance.HurryUpAttackTime = this.hurryUpAttackTime;
        if (this.maxRoundNum <= 0)
        {
            global::Debug.LogError("シミュレータのラウンド数(maxRoundNum)が0以下ですが宜しいですか?");
        }
        ClassSingleton <MultiBattleData> .Instance.MaxRoundNum = this.maxRoundNum;
    }
Exemple #6
0
    public IEnumerator SetDrops(bool isSkip = false, Action callBack = null)
    {
        this.index = 0;
        this.time  = 0f;
        this.isPlayIconAnimation = false;
        this.iconAnimationList   = new List <UIWidget>();
        if (!isSkip)
        {
            yield return(new WaitForSeconds(0.6f));
        }
        switch (this.data.dropType)
        {
        case GUIListDropItemParts.DropType.Luck:
            this.AddIconAnimationList(this.luckIcons);
            break;

        case GUIListDropItemParts.DropType.Owner:
            this.AddIconAnimationList(this.ownerRewardIcon);
            break;

        case GUIListDropItemParts.DropType.Multi:
            this.AddIconAnimationList(this.multiIcons);
            break;

        case GUIListDropItemParts.DropType.LuckMulti:
        {
            this.AddIconAnimationList(this.luckIcons);
            GUIListDropItemParts.LuckDropUserInfo luckDropUserInfo = this.GetLuckDropUserInfo(0, this.data.multiLuckDropUserId);
            if (luckDropUserInfo != null)
            {
                int             luckPlayerIcon = 0;
                MultiBattleData instance       = ClassSingleton <MultiBattleData> .Instance;
                string[]        array          = instance.MultiUsers.Select((MultiUser item) => item.userId).Distinct <string>().ToArray <string>();
                int             num            = (array == null) ? 0 : array.Length;
                for (int i = 0; i < num; i++)
                {
                    if (luckDropUserInfo.userId == array[i])
                    {
                        luckPlayerIcon = i;
                        break;
                    }
                }
                GameObject gameObject = this.goLuckPlayerIcons;
                BattleResultLuckPlayerIcon component = gameObject.GetComponent <BattleResultLuckPlayerIcon>();
                component.SetLuckPlayerIcon(luckPlayerIcon);
            }
            break;
        }

        case GUIListDropItemParts.DropType.Challenge:
            this.AddIconAnimationList(this.challengeIcon);
            break;

        case GUIListDropItemParts.DropType.EventChip:
            this.AddIconAnimationList(this.eventChipDropIcon);
            break;
        }
        PresentBoxItem presentBoxItem  = this.dropItemItems;
        int            assetCategoryId = (int)this.data.assetCategoryId;

        presentBoxItem.SetItem(assetCategoryId.ToString(), this.data.assetValue.ToString(), "1", false, null);
        this.dropItemItems.gameObject.SetActive(this.data.isEndOpenAnimation);
        this.dropNumLabel.text = "× " + this.data.assetNum;
        this.AddIconAnimationList(this.dropNumLabel);
        if (!isSkip)
        {
            yield return(new WaitForSeconds(0.1f));
        }
        if (callBack != null)
        {
            callBack();
        }
        yield break;
    }