public PlayerLevelUpPossibilitiesChosen( Guid playerId, FreeSkillPoint newFreeSkillPoint) { NewFreeSkillPoint = newFreeSkillPoint; PlayerId = playerId; }
private bool HasPlayerFreeSkillForChosenSkill( SkillReadModel newSkill, FreeSkillPoint freeSkillType) { switch (freeSkillType) { case FreeSkillPoint.Normal: return(PlayerCanPickNormalSkill(newSkill)); case FreeSkillPoint.Double: return(PlayerCanPickDoubleSkill(newSkill)); case FreeSkillPoint.PlusOneArmorOrMovement: return(PlayerCanPickArmorOrMovement(newSkill)); case FreeSkillPoint.PlusOneAgility: return(PlayerCanPickAgility(newSkill)); case FreeSkillPoint.PlusOneStrength: return(PlayerCanPickPlusOneStrength(newSkill)); default: return(false); } }
public DomainResult RegisterLevelUpSkillPointRoll(FreeSkillPoint freeSkillPoint) { if (ChoosableSkillPoints < 1) { return(DomainResult.Error(new PlayerIsNotLeveledUpAndHasNoFreeSkillPoints())); } var playerLevelUpPossibilitiesChosen = new PlayerLevelUpPossibilitiesChosen(PlayerId, freeSkillPoint); Apply(playerLevelUpPossibilitiesChosen); return(DomainResult.Ok(playerLevelUpPossibilitiesChosen)); }
private IEnumerable <FreeSkillPoint> RemoveBiggerThan(IEnumerable <FreeSkillPoint> skillPoints, FreeSkillPoint normal) { var freeSkillPoints = skillPoints.ToList(); var smallest = freeSkillPoints.Where(s => s >= normal).Min(); freeSkillPoints.Remove(smallest); return(freeSkillPoints); }
private static PlayerLevelUpPossibilitiesChosen PlayerChoseLevelUp(FreeSkillPoint freeSkillPoint = default(FreeSkillPoint)) { return(new PlayerLevelUpPossibilitiesChosen(Guid.NewGuid(), freeSkillPoint)); }
public RegisterLevelUpSkillPointRollCommand(FreeSkillPoint freeSkillPoint) { FreeSkillPoint = freeSkillPoint; }