Beispiel #1
0
 public SkillDamageAffixData(ISkillDamageStat sd, ISkillDamageStat su, ISkillCostStat cs = null, ISkillCostStat ucs = null)
 {
     this.PowerData = new DamageSkillStat(sd, cs);
     if (cs != null && ucs == null)
     {
         var dsup = (sd as DamageSkillStat).CalculateSkillCosts(sd.Level + 1);
         ucs = new SkillCostStat(dsup);
     }
     this.PowerUp = new DamageSkillStat(su, ucs);
 }
 public DamageSkillStat(ISkillDamageStat ds, ISkillCostStat cs, bool IsCC = false)
 {
     this.From    = ds?.From ?? 0;
     this.To      = ds?.To ?? 0;
     this.Level   = ds?.Level ?? 0;
     this.Tier    = ds?.Tier ?? 0;
     this.Cost    = cs?.Cost ?? 0;
     this.CD      = cs?.CD ?? 0;
     this.Charges = cs?.Charges ?? 1;
     this.IsCC    = IsCC;
 }
Beispiel #3
0
        public Skill(int id, SkillDTO data, ISkillCostStat cs)
        {
            this.Id          = data.Id;
            this.Name        = data.Name;
            this.Description = data.Description;
            this.Tier        = data.Tier;
            this.Level       = data.Level;
            var ds = data.SkillData.PowerData;

            ds.Cost    = cs.Cost;
            ds.CD      = cs.CD;
            ds.Charges = cs.Charges;
            var dsUp = new DamageSkillStat(ds);

            dsUp.Cost    = cs.Cost;
            dsUp.CD      = cs.CD;
            dsUp.Charges = cs.Charges;
            dsUp         = dsUp.CalculateSkillPower(ds.Level + 1).CalculateSkillCosts(ds.Level + 1);
            // var sdad = new SkillDamageAffixData(ds, dsUp, cs);
            data.SkillData.PowerUp = dsUp;
            this.Data = data;
        }
 public SkillCostStat(ISkillCostStat data)
 {
     this.CD      = data?.CD ?? 0;
     this.Cost    = data?.Cost ?? 0;
     this.Charges = data?.Charges ?? 1;
 }
Beispiel #5
0
        public SkillDTO(int id, string name, string description, int level, ISkillDamageAffixData skillStats, ISkillCostStat cs, List <CastTypesEnum> castTypes, List <DamageTypesEnum> damageTypes, List <AffixMetadataEnum> skillMetadata, List <SkillCategoriesEnum> skillCategoriesMetadata, bool IsCC = false)
        {
            this.Id          = id;
            this.Name        = name;
            this.Description = description;
            this.Level       = level != 0 ? level : skillStats?.PowerData?.Level ?? 0;
            this.Tier        = skillStats?.PowerData?.Tier ?? 0;
            if (skillStats != null)
            {
                skillStats.PowerData.CD   = cs?.CD ?? 0;
                skillStats.PowerData.Cost = cs?.Cost ?? 0;
            }
            this.SkillData   = new SkillDamageAffixData(skillStats?.PowerData, skillStats?.PowerUp);
            this.CastTypes   = castTypes ?? new List <CastTypesEnum>();
            this.DamageTypes = damageTypes ?? new List <DamageTypesEnum>();

            // TODO: Remove this after testing/dev phase done
            this.GeneratedByGen          = skillStats?.PowerData?.Tier <= 2 ? IsCC ? 2 : 1 : IsCC ? 4 : 3;
            this.SkillMetadata           = skillMetadata ?? new List <AffixMetadataEnum>();
            this.SkillCategoriesMetadata = skillCategoriesMetadata ?? new List <SkillCategoriesEnum>();
        }