private void GenerateSpecialTrainings(Team team) { foreach (SpecialTrainingDefinition def in mContext.SpecialTrainingDefinitions) { SpecialTraining tr = new SpecialTraining(); tr.SpecialTrainingDefinitionID = def.SpecialTrainingDefinitionID; tr.Team = team; tr.IsCompleted = false; tr.EnergyCurrent = 0; mContext.SpecialTrainings.InsertOnSubmit(tr); } }
private Team GenerateTeamFromPredefinedTeamID(int predefinedTeamID) { var predefinedTeam = (from pr in mContext.PredefinedTeams where pr.PredefinedTeamID == predefinedTeamID select pr).FirstOrDefault(); if (predefinedTeam == null) throw new Exception("Unknown predefinedTeamID: " + predefinedTeamID.ToString()); Team ret = new Team(); var predefinedSoccerPlayers = from prSP in mContext.PredefinedSoccerPlayers where prSP.PredefinedTeamID == predefinedTeamID select prSP; int defPos = 1; int medPos = 4; int delPos = 6; int subsPos = 100; foreach (PredefinedSoccerPlayer prSoccerPlayer in predefinedSoccerPlayers) { SoccerPlayer newSoccerPlayer = new SoccerPlayer(); newSoccerPlayer.Team = ret; newSoccerPlayer.Name = prSoccerPlayer.Name; newSoccerPlayer.Type = prSoccerPlayer.Type; if (prSoccerPlayer.IsSubstitute) newSoccerPlayer.FieldPosition = subsPos++; else { if (prSoccerPlayer.Type == 0) newSoccerPlayer.FieldPosition = 0; else if (prSoccerPlayer.Type == 1) newSoccerPlayer.FieldPosition = defPos++; else if (prSoccerPlayer.Type == 2) newSoccerPlayer.FieldPosition = medPos++; else if (prSoccerPlayer.Type == 3) newSoccerPlayer.FieldPosition = delPos++; } newSoccerPlayer.Number = prSoccerPlayer.Number; newSoccerPlayer.Power = 0; newSoccerPlayer.Sliding = 0; newSoccerPlayer.Weight = 0; mContext.SoccerPlayers.InsertOnSubmit(newSoccerPlayer); } if (defPos != 4) Log.log(MAINSERVICE, "Fallo en la defensa, generando equipo: " + predefinedTeam.Name); if (medPos != 6) Log.log(MAINSERVICE, "Fallo en el medio, generando equipo: " + predefinedTeam.Name); if (delPos != 8) Log.log(MAINSERVICE, "Fallo en la delantera, generando equipo: " + predefinedTeam.Name); ret.Formation = "3-2-2"; ret.XP = 0; ret.TrueSkill = 0; ret.Mean = DEFAULT_INITIAL_MEAN; ret.StandardDeviation = DEFAULT_INITIAL_STANDARD_DEVIATION; ret.SkillPoints = 500; ret.Energy = 100; ret.Fitness = 50; ret.PredefinedTeamID = predefinedTeamID; return ret; }
private void detach_Teams(Team entity) { this.SendPropertyChanging(); entity.PredefinedTeam = null; }