Exemple #1
0
        public string GetExceedParamName()
        {
            if (paramName != null)
            {
                return(paramName);
            }
            StringBuilder stringBuilder = new StringBuilder(string.Empty);

            if ((int)atk > 0)
            {
                stringBuilder.Append(StringTable.Format(STRING_CATEGORY.SMITH, 1u, atk));
                stringBuilder.Append(" ");
            }
            if ((int)def > 0)
            {
                stringBuilder.Append(StringTable.Format(STRING_CATEGORY.SMITH, 2u, def));
                stringBuilder.Append(" ");
            }
            if ((int)hp > 0)
            {
                stringBuilder.Append(StringTable.Format(STRING_CATEGORY.SMITH, 3u, hp));
                stringBuilder.Append(" ");
            }
            int i = 0;

            for (int num = atkElement.Length; i < num; i++)
            {
                if (atkElement[i] > 0)
                {
                    stringBuilder.Append(StringTable.Format(STRING_CATEGORY.SMITH, 4u, StringTable.Get(STRING_CATEGORY.ELEMENT, (uint)i), atkElement[i]));
                    stringBuilder.Append(" ");
                }
            }
            int j = 0;

            for (int num2 = defElement.Length; j < num2; j++)
            {
                if (defElement[j] > 0)
                {
                    stringBuilder.Append(StringTable.Format(STRING_CATEGORY.SMITH, 5u, StringTable.Get(STRING_CATEGORY.ELEMENT, (uint)j), defElement[j]));
                    stringBuilder.Append(" ");
                }
            }
            if (skillSlot.slotType != 0)
            {
                stringBuilder.Append(StringTable.Format(STRING_CATEGORY.SMITH, 6u, StringTable.Get(STRING_CATEGORY.SKILL, (uint)skillSlot.slotType)));
                stringBuilder.Append(" ");
            }
            if (this.ability.id != 0)
            {
                AbilityTable.Ability ability = Singleton <AbilityTable> .I.GetAbility((uint)this.ability.id);

                stringBuilder.Append(StringTable.Format(STRING_CATEGORY.SMITH, 7u, ability.name, this.ability.pt));
            }
            paramName = stringBuilder.ToString();
            return(paramName);
        }
Exemple #2
0
    public string GetName()
    {
        AbilityTable.Ability ability = Singleton <AbilityTable> .I.GetAbility(id);

        if (ability == null)
        {
            return(string.Empty);
        }
        return(ability.name);
    }
Exemple #3
0
    public bool IsAbilityOn()
    {
        AbilityDataTable.AbilityData abilityData = Singleton <AbilityDataTable> .I.GetAbilityData(this.ability.id, this.ability.ap);

        if (abilityData == null)
        {
            return(false);
        }
        AbilityTable.Ability ability = Singleton <AbilityTable> .I.GetAbility(this.ability.id);

        return(!abilityData.HasNeedUpdateAbility() && ability.IsActive());
    }
    public bool IsActiveAbility()
    {
        for (int i = 0; i < this.ability.Length; i++)
        {
            AbilityTable.Ability ability = Singleton <AbilityTable> .I.GetAbility(this.ability[i].id);

            if (ability != null && !ability.IsActive())
            {
                return(false);
            }
        }
        return(!HasNeedUpdateAbility());
    }
 public void Clone(AbilityData baseData)
 {
     id                  = baseData.id;
     needAP              = baseData.needAP;
     minNeedAP           = baseData.minNeedAP;
     name                = baseData.name;
     description         = baseData.description;
     descriptionPreGrant = baseData.descriptionPreGrant;
     enableEquipType     = baseData.enableEquipType;
     key2                = baseData.key2;
     m_info              = new AbilityInfo[baseData.m_info.Length];
     for (int i = 0; i < baseData.m_info.Length; i++)
     {
         m_info[i] = baseData.m_info[i].Clone();
     }
     m_cashedInfo    = null;
     m_cashedAbility = null;
 }