Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Zitat:
Dann muss ja unterste Kante vom Ball > die Y-Koordinate vom Schläger an der Stelle sein, also untere Kante vom Ball > als was? Wenn ich bei mir Ball.Top/Height eingebe, steht da undefinierter Begriff, dabei hab ich es genauso gemacht wie bei dem Ball, da kommt keine Fehlermeldung. |
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Da ich Deine "Ball"-Klasse nicht kenne, kann ich Dir das auch nicht sagen. Aber anscheinend benutzt Du ein Shape, um den Ball zu zeichnen, also musst Du dann dessen Koordinaten zur Berechnung hernehmen.
|
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Zitat:
Delphi-Quellcode:
Und das ist die mTBrett (Schläger):
UNIT mtBall;
interface //-------------------- ggf Uses-Liste einfügen ! -------------------- uses graphics; type TBall = class private //Attribute X : Integer; Y : Integer; Farbe : TColor; public //Methoden procedure bewege (px,py: Integer); virtual; procedure SetzeFarbe (pFarbe: TColor); virtual; procedure SetzeX (pX: Integer); virtual; procedure SetzeY (pY: Integer); virtual; function GibFarbe : TColor; virtual; function GibX : Integer; virtual; function GibY : Integer; virtual; end; implementation //+--------------------------------------------------------------------- //| TBall: Methodendefinition //+--------------------------------------------------------------------- //-------- bewege (public) --------------------------------------------- procedure TBall.bewege (px,py: Integer); begin x:=x+px; y:=y+py; end; //-------- SetzeFarbe (public) ----------------------------------------- procedure TBall.SetzeFarbe (pFarbe: TColor); begin Farbe := pFarbe end; //-------- SetzeX (public) --------------------------------------------- procedure TBall.SetzeX (pX: Integer); begin X := pX end; //-------- SetzeY (public) --------------------------------------------- procedure TBall.SetzeY (pY: Integer); begin Y := pY end; //-------- GibFarbe (public) ------------------------------------------- function TBall.GibFarbe : TColor; begin result := Farbe end; //-------- GibX (public) ----------------------------------------------- function TBall.GibX : Integer; begin result := X end; //-------- GibY (public) ----------------------------------------------- function TBall.GibY : Integer; begin result := Y end; end.
Delphi-Quellcode:
Bitte hilf mir auf die Sprünge und sag mir was ich einfügen muss, alleine ohne Lösung wird das nix bei mir :shock:
UNIT mTBrett;
interface //-------------------- ggf Uses-Liste anpassen ! -------------------- uses Graphics; type TBrett = class private //Attribute a : Integer; b : Integer; Farbe : TColor; public //Methoden procedure Bewegebrett (pa,pb: Integer); virtual; procedure SetzeA (pA: Integer); virtual; procedure SetzeB (pB: Integer); virtual; function GibA : Integer; virtual; function GibB : Integer; virtual; end; implementation //+--------------------------------------------------------------------- //| TBrett: Methodendefinition //+--------------------------------------------------------------------- //-------- Bewegebrett (public) --------------------------------------------- procedure TBrett.Bewegebrett (pa,pb: Integer); begin a:=a+pa; b:=b+pb; end; //-------- SetzeA (public) --------------------------------------------- procedure TBrett.SetzeA (pA: Integer); begin a := pa end; //-------- SetzeB (public) --------------------------------------------- procedure TBrett.SetzeB (pB: Integer); begin b := pB end; //-------- GibA (public) ----------------------------------------------- function TBrett.GibA : Integer; begin result := a end; //-------- GibB (public) ----------------------------------------------- function TBrett.GibB : Integer; begin result := b end; end. |
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Im Moment verstehe ich den Sinn der beiden Klassen noch nicht, außer dass Du alles doppelt machst (erst den Klassen etwas zuweisen, dann den Shapes). Rund wird das IMO erst dann, wenn die Klassen Properties (= Eigenschaften) bekommen und ihre Koordinaten dann in den Setter-Methoden selbst berechnen.
|
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Zitat:
Weißt du jetzt nicht was ich eingeben muss? Das kann doch nicht so schwer sein :( |
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Liste der Anhänge anzeigen (Anzahl: 1)
So, für den Ball hab ich jetzt einmal ein Beispiel erstellt. Schau Dir das einfach mal in Ruhe an.
[edit] Bevor jemand meckert: die Klasse ist noch nicht fertig, ich wollte den TE nur nicht mit Code "erschlagen" :mrgreen: [/edit] |
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Zitat:
Warum gibt's eigentlich keine Maus mit eingebauter Kamera mit der man ein Schriftstück mit einem Klick fotografieren kann?? Und dass mir keiner meine Erfindung klaut... :spin: |
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Habs hinbekommen! Danke an alle die versucht haben, mir zu helfen :-D
Jetzt muss ich nurnoch rausfinden, wie ich einstelle, dass der Ball mit der Zeit immer schneller wird. Stell ich das im Timer ein oder wie? |
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Entweder das Timer-Intervall runtersetzen oder die "Sprungweite" erhöhen. Letzteres könnte aber schnell unschön aussehen.
|
Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier
Liste der Anhänge anzeigen (Anzahl: 1)
Ja, wie schreibe ich das dann?
In den Timer? Zum Beispiel: when 1min over then Intervall:=5 when 2min ober then Intervall:=4 usw.. Oder gehts auch einfacher? das der sich Stück für Stück verschnellert, ohne abprubt beschleuningt, sondern kontinuierlich wie zum Beispiel beim beschleunigen eines Autos? P.S.: Sollte genau so sein wie in diesem Spiel, was ich im Web gefunden habe. (s. Anhang) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:06 Uhr. |
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