public Skill(DbSkill dbSkill, byte skillNumber, int cooldown) { Number = skillNumber; CooldownInSeconds = cooldown; // DB values willl be stored. SkillId = dbSkill.SkillId; SkillLevel = dbSkill.SkillLevel; Type = dbSkill.TypeDetail; TargetType = dbSkill.TargetType; ResetTime = dbSkill.ResetTime; KeepTime = dbSkill.KeepTime; CastTime = dbSkill.ReadyTime * 250; NeedSP = dbSkill.SP; NeedMP = dbSkill.MP; NeedWeapon1 = dbSkill.NeedWeapon1 == 1; NeedWeapon2 = dbSkill.NeedWeapon2 == 1; NeedWeapon3 = dbSkill.NeedWeapon3 == 1; NeedWeapon4 = dbSkill.NeedWeapon4 == 1; NeedWeapon5 = dbSkill.NeedWeapon5 == 1; NeedWeapon6 = dbSkill.NeedWeapon6 == 1; NeedWeapon7 = dbSkill.NeedWeapon7 == 1; NeedWeapon8 = dbSkill.NeedWeapon8 == 1; NeedWeapon9 = dbSkill.NeedWeapon9 == 1; NeedWeapon10 = dbSkill.NeedWeapon10 == 1; NeedWeapon11 = dbSkill.NeedWeapon11 == 1; NeedWeapon12 = dbSkill.NeedWeapon12 == 1; NeedWeapon13 = dbSkill.NeedWeapon13 == 1; NeedWeapon14 = dbSkill.NeedWeapon14 == 1; NeedWeapon15 = dbSkill.NeedWeapon15 == 1; NeedShield = dbSkill.NeedShield == 1; }
/// <inheritdoc /> public void Save(IPlayerEntity player) { var skillsSet = from x in _database.Skills.Where(x => x.CharacterId == player.PlayerData.Id).AsNoTracking().ToList() join s in player.SkillTree.Skills on new { x.SkillId, x.CharacterId } equals new { s.SkillId, s.CharacterId } select new { DbSkill = x, PlayerSkill = s }; foreach (var skillToUpdate in skillsSet) { skillToUpdate.DbSkill.Level = (byte)skillToUpdate.PlayerSkill.Level; _database.Skills.Update(skillToUpdate.DbSkill); } foreach (SkillInfo skill in player.SkillTree.Skills) { if (!skill.DatabaseId.HasValue && skill.Level > 0) { var newSkill = new DbSkill { SkillId = skill.SkillId, Level = (byte)skill.Level, CharacterId = player.PlayerData.Id }; _database.Skills.Add(newSkill); } } _database.SaveChanges(); }
public override void LoadModel(DbBase entity) { DbSkill skill = entity as DbSkill; this.id = skill.id; this.name = skill.name; }
public static ApiSkill ToApiSkill(this DbSkill skill) { return(new ApiSkill { Id = skill.Id, Name = skill.Name, Description = skill.Description }); }
public IHttpActionResult GetSkill(int id) { DbSkill skill = this.db.Skills.Find(id); if (skill == null) { return(this.NotFound()); } return(this.Ok(skill.ToApiSkill())); }
public static ConquerSkill Create(uint _owner, ushort _id, ushort _level, uint _exp = 0) { var db = new DbSkill() { ID = _id, Level = _level, Experience = _exp, Owner = _owner, PreviousLevel = 0, }; return(new ConquerSkill(db)); }
public Skill(DbSkill dbSkill, byte skillNumber, int cooldown) { Number = skillNumber; CooldownInSeconds = cooldown; // DB values will be stored. SkillId = dbSkill.SkillId; SkillLevel = dbSkill.SkillLevel; Type = dbSkill.TypeDetail; TargetType = dbSkill.TargetType; ResetTime = dbSkill.ResetTime; KeepTime = dbSkill.KeepTime; CastTime = dbSkill.ReadyTime * 250; TypeAttack = dbSkill.TypeAttack; StateType = dbSkill.StateType; DamageType = dbSkill.DamageType; DamageHP = dbSkill.DamageHP; DamageSP = dbSkill.DamageSP; DamageMP = dbSkill.DamageMP; HealHP = dbSkill.HealHP; HealMP = dbSkill.HealMP; HealSP = dbSkill.HealSP; NeedSP = dbSkill.SP; NeedMP = dbSkill.MP; NeedWeapon1 = dbSkill.NeedWeapon1 == 1; NeedWeapon2 = dbSkill.NeedWeapon2 == 1; NeedWeapon3 = dbSkill.NeedWeapon3 == 1; NeedWeapon4 = dbSkill.NeedWeapon4 == 1; NeedWeapon5 = dbSkill.NeedWeapon5 == 1; NeedWeapon6 = dbSkill.NeedWeapon6 == 1; NeedWeapon7 = dbSkill.NeedWeapon7 == 1; NeedWeapon8 = dbSkill.NeedWeapon8 == 1; NeedWeapon9 = dbSkill.NeedWeapon9 == 1; NeedWeapon10 = dbSkill.NeedWeapon10 == 1; NeedWeapon11 = dbSkill.NeedWeapon11 == 1; NeedWeapon12 = dbSkill.NeedWeapon12 == 1; NeedWeapon13 = dbSkill.NeedWeapon13 == 1; NeedWeapon14 = dbSkill.NeedWeapon14 == 1; NeedWeapon15 = dbSkill.NeedWeapon15 == 1; NeedShield = dbSkill.NeedShield == 1; UseSuccessValue = dbSkill.SuccessType == SuccessType.SuccessBasedOnValue; SuccessValue = dbSkill.SuccessValue; Element = dbSkill.Element; ApplyRange = dbSkill.ApplyRange; MultiAttack = dbSkill.MultiAttack; ShouldClearAfterDeath = dbSkill.FixRange == ClearAfterDeath.Clear; }
public Skill Add(Skill skill) { DbSkill dbSkill = DbSkill.FromModel(skill); dbSkill = _context.Skills .Add(dbSkill) .Entity; try { _context.SaveChanges(); } catch (DbUpdateException) { throw new ArgumentException("Unable to create skill with such data!"); } return(dbSkill.ToModel()); }
public Skill DeleteByName(String skillName) { DbSkill dbSkill = _context.Skills. SingleOrDefault(s => s.Name == skillName) ?? throw new ArgumentException($"No skill with name {skillName}!");; dbSkill = _context.Skills .Remove(dbSkill) .Entity; try { _context.SaveChanges(); } catch (DbUpdateException) { throw new ArgumentException("Unable to delete skill with such name!"); } return(dbSkill.ToModel()); }
public Skill(DbSkill dbSkill, byte skillNumber, int cooldown) { Number = skillNumber; CooldownInSeconds = cooldown; _dbSkill = dbSkill; }
public ConquerSkill(DbSkill _skill) { Database = _skill; Info = ServerDatabase.Context.MagicType.GetMagicTypeBySkill(this); }