private void PopulateTurretTrees(LevelDescription desc) { AvailTurretModel.Clear(); AllowedTurretModel.Clear(); List <Turret> AvailTurrets = LevelManager.GetTurrets(); for (int i = 0; i < desc.AllowedTurrets.Count; i++) { for (int j = 0; j < AvailTurrets.Count; j++) { if (AvailTurrets[j].Name == desc.AllowedTurrets[i]) { AvailTurrets.Remove(AvailTurrets[j]); } } object[] values = { i, desc.AllowedTurrets[i] }; AllowedTurretModel.AppendValues(values); } for (int j = 0; j < AvailTurrets.Count; j++) { object[] values = { j, AvailTurrets[j].Name }; AvailTurretModel.AppendValues(values); } }
private void PopulateTurretTrees(LevelDescription desc) { AllowedTurretModel.Clear(); List <Turret> AvailTurrets = LevelManager.GetTurrets(); for (int i = 0; i < desc.AllowedTurrets.Count; i++) { object[] values = { i, desc.AllowedTurrets[i] }; AllowedTurretModel.AppendValues(values); } }
private void AddAllTurrets_Clicked(object sender, EventArgs e) { LevelDesc.AllowedTurrets.RemoveRange(0, LevelDesc.AllowedTurrets.Count); List <Turret> AvailTurrets = LevelManager.GetTurrets(); for (int i = 0; i < AvailTurrets.Count; i++) { LevelDesc.AllowedTurrets.Add(AvailTurrets[i].Name); } PopulateTurretTrees(LevelDesc); WriteChanges(); }
private void PopulateTreeWithTurrets() { string previousValue = ""; bool foundPrevious = false; TreeIter selected; if (tree.Selection.GetSelected(out selected)) { previousValue = (string)ListModel.GetValue(selected, 0); } List <Turret> items = LevelManager.GetTurrets(); ListModel.Clear(); if (null != items) { for (int i = 0; i < items.Count; i++) { TreeIter itr = ListModel.AppendValues(items[i].Name); if (previousValue == items[i].Name) { foundPrevious = true; selected = itr; } } } if (!foundPrevious) { // If not, here's the default ListModel.GetIterFirst(out selected); } tree.Selection.SelectIter(selected); }
public void SetTurret(string selectedStr) { GtkHelpers.FlushAllDeferredEvents(); Destroyed += TurretEditLayout_Destroyed; if (null != Layout) { Layout.Hide(); Layout.Destroy(); Layout = null; FireRateField = null; DPSfield = null; } Turrets = LevelManager.GetTurrets(); for (int i = 0; i < Turrets.Count; i++) { if (Turrets[i].Name == selectedStr) { Turret = Turrets[i]; } } Layout = new VBox(false, 0); AddWithViewport(Layout); HBox field = GtkHelpers.TextEntryField("Turret Name", Turret.Name, Name_Changed, true); Layout.PackStart(field, false, false, 0); field.Show(); field = GtkHelpers.TextEntryField("Asset", Turret.Asset, Asset_Changed, true); Layout.PackStart(field, false, false, 0); field.Show(); FireRateField = GtkHelpers.TextEntryField("Fire Rate", Turret.FireRate.ToString(), FireRate_Changed, true, GtkHelpers.ValueType.Float); Layout.PackStart(FireRateField, false, false, 0); FireRateField.Show(); field = GtkHelpers.TextEntryField("Range", Turret.Range.ToString(), Range_Changed, true, GtkHelpers.ValueType.Float); Layout.PackStart(field, false, false, 0); field.Show(); field = GtkHelpers.TextEntryField("Cost", Turret.Cost.ToString(), Cost_Changed, true, GtkHelpers.ValueType.Float); Layout.PackStart(field, false, false, 0); field.Show(); List <Projectile> projectiles = LevelManager.GetProjectiles(); ProjectileNames = new List <string>(); int currIndex = 0; for (int i = 0; i < projectiles.Count; i++) { ProjectileNames.Add(projectiles[i].Name); if (projectiles[i].Name == Turret.Projectile) { currIndex = i; } } field = GtkHelpers.ComboBox("Projectile", ProjectileNames.ToArray(), currIndex, Projectile_Changed, true); Layout.PackStart(field, false, false, 0); field.Show(); DPSfield = GtkHelpers.TextEntryField("Damage per Sec", Turret.Cost.ToString(), DPS_Changed, true, GtkHelpers.ValueType.Float); Layout.PackStart(DPSfield, false, false, 0); DPSfield.Show(); RecalculateDPS(); Show(); ShowAll(); }