private void DiveClick(object sender, EventArgs e) { IDive idive = (IDive)objectComboBox.SelectedItem; idive.Dive(5); panel.GetChildAtPoint(new Point(0, 25)).Text = "Height: " + idive.getHeight(); }
private void selectedList_SelectedIndexChanged(object sender, EventArgs e) { object toy = selectedList.SelectedItem; speedLabel.Text = "0"; depthLabel.Text = "0"; altitudeLabel.Text = "0"; speedTable.Enabled = false; depthTable.Enabled = false; altitudeTable.Enabled = false; if (toy is IAccelerate) { IAccelerate accelerate = toy as IAccelerate; speedLabel.Text = accelerate.Speed.ToString(); speedTable.Enabled = true; } if (toy is IDive) { IDive dive = toy as IDive; depthTable.Text = dive.Submersion.ToString(); depthTable.Enabled = true; } if (toy is IRise) { IRise rise = toy as IRise; altitudeTable.Text = rise.Altitude.ToString(); altitudeTable.Enabled = true; } }
private void depthUpButton_Click(object sender, EventArgs e) { object toy = selectedList.SelectedItem; IDive dive = toy as IDive; dive.Dive(dive.Submersion + 1); depthLabel.Text = dive.Submersion.ToString(); }
private void decreaseDepth_Click(object sender, EventArgs e) { object toy = toyOwned.SelectedItem; IDive dive = toy as IDive; dive.Dive(dive.Depth - 1); depthValue.Text = dive.Depth.ToString(); }
public void wyswietlGlebokosc() { foreach (Zabawki zabawka in listaZabawek) { if (zabawka is IDive) { IDive wartosc = zabawka as IDive; Console.WriteLine(wartosc.GetType().Name + " " + wartosc.glebokosc); } } }
public void zmienGlebokosc(int change) { foreach (Zabawki zabawka in listaZabawek) { if (zabawka is IDive) { IDive depth = zabawka as IDive; depth.Dive(change); } } }
public void setDive(int dive) { foreach (Zabawka z in zabawki) { IDive test = z as IDive; if (test != null) { test.Dive = dive; Console.WriteLine("Zmiana glebokosci dla zabawki: " + z.Name); } } }
private void toyInstanceCombo_SelectionChangeCommitted(object sender, EventArgs e) { controlsPanel.Controls.Clear(); object toy = toyInstanceCombo.SelectedItem; //to wbrew mojej godności if (toy is IAccelerate) { IAccelerate accelerator = toy as IAccelerate; Label propertyLabel = new Label(); propertyLabel.Text = "przyśpieszenie"; NumericUpDown propertySpinner = new NumericUpDown(); propertySpinner.Value = accelerator.speed; propertySpinner.ValueChanged += new EventHandler(delegate(Object o, EventArgs a) { accelerator.Accelerate(Convert.ToInt32(propertySpinner.Value)); }); controlsPanel.Controls.Add(propertyLabel); controlsPanel.Controls.Add(propertySpinner); } if (toy is IDive) { IDive diver = toy as IDive; Label propertyLabel = new Label(); propertyLabel.Text = "zanurzenie"; NumericUpDown propertySpinner = new NumericUpDown(); propertySpinner.Value = diver.submersion; propertySpinner.ValueChanged += new EventHandler(delegate(Object o, EventArgs a) { diver.Dive(Convert.ToInt32(propertySpinner.Value)); }); controlsPanel.Controls.Add(propertyLabel); controlsPanel.Controls.Add(propertySpinner); } if (toy is IRise) { IRise riser = toy as IRise; NumericUpDown propertySpinner = new NumericUpDown(); Label propertyLabel = new Label(); propertyLabel.Text = "wzniesienie"; propertySpinner.Value = riser.altitude; propertySpinner.ValueChanged += new EventHandler(delegate(Object o, EventArgs a) { riser.Rise(Convert.ToInt32(propertySpinner.Value)); }); controlsPanel.Controls.Add(propertyLabel); controlsPanel.Controls.Add(propertySpinner); } }
public void pokazZabawki() { foreach (Zabawka z in zabawki) { Console.WriteLine("Zabawka: " + z.Name); IAccelerate IAtest = z as IAccelerate; if (IAtest != null) { Console.WriteLine("Accelerate: " + IAtest.Accelerate); } IDive IDtest = z as IDive; if (IDtest != null) { Console.WriteLine("Dive: " + IDtest.Dive); } IRise IRtest = z as IRise; if (IRtest != null) { Console.WriteLine("Rise: " + IRtest.Rise); } } }
private void objectList_SelectedIndexChanged(object sender, EventArgs e) { label1.Text = objectComboBox.SelectedItem.GetType().Name; panel.Controls.Clear(); panel2.Controls.Clear(); Type t = objectComboBox.SelectedItem.GetType(); Object selectedItem = objectComboBox.SelectedItem; var interfaces = t.GetInterfaces(); int x = 0; int y = 0; Point labelPoint = new Point(x, y); Point buttonPoint = new Point(x, y); bool isSpeedDisplayed = false; bool isHeighDisplayed = false; foreach (Type i in interfaces) { if (i.Equals(typeof(IAccelerate))) { IAccelerate iAccelerate = (IAccelerate)selectedItem; if (!isSpeedDisplayed) { CreateLabel("Speed: " + iAccelerate.getSpeed(), labelPoint); isSpeedDisplayed = true; labelPoint.Y += 25; } Button accelerate = new Button(); accelerate.Click += AccelerateClick; accelerate.Text = "Accelerate"; accelerate.Location = buttonPoint; panel2.Controls.Add(accelerate); buttonPoint.Y += 25; } else if (i.Equals(typeof(ISlowDown))) { ISlowDown iSlowDown = (ISlowDown)selectedItem; if (!isSpeedDisplayed) { CreateLabel("Speed: " + iSlowDown.getSpeed(), labelPoint); isSpeedDisplayed = true; labelPoint.Y += 25; } Button slowDown = new Button(); slowDown.Click += SlowDownClick; slowDown.Text = "SlowDown"; slowDown.Location = buttonPoint; panel2.Controls.Add(slowDown); buttonPoint.Y += 25; } else if (i.Equals(typeof(IRise))) { IRise iRise = (IRise)selectedItem; if (!isHeighDisplayed) { CreateLabel("Height: " + iRise.getHeight(), labelPoint); isHeighDisplayed = true; labelPoint.Y += 25; } isHeighDisplayed = true; Button rise = new Button(); rise.Click += RiseClick; rise.Text = "Rise"; rise.Location = buttonPoint; panel2.Controls.Add(rise); buttonPoint.Y += 25; } else if (i.Equals(typeof(IDive))) { IDive iDive = (IDive)selectedItem; if (!isHeighDisplayed) { CreateLabel("Height: " + iDive.getHeight(), labelPoint); isHeighDisplayed = true; labelPoint.Y += 25; } Button dive = new Button(); dive.Click += DiveClick; dive.Text = "Dive"; dive.Location = buttonPoint; panel2.Controls.Add(dive); buttonPoint.Y += 25; } } }
public static Bug DoEnemyDive( List <Bug> bugs, AnimationService animationService, Ship ship, int speed, Bug bug = null, bool captureship = false, bool capturehappened = false, IDive overriddive = null, bool canmorph = false ) { int loopcount = 0; while (bug == null || bug.IsMoving || bug.CaptureState == Bug.enCaptureState.Started || bug.CaptureState == Bug.enCaptureState.FlyingBackHome || bug.CaptureState == Bug.enCaptureState.RecaptureStarted || bug.MorphState == Bug.enMorphState.Started || bug.DrawPath) { bug = bugs[Utils.Rnd(0, bugs.Count - 1)]; loopcount++; if (loopcount > 50) { return(null); } } //if the captured ship bug is selected, //set the selected bug to the parent bug if (bug.Sprite.SpriteType == Sprite.SpriteTypes.CapturedShip) { var parentgreenbug = bugs.FirstOrDefault(a => a.CapturedBug != null); if (parentgreenbug != null) { bug = parentgreenbug; } } //if morphing is enabled, 20% of the time morph instead of dive if (canmorph && Utils.Rnd(1, 100) < 20) { if ((bug.Sprite.SpriteType == Sprite.SpriteTypes.BlueBug || bug.Sprite.SpriteType == Sprite.SpriteTypes.RedBug) && !bug.IsMorphedBug) { bug.MorphState = Bug.enMorphState.Started; bug.IsDiving = true; SoundManager.PlaySound(SoundManager.SoundManagerSounds.morph); return(null); } } IDive dive = null; if (bug.Sprite.SpriteType == Sprite.SpriteTypes.BlueBug || bug.IsMorphedBug) { if (Utils.Rnd(0, 10) % 2 == 0) { dive = new BlueBugDive1(); } else { dive = new BlueBugDive2(); } } else if (bug.Sprite.SpriteType == Sprite.SpriteTypes.RedBug) { if (Utils.Rnd(0, 10) % 2 == 0) { dive = new RedBugDive1(); } else { dive = new RedBugDive2(); } } else if (bug.Sprite.SpriteType == Sprite.SpriteTypes.GreenBug) { if (!captureship && !capturehappened) { if (ship.Sprite.SpriteType != Sprite.SpriteTypes.DoubleShip && bugs.Count(a => a.Sprite.SpriteType == Sprite.SpriteTypes.GreenBug || a.Sprite.SpriteType == Sprite.SpriteTypes.GreenBug_Blue) > 1 && bugs.Count(a => a.CaptureState != Bug.enCaptureState.NotStarted) == 0) { captureship = true; } } if (captureship) { dive = new CaptureDive(); bug.RotateWhileStill = true; bug.CaptureState = Bug.enCaptureState.Started; } else { if (bug.CapturedBug == null) { var childbugs = bugs.Where(a => (a.HomePoint == new Point(2, bug.HomePoint.Y + 1) || a.HomePoint == new Point(2, bug.HomePoint.Y + 2)) && !a.IsMoving); bug.ChildBugs.AddRange(childbugs); bug.ChildBugOffset = new Point(45, 35); } if (Utils.Rnd(0, 10) % 2 == 0) { dive = new GreenBugDive1(); } else { dive = new GreenBugDive2(); } } } else { dive = new RedBugDive1(); } animationService.Animatables.ForEach(a => a.ZIndex = 0); if (overriddive != null) { dive = overriddive; } var paths = dive.GetPaths(bug, ship); bug.SpriteBankIndex = null; bug.IsDiving = true; bug.RotateAlongPath = true; bug.ZIndex = 100; bug.Speed = speed; bug.Paths.AddRange(paths); paths.ForEach(p => { bug.PathPoints.AddRange(animationService.ComputePathPoints(p, false)); }); if (bug != null && !bug.IsMorphedBug) { SoundManager.PlaySound(SoundManager.SoundManagerSounds.dive); } return(bug); }