Ich programmiere gerade an einem Spiel. Das kennen sicher einige von euch,... man hat ein Spielfeld (8x8 Pictureboxen). In jeder PictureBox ist ein Bild von einem Rohr... Ziel des Spiels ist es, die Rohre (also die Pictureboxen) so zu drehen das sie zusammenpassen, also damit am Schluss ein langes Rohr rauskommt durch das irgend eine Flüssigkeit fließen kann...
Das mit dem Drehen der Bilder in der Picturebox habe ich mit Klickevents und "Image.RotateFlip" gelöst... hier der Code
picbox_felder[] ist ein Array von Pictureboxen und geht bis 63, weil ich 63 Spielfelder habe...
Quellcode
- //Methode - Dreht das Rohr bei Linksklick nach link, bzw. bei Rechtsklick nach Rechts
- public void drehe_rohr(int feld, MouseEventArgs e)
- {
- if (e.Button == MouseButtons.Left)
- {
- picbox_felder[feld].Image.RotateFlip(RotateFlipType.Rotate90FlipNone);
- picbox_felder[feld].Refresh();
- Console.WriteLine("Left");
- }
- else if (e.Button == MouseButtons.Right)
- {
- picbox_felder[feld].Image.RotateFlip(RotateFlipType.Rotate90FlipNone);
- picbox_felder[feld].Refresh();
- Console.WriteLine("Right");
- }
- }
- //Klickevent der ersten Picurebox (also des ersten Spielfeldes)
- private void feld_1_MouseDown(object sender, MouseEventArgs e)
- {
- drehe_rohr(0, e);
- }
Nur gibt es dabei ein Problem... manchmal wird das Bild nicht gedreht wenn man draufklickt, obwohl er in die Methode "drehe_rohr()" reingeht.... Console.WriteLine("Right") bzw Console.WriteLine("Left") wird immer ausgeführt...
Weis jemand woran das liegt??
lg.Boarder
[FONT="Century Gothic"]"...erst wollte ich was über deine dürren Ärmchen sagen, doch dann fiel mir deine hässliche Fresse auf..." (Gothic 1 ist Kult)[/FONT]
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von 360Boarder ()