public void SaveDbStaticSkill(DbStaticSkill DbStaticSkill) { if (DbStaticSkill.Id == 0) { context.DbStaticSkills.Add(DbStaticSkill); } else { var editMe = context.DbStaticSkills.Find(DbStaticSkill.Id); if (editMe != null) { // dbEntry.Name = DbStaticSkill.Name; // dbEntry.Message = DbStaticSkill.Message; // dbEntry.TimeStamp = DbStaticSkill.TimeStamp; } } context.SaveChanges(); }
private static (bool, string) GiveSkillToPlayerWithSuccess(int playerId, int skillSourceId) { ISkillRepository skillRepo = new EFSkillRepository(); IDbStaticSkillRepository skillSourceRepo = new EFDbStaticSkillRepository(); DbStaticSkill skill = skillSourceRepo.DbStaticSkills.SingleOrDefault(s => s.Id == skillSourceId); var ghost = skillRepo.Skills.FirstOrDefault(s => s.OwnerId == playerId && s.SkillSourceId == skill.Id); if (ghost == null) //player does not have this skill yet; add it { DomainRegistry.Repository.Execute(new CreateSkill { ownerId = playerId, skillSourceId = skill.Id }); var output = ""; output += skill.DiscoveryMessage; return(true, output + " <b>Congratulations, you have learned a new spell, " + skill.FriendlyName + ".</b>"); } else // player already has this skill, so add its charges/duration { return(false, "You discovered the spell '" + skill.FriendlyName + "' but unfortunately you already knew it."); } }