![]() |
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 |
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 |
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? |
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 |
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* |
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 |
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 |
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 |
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 |
Re: Brettspiel-Mühle: Bugreport bitte!
Liste der Anhänge anzeigen (Anzahl: 2)
Zitat:
Zitat:
Hab die Steine nochmal gezeichnet und in verschiedenen Größen! lg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 Uhr. |
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