예제 #1
0
    public override string GetConditionText(long i64ParamVal)
    {
        string           empty          = string.Empty;
        NrPersonInfoUser charPersonInfo = NrTSingleton <NkCharManager> .Instance.GetCharPersonInfo(1);

        if (charPersonInfo == null)
        {
            return(empty);
        }
        int num = 0;

        for (int i = 0; i < 6; i++)
        {
            NkSoldierInfo soldierInfo = charPersonInfo.GetSoldierInfo(i);
            if (soldierInfo != null && soldierInfo.GetSolID() != 0L)
            {
                for (int j = 0; j < 6; j++)
                {
                    int battleSkillUnique = soldierInfo.GetBattleSkillUnique(j);
                    if (0 < battleSkillUnique)
                    {
                        int battleSkillLevel = soldierInfo.GetBattleSkillLevel(battleSkillUnique);
                        if (NrTSingleton <BattleSkill_Manager> .Instance.GetBattleSkillTraining(battleSkillUnique, battleSkillLevel) != null)
                        {
                            if (0 < battleSkillLevel)
                            {
                                num++;
                            }
                            if (base.GetParamVal() <= (long)num)
                            {
                                num = (int)base.GetParamVal();
                                break;
                            }
                        }
                    }
                }
            }
        }
        string textFromQuest_Code = NrTSingleton <NrTextMgr> .Instance.GetTextFromQuest_Code(this.m_szTextKey);

        NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[]
        {
            textFromQuest_Code,
            "count1",
            num,
            "count2",
            base.GetParamVal()
        });

        return(empty);
    }
예제 #2
0
    public override bool CheckCondition(long i64Param, ref long i64ParamVal)
    {
        NrPersonInfoUser charPersonInfo = NrTSingleton <NkCharManager> .Instance.GetCharPersonInfo(1);

        if (charPersonInfo == null)
        {
            return(false);
        }
        int num = 0;

        for (int i = 0; i < 6; i++)
        {
            NkSoldierInfo soldierInfo = charPersonInfo.GetSoldierInfo(i);
            if (soldierInfo != null && soldierInfo.GetSolID() != 0L)
            {
                for (int j = 0; j < 6; j++)
                {
                    int battleSkillUnique = soldierInfo.GetBattleSkillUnique(j);
                    if (0 < battleSkillUnique)
                    {
                        int battleSkillLevel = soldierInfo.GetBattleSkillLevel(battleSkillUnique);
                        if (NrTSingleton <BattleSkill_Manager> .Instance.GetBattleSkillTraining(battleSkillUnique, battleSkillLevel) != null)
                        {
                            if (0 < battleSkillLevel)
                            {
                                num++;
                            }
                            if (base.GetParamVal() <= (long)num)
                            {
                                return(true);
                            }
                        }
                    }
                }
            }
        }
        return(false);
    }
예제 #3
0
    public void SetSeleteSol(long nSolID)
    {
        NrCharUser nrCharUser = NrTSingleton <NkCharManager> .Instance.GetChar(1) as NrCharUser;

        NkSoldierInfo soldierInfoFromSolID = nrCharUser.GetPersonInfo().GetSoldierInfoFromSolID(nSolID);

        if (soldierInfoFromSolID == null)
        {
            base.SetShowLayer(1, true);
            base.SetShowLayer(2, false);
        }
        else
        {
            base.SetShowLayer(1, false);
            base.SetShowLayer(2, true);
            string textFromInterface = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("567");

            string empty = string.Empty;
            NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[]
            {
                textFromInterface,
                "targetname",
                soldierInfoFromSolID.GetName(),
                "count",
                soldierInfoFromSolID.GetLevel().ToString()
            });

            string         text         = string.Empty;
            NrCharKindInfo charKindInfo = soldierInfoFromSolID.GetCharKindInfo();
            if (charKindInfo != null)
            {
                if (charKindInfo.GetCHARKIND_ATTACKINFO().ATTACKTYPE == soldierInfoFromSolID.GetAttackInfo().ATTACKTYPE)
                {
                    text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface(charKindInfo.GetCHARKIND_INFO().SoldierSpec1);
                }
                else
                {
                    text = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface(charKindInfo.GetCHARKIND_INFO().SoldierSpec2);
                }
            }
            string textFromInterface2 = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("992");

            string empty2 = string.Empty;
            NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty2, new object[]
            {
                textFromInterface2,
                "type",
                text
            });

            int    num   = 0;
            string text2 = string.Empty;
            List <BATTLESKILL_TRAINING> battleSkillTrainingGroup = NrTSingleton <BattleSkill_Manager> .Instance.GetBattleSkillTrainingGroup(soldierInfoFromSolID);

            if (battleSkillTrainingGroup != null)
            {
                foreach (BATTLESKILL_TRAINING current in battleSkillTrainingGroup)
                {
                    int nSkillUnique = current.m_nSkillUnique;
                    BATTLESKILL_BASE battleSkillBase = NrTSingleton <BattleSkill_Manager> .Instance.GetBattleSkillBase(nSkillUnique);

                    if (battleSkillBase != null)
                    {
                        if (!soldierInfoFromSolID.IsCostumeEquip() || this.IsCostumeSkill(soldierInfoFromSolID, nSkillUnique))
                        {
                            num   = soldierInfoFromSolID.GetBattleSkillLevel(current.m_nSkillUnique);
                            text2 = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface(battleSkillBase.m_strTextKey);

                            break;
                        }
                    }
                }
            }
            string textFromInterface3 = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1292");

            string empty3 = string.Empty;
            NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty3, new object[]
            {
                textFromInterface3,
                "skillname",
                text2,
                "skilllevel",
                num.ToString()
            });

            this.m_lCharName.Text  = empty;
            this.m_lCharType.Text  = empty2;
            this.m_lSkillInfo.Text = empty3;
        }
        this.GuildBossBattleUserName();
    }