Delphi-PRAXiS
Seite 5 von 6   « Erste     345 6      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Brettspiel-Mühle: Bugreport bitte! (https://www.delphipraxis.net/125876-brettspiel-muehle-bugreport-bitte.html)

htxmlx 24. Dez 2008 09:36

Re: Brettspiel-Mühle: Bugreport bitte!
 
Die Sachen müsten wie oben beschrieben durch das benutzen der rechten Maustaste entstanden sein, damit kann man praktisch alles machen, man setzt jegliche regeln außer kraft...ich find nur leider keinen befrehl um die zu enabeln ...
Ich hab gerade nochmal ein Spiel durchgespielt und wieder keinen Bug gehabt, das muss an der Taste liegen, ich kann mir sonst nicht erklären wie du das hinbekommst...


Gruß, htxmlx

Klaus01 24. Dez 2008 09:45

Re: Brettspiel-Mühle: Bugreport bitte!
 
Guten Morgen,

beim MousDown Ereignis kannst Du doch feststellen ob die linke oder rechte
Maustaste gedrückt wurde (mbLeft, mbRight).

Grüße und ein schönes Weihnachtsfest
Klaus

TonyR 24. Dez 2008 10:11

Re: Brettspiel-Mühle: Bugreport bitte!
 
Also bei mir hat das nichts mit den tasten zu tun, wäre mir auch unheimlich, wenn es so etwas gäbe.
Ich habe kein einziges Mal die RECHTE Maustaste gedrückt... der Fehler kann im Übrigen auch schon beim Legen der Steine passieren.
In Variation ist es auch manchmal möglich, dass man gegnerische Steine nicht entfernen kann (mit begründung, dass es eine Mühle sei), ohne dass sich einer der zu entfernenden Steine in einer solchen 3er Kombi befindet.

Du hast irgendwo einen Programmierfehler, vielleicht irgendeine schlampige If Verschachtelung!?

Wie stellst du es fest, ob 3 Steine eine Mühle bilden?

htxmlx 24. Dez 2008 12:18

Re: Brettspiel-Mühle: Bugreport bitte!
 
ich stell das mit einer if abfrage fest es wird geguckt ob 3 shapes die selbe top haben bzw left, außer die mittleren reihen, in denen 6 steine die selbe top oder left haben können, da gibts dan noch ne sonder regelung...Es könnte auch mit unsichtbaren Steinen zu tun haben, die zwar die position haben, jedoch nicht mehr zu sehen sind, weil sie entfernt wurden, das habe ich mal in Version 1.11 entgültig behoben, also wenn in der Version 1.11 nochmal solche Fehler auftauchen, dann kanns eg. nur noch an der if-abfrage liegen...hab die hier mal gepostet.


Stein is die nummer des gesetzen Steins
Delphi-Quellcode:
 for i := 28 to 36 do
    begin
    for s := 28 to 36 do
      begin
      steintop := TShape (FindComponent('Shape'+IntToStr(stein))).top;
      itop := TShape (FindComponent('Shape'+IntToStr(i))).top;
      stop := TShape (FindComponent('Shape'+IntToStr(s))).top;
      steinleft := TShape (FindComponent('Shape'+IntToStr(stein))).left;
      ileft := TShape (FindComponent('Shape'+IntToStr(i))).left;
      sleft := TShape (FindComponent('Shape'+IntToStr(s))).left;
      if (s <> i) and (i <> Stein) and (Stein <> s) and (steintop = itop) and (steintop = stop) and (stop = itop) and (steintop <> (Shape3.top)+(Shape3.Height div 2) - 33) or
      (s <> i) and (i <> Stein) and (Stein <> s) and (steinleft = ileft) and (steinleft = sleft) and (sleft = ileft) and (steinleft <> (Shape1.Left + Shape1.Width div 2) -31) or
      (s <> i) and (i <> Stein) and (Stein <> s) and (steintop = itop) and (steintop = stop) and (stop = itop) and (steinleft < (Shape1.Left + Shape1.Width div 2) -31) and (ileft < (Shape1.Left + Shape1.Width div 2) -31) and (sleft < (Shape1.Left + Shape1.Width div 2) -31) or
      (s <> i) and (i <> Stein) and (Stein <> s) and (steintop = itop) and (steintop = stop) and (stop = itop) and (steinleft > (Shape1.Left + Shape1.Width div 2) -31) and (sleft > (Shape1.Left + Shape1.Width div 2) -31) and (ileft > (Shape1.Left + Shape1.Width div 2) -31) or
      (s <> i) and (i <> Stein) and (Stein <> s) and (steinleft = ileft) and (steinleft = sleft) and (sleft = ileft) and (steintop < (Shape3.top)+(Shape3.Height div 2) - 33) and (itop < (Shape3.top)+(Shape3.Height div 2) - 33) and (stop < (Shape3.top)+(Shape3.Height div 2) - 33) or
      (s <> i) and (i <> Stein) and (Stein <> s) and (steinleft = ileft) and (steinleft = sleft) and (sleft = ileft) and (steintop > (Shape3.top)+(Shape3.Height div 2) - 33) and (itop > (Shape3.top)+(Shape3.Height div 2) - 33)and (stop > (Shape3.top)+(Shape3.Height div 2) - 33) then
        begin
        if warschon = false then
          begin
          spieler1wegnehmen := true;
          warschon := true;
          muleweis := true;
          TShape (FindComponent('Shape'+IntToStr(stein))).Brush.Color := clRed;
          TShape (FindComponent('Shape'+IntToStr(i))).Brush.Color := clRed;
          TShape (FindComponent('Shape'+IntToStr(s))).Brush.Color := clRed;


Gruß und eine paar schöne Weihnachtstage, htxmlx

TonyR 24. Dez 2008 13:09

Re: Brettspiel-Mühle: Bugreport bitte!
 
Also reproduzieren konnte ich den Fehler jetzt nicht, aber mal ein Tipp am Rande, weil ich (ohne mir Mühe zu geben) bei deiner Verschachtelung nicht durchblicke...
Bitte verwende, wenn du das nächste mal so etwas machst, die OOP oder arbeite im Hintergrund mit einem Array oder ähnlichem, die Variante direkt über die Shape Komponenten zu gehen ist mitunter problematisch und, du siehst es selbst, etwas undurchsichtig.

Ansonsten finde ich die Idee echt gut, vor allem weil mir Mühle ansich eigentlich ganz gut zusagt.

Aber was nun noch fehlt, weiß du hoffentlich?
--- Der Computerspieler *g*

htxmlx 24. Dez 2008 13:42

Re: Brettspiel-Mühle: Bugreport bitte!
 
Jaha der fehlt in der Tat noch ^^ :-D
Nur da brauch man so nen Minimax-Algorithmus oder? Um die KI hinzubekommen...
Leider machen wir bei uns an der Schule Suchbäume erst in der 13 :x ...
Die Array's hab ich teilweise auch benutzt nur da schien mir das i-wie net angebracht...
Ich werds dann beim nächsten mal auf jedenfall mal damit versuchen, vielleicht herrscht dann wirklich mehr durchblick...

Gruß, htxmlx

htxmlx 26. Dez 2008 00:07

Re: Brettspiel-Mühle: Bugreport bitte!
 
Seh ich das jetzt richtig, dass es nach dem neusten Update keine Fehler mehr gibt? Wäre nämlich ganz geil wenn das so wär ^^

Gruß, htxmlx

IceBube 27. Dez 2008 19:11

Re: Brettspiel-Mühle: Bugreport bitte!
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi!

Hab mir dein Spiel angeschaut, und es ist passt soweit, was mich stört ist die Grafik. Hast dir schon mal überlegt mit "Andorra" zu arbeiten?

Naja, ich dachte mir ich mach mal ne kleine Grafik für den "gelben Stein", vielleicht gibt dir das etwas Inspiration :)!

