/// <summary> /// Populate the listboxes with turret and tank models /// </summary> private void PopulateBoxes() { List <object> turrets = new List <object>(); //Populate turrets weapons = WeaponLoader.GetWeaponsAsList(); foreach (Weapon weapon in weapons) { turrets.Add(weapon.Name); } form.Turrets = turrets; form.Tanks = Utils.GetTankModels(); Renderer.SceneTools.Scene scene = ServiceManager.Scene; selectedTankRenderID = scene.Add( ServiceManager.Resources.GetModel("tanks\\" + tank.model), Vector3.Zero, 0); selectedTank = scene.Access3D(selectedTankRenderID); selectedTurretRenderID = scene.Add( ServiceManager.Resources.GetModel("weapons\\" + WeaponLoader.GetWeapon(tank.weaponID).Model), Vector3.Zero, 0); selectedTurret = scene.Access3D(selectedTurretRenderID); selectedTurret.Attach(selectedTank, Constants.TURRET_MOUNT); }
void TankSelectionChanged(object sender, TomShane.Neoforce.Controls.EventArgs e) { Renderer.SceneTools.Scene scene = ServiceManager.Scene; scene.Delete(selectedTankRenderID); selectedTankRenderID = scene.Add( ServiceManager.Resources.GetModel("tanks\\" + form.Tanks[form.TankIndex]), Vector3.Zero, 0); float oldRotation = selectedTank.ZRotation; selectedTank = scene.Access3D(selectedTankRenderID); selectedTurret.Attach(selectedTank, Constants.TURRET_MOUNT); selectedTank.ZRotation = oldRotation; selectedTankModelName = (string)form.Tanks[form.TankIndex]; ApplySkin(); }