public virtual void CompleteMission(IMission mission) { string type = mission.GetType().Name; switch (type) { case "Easy": this.Endurance -= 20; this.AmmunitionRevision(30); this.Experience += mission.EnduranceRequired; break; case "Medium": this.Endurance -= 50; this.AmmunitionRevision(50); this.Experience += mission.EnduranceRequired; break; case "Hard": this.Endurance -= 80; this.AmmunitionRevision(70); this.Experience += mission.EnduranceRequired; break; } }
private MissionModel GetModel(Data.MissionData data, IMission item) { var model = new MissionModel(); model.Id = item.GetType().FullName; model.Name = item.Name; if (item.IsStopping()) { model.State = MissionRunState.Stopping; } else if (item.IsRunning()) { model.State = MissionRunState.Running; } else { model.State = MissionRunState.Stoped; } model.Inner = item.IsExecuting() ? MissionExecuteState.Busy : MissionExecuteState.Idle; var value = GetValue(item, data); model.Type = value.Type; model.Seconds = value.Seconds; return(model); }
public override string ToString() { return(_mission.GetType().FullName + " " + _mc); }
private static MethodInfo[] GetStepMethods(IMission instance) { return(instance.GetType().GetMethods().Where(m => m.Name.StartsWith("Step")).OrderBy(m => m.Name).ToArray()); }