Ist jedoch nur einfach gemacht, sieht jedoch meiner Meinung recht gut aus...

lg

htxmlx 27. Dez 2008 22:02

Re: Brettspiel-Mühle: Bugreport bitte!
 
Hi,

Is ein bisschen klein sieht aber echt edel aus... :thumb:
Mit Andorra hab ich mich schon beschäftig, aber die Tutorials waren mir mit noch nicht mal nem halben Jahr Delphi-Erfahrung noch zu schwer... aber ich versteh nicht wieso man hier mit andorra arbeiten sollte ich könnte doch statt shape einfach nen Image nehmen oder?

Gruß, htxmlx

IceBube 28. Dez 2008 09:44

Re: Brettspiel-Mühle: Bugreport bitte!
 
Liste der Anhänge anzeigen (Anzahl: 2)
Zitat:

Zitat von htxmlx
Is ein bisschen klein sieht aber echt edel aus... :thumb:

Ich hab die Grafik mal nur so schnell gemacht, die Größe etc. kann man ja noch anpassen

Zitat:

Zitat von htxmlx
Mit Andorra hab ich mich schon beschäftig, aber die Tutorials waren mir mit noch nicht mal nem halben Jahr Delphi-Erfahrung noch zu schwer... aber ich versteh nicht wieso man hier mit andorra arbeiten sollte ich könnte doch statt shape einfach nen Image nehmen oder?

Aso, muss man ja nicht - jedoch kann man grafisch mehr machen als mit den Images.

Hab die Steine nochmal gezeichnet und in verschiedenen Größen!

lg


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 Uhr.
Seite 5 von 6   « Erste     345 6      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz