コード例 #1
0
 public bool AddSkillToCharacter(long numeroPg, long cdAbilita, long? numAcquisti, string attitudine, string specifiche)
 {
     try
     {
         AbilitaManager skillManager = new AbilitaManager(context);
         Personaggio character = GetCharacterByNumber(numeroPg);
         DataAccessLayer.Abilita skill = skillManager.GetSkill(cdAbilita);
         if (character.PossiedeAbilita(cdAbilita))
         {
             if (skill.Multiacquisto == 0)
             {
                 AbilitaPersonaggio newSkill = (from abilitas in character.AbilitaPersonaggios
                                                where abilitas.CdAbilita == cdAbilita
                                                select abilitas).FirstOrDefault();
                 newSkill.NumeroAcquisti = numAcquisti;
             }
         }
         else
         {
             AbilitaPersonaggio newSkill = new AbilitaPersonaggio();
             newSkill.CdAbilita = cdAbilita;
             newSkill.CdAttitudine = attitudine;
             newSkill.NumeroAcquisti = numAcquisti;
             newSkill.NumeroPG = numeroPg;
             newSkill.Specifiche = specifiche;
             character.AbilitaPersonaggios.Add(newSkill);
         }
         return true;
     }
     catch
     {
         return false;
     }
 }
コード例 #2
0
ファイル: InsertAbilita.cs プロジェクト: LoZeno/Holonet3
 private void btnSalva_Click(object sender, EventArgs e)
 {
     if (ValidateForm())
     {
         using (databaseContext = CreateDatabaseContext())
         {
             AbilitaManager manager = new AbilitaManager(databaseContext);
             long costo = long.Parse(mstxCosto.Text);
             bool res = false;
             if (!cdAbilita.HasValue)
             {
                 res = manager.InsertSkillToGroup(cdAttitudine, txtNome.Text.Trim(), txtDescr.Text, chkMultiAcquisto.Checked, costo, chkAvanzato.Checked);
             }
             else
             {
                 res = manager.EditSkill(cdAbilita.Value, txtNome.Text.Trim(), txtDescr.Text, chkMultiAcquisto.Checked, costo, chkAvanzato.Checked); ;
             }
             if (res)
             {
                 databaseContext.SaveChanges();
                 this.Close();
             }
             else
             {
                 MessageBox.Show("Errore nel salvataggio, assicurarsi che la lista non contenga un'abilità con lo stesso nome se la si sta inserendo nuova");
             }
         }
     }
 }
コード例 #3
0
ファイル: InsertLista.cs プロジェクト: LoZeno/Holonet3
 private void btnSalva_Click(object sender, EventArgs e)
 {
     if (ValidateForm())
     {
         using (databaseContext = CreateDatabaseContext())
         {
             AbilitaManager manager = new AbilitaManager(databaseContext);
             bool res = false;
             if (string.IsNullOrWhiteSpace(cdAttitudine))
             {
                 res = manager.InsertNewSkillgroup(txtCodice.Text.Trim().ToUpper(), txtNome.Text.Trim(), txtDescr.Text, (TipoAttitudine)cmbTipoLista.SelectedItem);
             }
             else
             {
                 res = manager.EditSkillGroup(cdAttitudine, txtNome.Text.Trim(), txtDescr.Text, (TipoAttitudine)cmbTipoLista.SelectedItem);
             }
             if (res)
             {
                 databaseContext.SaveChanges();
                 this.Close();
             }
             else
             {
                 MessageBox.Show("Errore nel salvataggio, assicurarsi che il nome della lista non sia già in uso");
             }
         }
     }
 }
コード例 #4
0
ファイル: ControlAbilita.cs プロジェクト: LoZeno/Holonet3
 public override void LoadData()
 {
     using (databaseContext = CreateDatabaseContext())
     {
         AbilitaManager manager = new AbilitaManager(databaseContext);
         var attitudini = manager.GetAllSkillgroups();
         grdListe.DataSource = attitudini;
     }
 }
コード例 #5
0
ファイル: ControlAbilita.cs プロジェクト: LoZeno/Holonet3
 private void LoadSkillGrid()
 {
     if (grdListe.SelectedRows.Count == 1)
     {
         string cdAttitudine = grdListe.SelectedRows[0].Cells["CdAttitudine"].Value.ToString();
         using (databaseContext = CreateDatabaseContext())
         {
             AbilitaManager manager = new AbilitaManager(databaseContext);
             var abilita = manager.GetSkillsFromGroup(cdAttitudine);
             grdAbilita.DataSource = abilita;
         }
     }
     else
     {
         grdAbilita.DataSource = null;
     }
 }
