Delphi-PRAXiS
Seite 2 von 2     12   

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

TonyR 28. Dez 2008 09:54

Re: Brettspiel-Mühle: Bugreport bitte!
 
Ich finde die Grafik gerade schön aufgrund der Einfachheit!?

Noch was: Falls das möglich ist würde ich begrüßen, wenn die "Einschnapp-Radien" für die versch. Positionen auf dem Feld etwas größer wären. Beim unsauberen Klicken schnappen die Dinger immer nicht ein, man kann die Spielsteine höchstens 3 bis 4 Pixel oder so neben die Position schieben, damit sie einrastet, das würde ich deutlich erhöhen, da doch auch wenn mein Stein vllt. grad noch so auf dem Feld liegt doch eindeutig dort drauf soll, oder???

- Ach und KI ;-P

Gast 28. Dez 2008 10:07

Re: Brettspiel-Mühle: Bugreport bitte!
 
bei mir geht fast alles, nur am spielende sacht der, ich solle meine steine setzen, obwohl da gar keine mehr sind.
Ich glaube das liegt daran, dass ich ein paar steine wieder weggenommen habe(durch mühle) und nun weniger als 18 steine auf dem feld liegen.

Achso, fallsich dir helfen könnte, wenn ich dir eine installatinsroutine erstellen könnte, dann mache ich das gerne :-D

htxmlx 28. Dez 2008 13:01

Re: Brettspiel-Mühle: Bugreport bitte!
 
Danke erstmal an IceBube die Grafiken sind echt gut geworden...ich guck mal ob ich die noch einbaue, weil das doch ziemlich viel aufwand ist alles nochmal neu zu schreiben...

Die Radien werde ich dann mal vergrößern haben nämlich schon viele gesagt... :)

@ kuschku: Das was du sagtest ist jetzt im neuen Update gefixt, die Radien kommen aber noch...

Gruß, htxmlx


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:58 Uhr.
Seite 2 von 2     12   

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