AGB  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Elfmeterschießen Spiel - Frage zum Aufbau

Ein Thema von ShadowDeath · begonnen am 12. Apr 2017 · letzter Beitrag vom 20. Apr 2017
Antwort Antwort
ShadowDeath

Registriert seit: 11. Apr 2017
10 Beiträge
 
#1

Elfmeterschießen Spiel - Frage zum Aufbau

  Alt 12. Apr 2017, 18:08
Hallo Leute,
nun zu meinem nächsten 'Problem'. Erstmal was möchte ich programmieren? Dazu habe ich euch eine Skizze unten angehängt. Also man soll den Ball durch die 4 Buttons bzw mit den Pfeiltasten nach unten, oben & nach links und rechts bewegen können. Bei Go soll der Ball abgeschossen werden und sobald er die Torlinie überquert soll eine Messagebox mit 'GOAL' aufploppen. Bisher habe ich es geschafft den Ball per Timer nach vorne bis zum Tor zu bewegen. Die Kollision habe ich auch getestet doch die hatte nicht den gewünschten Effekt. Als Tor habe ich mom. ein Panel um die Kollision zu testen. Aber ich möchte ja später, wie auf dem Bild oben und unten jeweils eine Aus Linie haben und NUR wenn der Ball zwischen den beiden Torpfosten(-linien) ist soll er Goal ausgeben ---> Abfragen ob der Ball zwischen den Pfosten ist & breite des Balls mit einbeziehen. Zusätzlich soll der Ball nur bis zum Ende des Tors bewegt werden --> Timer 1-2 sec. nach der Kollision stoppen? Sobald der Ball gegen einen Pfosten kommt soll 'Pfosten' ausgegeben werden und wenn der Ball ins Aus geht, dann soll er 'Aus' ausgeben und beim bestätigen des Dialoges das Spiel resetten ---> confirmationDLG? Das Spielfeld an sich soll Grün sein --> Grünes Image als Hintergrund? Wie würdet ihr das am besten lösen?

Hier mein bisheriger Test Code (mehr Experiment als etwas wirkliches):
Delphi-Quellcode:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.StdCtrls,
  Vcl.ExtCtrls, Vcl.ExtDlgs, Vcl.Imaging.pngimage;

type
  TForm1 = class(TForm)
    Button1: TButton;
    TrackBar1: TTrackBar;
    Button2: TButton;
    OpenPictureDialog1: TOpenPictureDialog;
    Timer1: TTimer;
    Image1: TImage;
    Panel1: TPanel;
    procedure TrackBar1Change(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  vx: Integer = 1;
  i: Integer = 0;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Form1.DoubleBuffered := True;
  Timer1.Enabled := true;
end;

function IsCollision (Rect1, Rect2: TRect): Boolean;
begin
  Result := (Rect1.Right > Rect2.Left) and
            (Rect2.Right > Rect1.Left) and
            (Rect1.Bottom > Rect2.Top) and
            (Rect2.Bottom > Rect1.Top);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
    Image1.Left := Image1.Left + vx;
  if Image1.Left > ClientWidth - Image1.Width - 1 then
    vx := vx * -1;
  if Image1.Left < 1 then
    vx := vx * -1;
  if IsCollision(Image1.BoundsRect, Panel1.BoundsRect) then
       If i = 0 then
       begin
       i := i+1;
       Timer1.Enabled := false;
       ShowMessage('TORR!!!11');
       Panel1.SendToBack;
       end
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
  Image1.Width := 30 * Trackbar1.Position;
  Image1.Height := 30 * Trackbar1.Position;
end;

end.
Miniaturansicht angehängter Grafiken
skizze.png  
Angehängte Dateien
Dateityp: zip Elfmeter.zip (3,62 MB, 3x aufgerufen)
  Mit Zitat antworten Zitat
Michael II

Registriert seit: 1. Dez 2012
Ort: Region Bern CH
143 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Elfmeterschießen Spiel - Frage zum Aufbau

  Alt 19. Apr 2017, 12:59
Ich empfehle dir einen Blick in die Graphics32 Bibliothek zu werfen. Damit kannst du sehr schnelle 2D Animationen erstellen - 32Bit Grafik (Alpha Kanal). Selbst wenn du viele Sprites aufs Mal bewegen willst, ist's noch megaschnell.

https://github.com/graphics32/graphics32

Oder du verwendest Firemonkey. Dann kannst du deinen Egoballshooter später auch mobil veröffentlichen .
  Mit Zitat antworten Zitat
BrightAngel

Registriert seit: 13. Mär 2007
130 Beiträge
 
#3

AW: Elfmeterschießen Spiel - Frage zum Aufbau

  Alt 19. Apr 2017, 13:48
Zum Stichwort Kollision: Du brauchst da gar nichts Ausgewachsenes; du hast ja die Ballposition und die Torlinie ist senkrecht. Also musst du nur die X Position deines Balls mit der X Position deiner Linie vergleichen. Wenn du das durch die Pfosten limitieren willst, dann kommt da einfach noch ein y-Check zusätzlich mit rein.

Brighty
Do you have the email of god??? --- I have to tell him that I'm happy to be born!
  Mit Zitat antworten Zitat
ShadowDeath

Registriert seit: 11. Apr 2017
10 Beiträge
 
#4

AW: Elfmeterschießen Spiel - Frage zum Aufbau

  Alt 20. Apr 2017, 23:08
Danke euch für die Hilfe. Ich werde es mir anschauen, sobald ich Zeit habe.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2017 by Daniel R. Wolf