コード例 #6
0
ファイル: AggiungiAbilita.cs プロジェクト: LoZeno/Holonet3
 private void grdAbilita_SelectionChanged(object sender, EventArgs e)
 {
     txtSpecifiche.Text = null;
     if (grdAbilita.SelectedRows.Count > 0)
     {
         txtSpecifiche.Enabled = true;
         long cdAbilita = (long)grdAbilita.SelectedRows[0].Cells["CdAbilita"].Value;
         using (context = CreateDatabaseContext())
         {
             AbilitaManager skillmanager = new AbilitaManager(context);
             PersonaggiManagerNew manager = new PersonaggiManagerNew(context);
             Personaggio character = manager.GetCharacterByNumber(numeroPg);
             DataAccessLayer.Abilita skill = skillmanager.GetSkill(cdAbilita);
             bool isBought = false;
             long minimum = 1;
             if (character.PossiedeAbilita(cdAbilita))
             {
                 isBought = true;
                 AbilitaPersonaggio skillBought = (from comprate in character.AbilitaPersonaggios
                                                   where comprate.CdAbilita == cdAbilita
                                                   select comprate).FirstOrDefault();
                 if (skillBought.NumeroAcquisti.HasValue)
                 {
                     minimum = skillBought.NumeroAcquisti.Value;
                 }
             }
             numVolte.Minimum = minimum;
             if (skill.Costo > freePoints)
             {
                 btnSalva.Enabled = false;
             }
             else
             {
                 if (skill.Multiacquisto == 0)
                 {
                     if (isBought)
                     {
                         btnSalva.Enabled = false;
                     }
                     else
                     {
                         btnSalva.Enabled = true;
                     }
                 }
                 else
                 {
                     numVolte.Enabled = true;
                     numVolte.Maximum = minimum + (skill.Costo / freePoints);
                     btnSalva.Enabled = true;
                 }
             }
         }
     }
     else
     {
         txtSpecifiche.Enabled = false;
         btnSalva.Enabled = false;
     }
 }
コード例 #7
0
ファイル: AggiungiAbilita.cs プロジェクト: LoZeno/Holonet3
 private void cmbAttitudine_SelectedValueChanged(object sender, EventArgs e)
 {
     if (cmbAttitudine.SelectedValue != null)
     {
         string cdAttitudine = cmbAttitudine.SelectedValue.ToString();
         using (context = CreateDatabaseContext())
         {
             AbilitaManager skillmanager = new AbilitaManager(context);
             grdAbilita.DataSource = skillmanager.GetSkillsFromGroup(cdAttitudine);
         }
     }
 }
コード例 #8
0
ファイル: AggiungiAbilita.cs プロジェクト: LoZeno/Holonet3
        private void LoadData()
        {
            using (context = CreateDatabaseContext())
            {
                PersonaggiManagerNew manager = new PersonaggiManagerNew(context);
                Personaggio character = manager.GetCharacterByNumber(numeroPg);
                List<Attitudine> cmbSource = new List<Attitudine>();
                IEnumerable<Attitudine> skillgroups = character.Attitudines;
                foreach (var lista in skillgroups)
                {
                    cmbSource.Add(lista);
                }
                AbilitaManager skillManager = new AbilitaManager(context);
                IEnumerable<Attitudine> expansionGroups;
                if (character.Tipo == 0)
                {
                    expansionGroups = skillManager.GetSkillGroupFromType(DataAccessLayer.Enum.TipoAttitudine.Innesti);
                }
                else
                {
                    expansionGroups = skillManager.GetSkillGroupFromType(DataAccessLayer.Enum.TipoAttitudine.InnestiDroide);
                }
                foreach (var lista in expansionGroups)
                {
                    cmbSource.Add(lista);
                }
                cmbAttitudine.ValueMember = "CdAttitudine";
                cmbAttitudine.DisplayMember = "Nome";
                cmbAttitudine.DataSource = cmbSource;

                freePoints = manager.GetFreeSkillpoints(numeroPg);
                txtFreePoints.Text = freePoints.ToString();
            }
        }
