Exemplo n.º 1
0
 public override void PostAttributeExecute(CAbilityAttribute attribute)
 {
     //     if (attribute.Id == (int)AttributeId.Health)
     //   {
     //    if (Health < 0)
     //   {
     //target dead
     //  }
     //   }
 }
Exemplo n.º 2
0
 public SwordPowerAttributeSet(SwordPrimaryAttributeSet primary)
 {
     CriticalChance          = new CriticalChanceAttribute(primary);
     CriticalMultiplier      = new CriticalMultiplierAttribute(primary);
     PhysicalPowerMultiplier = new PhysicalPowerMultiplierAttribute(primary);
     SpellPowerMultiplier    = new SpellPowerMultiplierAttribute(primary);
     MindPowerMultiplier     = new SpellPowerMultiplierAttribute(primary);
     ArmorPenetration        = new ArmorPenetrationAttribute(primary);
     SmashChance             = new SmashChanceAttribute(primary);
 }
Exemplo n.º 3
0
        /** 力量 */
        //public float Strength => StrengthBase + StrengthAddOn;
        // public float StrengthBase=> m_gm.GetStrengthBase(m_class, m_level);

        /** 敏捷 */
        // public float Agility => AgilityBase + AgilityAddOn;
        // public float AgilityBase=> m_gm.GetAgilityBase(m_class, m_level);
        ///
        /** 智力 */
        // public float Intelligence => IntelligenceBase + IntelligenceAddOn;
        // public float IntelligenceBase=> m_gm.GetIntelligenceBase(m_class, m_level);
        /// <summary>
        /// 物理防御
        /// </summary>
        //   public float ArmorReduction=> ArmorReductionBase + ArmorReductionAddOn;
        //   public float ArmorReductionBase => m_gm.GetArmorReductionBase(m_class, Strength, m_initArmorReduction);
        /** 物理攻击 */
        //  public float PhysicalDamage=> PhysicalDamageBase + PhysicalDamageAddOn;
        // public float PhysicalDamageBase=> m_gm.GetPhysicalDamageBase(m_class, Strength, Agility, Intelligence, m_initPhysicDamage);
        /** 暴击率  0 -- 100*/
        // public float CritChance=> CritChanceBase + CritChanceAddOn;
        // public float CritChanceBase=> m_gm.GetCritChanceBase(m_class, Agility);
        /** 暴击系数 */
        //   public float CritMultiplier=> CritMultiplierBase + CritMultiplierAddOn;
        //   public float CritMultiplierBase=> m_gm.GetCritMultiplierBase(m_class, Strength, Agility, Intelligence);
        /** 闪避 0 -- 100 */
        //   public float DodgeChance=> DodgeChanceBase + DodgeChanceAddOn;
        //  public float DodgeChanceBase=> m_gm.GetDodgeChanceBase(m_class, Agility);
        /** 最大血量 */
        //  public float MaxHealth=> MaxHealthBase * (1.0f + MaxHealthFactor) + MaxHealthAddOn;
        //   public float MaxHealthBase=> m_gm.GetMaxHealthBase(m_class, Strength, m_initMaxHealth);
        /** 血量自动恢复 */
        //   public float HealthRecover=> HealthRecoverBase + HealthRecoverAddOn;
        //  public float HealthRecoverBase=> m_gm.GetHealthRecoverBase(m_class, Strength, m_initHealthRecover);
        /** 最大蓝量 */
        //  public float MaxMana=> MaxManaBase * (1.0f + MaxManaFactor) + MaxManaAddOn;
        //  public float MaxManaBase=> m_gm.GetMaxManaBase(m_class, Intelligence, m_initMaxMana);
        /** 蓝量自动恢复 */
        //  public float ManaRecover=> ManaRecoverBase + ManaRecoverAddOn;
        // public float ManaRecoverBase=> m_gm.GetManaRecoverBase(m_class, Intelligence, m_initManaRecover);
        public override void PreAttributeChange(CAbilityAttribute attribute, float newValue)
        {
            //  if (attribute.Id == (int)AttributeId.Health)
            //  {
            //     float maxHealth = MaxHealth;
            //   newValue = Mathf.Clamp(newValue, 0, maxHealth);
            //attribute.SetValue(newValue);
            //  }

            //  if (attribute.Id == (int)AttributeId.Mana)
            //  {
            //     float maxMana = MaxMana;
            //     newValue = Mathf.Clamp(newValue, 0, maxMana);
            //attribute.SetValue(newValue);
            //    }
        }
Exemplo n.º 4
0
        public void InitFromClassAndRace(ActorBornAttributeMeta classMeta, ActorBornAttributeMeta raceMeta)
        {
            //所有一级属性的基础值都是10, 然后根据种族和职业进行修正
            float baseValue = 0f;
            float v1        = 0;

            v1       = classMeta.Strength + raceMeta.Strength + baseValue;
            Strength = new CAbilityAttribute((int)PrimaryAttribute.Strength, v1);

            v1        = classMeta.Dexterity + raceMeta.Dexterity + baseValue;
            Dexterity = new CAbilityAttribute((int)PrimaryAttribute.Dexterity, v1);

            v1           = classMeta.Constitution + raceMeta.Constitution + baseValue;
            Constitution = new CAbilityAttribute((int)PrimaryAttribute.Constitution, v1);

            v1           = classMeta.Intelligence + raceMeta.Intelligence + baseValue;
            Intelligence = new CAbilityAttribute((int)PrimaryAttribute.Intelligence, v1);

            v1        = classMeta.Willpower + raceMeta.Willpower + baseValue;
            Willpower = new CAbilityAttribute((int)PrimaryAttribute.Willpower, v1);

            v1   = classMeta.Luck + raceMeta.Luck + baseValue;
            Luck = new CAbilityAttribute((int)PrimaryAttribute.Luck, v1);
        }