コード例 #9
0
ファイル: InsertAbilita.cs プロジェクト: LoZeno/Holonet3
 private void LoadSkill()
 {
     using (databaseContext = CreateDatabaseContext())
     {
         AbilitaManager manager = new AbilitaManager(databaseContext);
         DataAccessLayer.Abilita skill = manager.GetSkill(cdAbilita.Value);
         txtNome.Text = skill.Nome;
         txtDescr.Text = skill.Descrizione;
         mstxCosto.Text = skill.Costo.ToString();
         chkAvanzato.Checked = skill.BaseAvanzato == 0 ? false : true;
         chkMultiAcquisto.Checked = skill.Multiacquisto == 0 ? false : true;
     }
 }
コード例 #10
0
 public long GetFreeSkillpoints(long numeroPg)
 {
     Personaggio character = GetCharacterByNumber(numeroPg);
     long total = character.Punti;
     AbilitaManager skillManager = new AbilitaManager(context);
     foreach (AbilitaPersonaggio skill in character.AbilitaPersonaggios)
     {
         DataAccessLayer.Abilita possessedSkill = skillManager.GetSkill(skill.CdAbilita);
         long costo = possessedSkill.Costo;
         if (possessedSkill.Multiacquisto == 1 && skill.NumeroAcquisti.HasValue)
         {
             costo *= skill.NumeroAcquisti.Value;
         }
         total -= costo;
     }
     return total;
 }
コード例 #11
0
ファイル: InsertLista.cs プロジェクト: LoZeno/Holonet3
 private void LoadGroup()
 {
     using (databaseContext = CreateDatabaseContext())
     {
         AbilitaManager manager = new AbilitaManager(databaseContext);
         Attitudine group = manager.GetSkillGroup(cdAttitudine);
         txtCodice.Text = group.CdAttitudine;
         txtCodice.Enabled = false;
         txtNome.Text = group.Nome;
         txtDescr.Text = group.Descrizione;
         cmbTipoLista.SelectedItem = group.TipoAttitudine;
     }
 }
コード例 #12
0
ファイル: InsertPersonaggio.cs プロジェクト: LoZeno/Holonet3
        private void LoadAttitudini()
        {
            using (databaseContext = CreateDatabaseContext())
            {
                AbilitaManager skillManager = new AbilitaManager(databaseContext);
                if (cmbTipo.SelectedValue == null || cmbTipo.SelectedValue.ToString() == "0")
                {
                    lblFirstGroup.Text = "Attitudine 1";
                    cmbAttitudine1.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);
                    cmbAttitudine2.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);
                    cmbAttitudine3.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);
                    cmbAttitudine4.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);
                    cmbAttitudine5.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);
                    cmbClasseDroide.Visible = false;
                    lblClasseDroide.Visible = false;

                    lblSpecie.Visible = true;
                    cmbSpecie.Visible = true;
                    btnCreaSpecie.Visible = true;
                    lblAtt3.Visible = cmbAttitudine3.Visible = true;
                    lblAtt4.Visible = cmbAttitudine4.Visible = true;
                    lblAtt5.Visible = cmbAttitudine5.Visible = true;

                    lblAttBio1.Visible = cmbBiologica1.Visible = false;
                    lblAttBio2.Visible = cmbBiologica2.Visible = false;
                    lblAttBio3.Visible = cmbBiologica3.Visible = false;
                }
                else
                {
                    cmbAttitudine1.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Droide);
                    cmbAttitudine2.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Droide);
                    cmbAttitudine3.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Droide);
                    cmbAttitudine4.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Droide);
                    cmbAttitudine5.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Droide);
                    cmbClasseDroide.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.ClasseDroide);
                    cmbClasseDroide.Visible = true;
                    lblClasseDroide.Visible = true;

                    cmbBiologica1.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);
                    cmbBiologica2.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);
                    cmbBiologica3.DataSource = skillManager.GetSkillgroupsForCombo(TipoAttitudine.Biologico);

                    lblSpecie.Visible = false;
                    cmbSpecie.Visible = false;
                    btnCreaSpecie.Visible = false;
                    lblAtt3.Visible = cmbAttitudine3.Visible = false;
                    lblAtt4.Visible = cmbAttitudine4.Visible = false;
                    lblAtt5.Visible = cmbAttitudine5.Visible = false;

                    lblAttBio1.Visible = cmbBiologica1.Visible = false;
                    lblAttBio2.Visible = cmbBiologica2.Visible = false;
                    lblAttBio3.Visible = cmbBiologica3.Visible = false;
                }
            }
        }