AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi [Andorra 2D] Level , Schuss ... Probleme

[Andorra 2D] Level , Schuss ... Probleme

Ein Thema von sabbert · begonnen am 2. Feb 2010 · letzter Beitrag vom 7. Feb 2010
Antwort Antwort
sabbert

Registriert seit: 16. Apr 2008
67 Beiträge
 
#1

[Andorra 2D] Level , Schuss ... Probleme

  Alt 2. Feb 2010, 15:09
Hallo zusammen,

Hab da ein paar Probleme, genauer gesagt Probleme bei den Ansätzen meines Projektes.

Ich habe vor aus Testzwecken so eine Art "Space Shooter" zu erstellen.

Klappt soweit auch ganz gut nur suche ich für ein paar Probleme sinvolle Lösungen.

1. Ich habe jetzt mein "Objekt" was schießen soll. Das soll ganz simpel sein einfach ein Sprite das sich in eine bestimmte Richtung geradeaus bewegt. Das habe ich auch schon geschafft nur die Sache wie baue ich eine Verzögerung der einzelnen Schüsse ein.
Nehmen wir an ich KSchiße mit einer beliebigen Taste. Nun solange ich die gedrückt halte wird die Schussfrequenz enorm hoch. Doch ich will das z.B. nur jede sekunde einmal geschossen wird. Dies könnte man ja mit einem Timer lösen, nun hatte ich schonmal versucht aber das war mit zu umständlich. Hatte dabei eine Boolean- Variable die nach einem Schuss auf false gesetzt wird und nach z.B. einer Sekunde auf True gesetzt wird. Aber dieser Timer ´war auf dem Formblatt. Gibt es einen anderen besseren Lösungsweg damit ich individuell viele verschiedene Schuss-Variationen erstellen kann?

2. Ich will ein Level erstellen in der Mein Objekt sich bewegt. Die Ansicht ist von der Seite. Ich hab so eine bestimmte Vorstellung wie dies aufgebaut werden soll.
Also es soll z.B. wie in Paint mit z.B. Grün und einem Pinsel das Level mit einem Editor, den ich baue, gemalt werden. Grün stellt dann ein Hinderniss dar, durch das ich nicht fliegen kann.
Jetzt dazu 2 Probleme:

- Wie schaffe ich es so ein Level zu erstellen?
Habe gedacht das ich Sprite sozusagen aufmale und dabei die Koordinaten speicher und diese dann beim Spielstart aufrufe und dort Sprites platziere. Hoffe irgendwie verständlich.
Also das ich z.B. auf ein Iamage klicke und dort ein Sprite erstellt wird und gleichzeitig die Koordinate gespeichert wird.
Würde ich hinbekommen
Wäre das denn sinvoll? Oder gibts besser Lösungsansätze?

- Zweites Problem wenn ich das erste bewältigt habe wie schaffe ich es wenn mein Schuss, also die Kugel, auf die Wand(Grün) trifft das dort dann ein Loch entsteht das genauso groß ist wie die Schusskugel?

Im Anhang ist ein Bild das mein Problem erläutern soll
Edit:
Das Objekt im Bild soll eine Schusskugel sein das gegen eine Wand gefeuert wird.
Loch der Wand soll ca .die größe der Kugel betragen

Das kann ruhig im Level später so simpel aussehen bei Verständnisfragen bitte nachfragen.

MFG
Miniaturansicht angehängter Grafiken
beispiel_163.jpg  
Christian
  Mit Zitat antworten Zitat
azury

Registriert seit: 18. Dez 2008
8 Beiträge
 
#2

Re: [Andorra 2D] Level , Schuss ... Probleme

  Alt 2. Feb 2010, 16:36
Okay da ich gerade selber mit Andorra arbeite kann ich dir vielleicht helfen.

Zu 1:
Du kannst einfach die Zeit speichern mit GetTickCount.
Und dann vor jeden schuss nochmal prüfen ob die Differenz mehr als 1000 ist, dann würde mal maximal 1 mal ca alle 1000 milisekunden bzw 1 sekunde schießen können.
Die Genauigkeit ist denke ich mal nicht zu gering für diesen Zweck.

Zu 2:
Das mit der Karte ist immer sone Sache, also nen Hintergrund kannste ganz toll eigentlich für deine Zwecke mit "TBackgroundSprite" machen.
Da schiebst du einfach ein Spacebild rein, und das ding wird angezeigt.
Für den Rest, also z.B. diese "Wand" kannste ja ein Object erstellen, welches nun coordinaten beinhaltet so wie breite und größe.
Wenn diese Wände nun Quadratisch sind, dann ist das eigentlich relativ einfach, wenn du z.B. durchschießst, prüfst du wo die Kugel durchgegangen ist, und wenns so ist, löschst du die eine Wand und erstellst 2 neue mit dem Abstand vom durchmesser der Kugel und schon haste ein "Loch".

Amsonsten musst du mal nach "Crashpoint" suchen von Andreas, bzw dem, der Andorra gemacht hat.
Das ist sone Art "Worms" spiel, oder besser "Liero Xtreme" dort gibt es genau sowas, was du suchst irgendwo in seinem Quellcode.
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

Registriert seit: 31. Aug 2005
1.622 Beiträge
 
FreePascal / Lazarus
 
#3

Re: [Andorra 2D] Level , Schuss ... Probleme

  Alt 2. Feb 2010, 19:33
Hallo,

wen du das Level mit einem Grafikbearbeitungsprogramm "malen" willst, so ist dies nicht ganz so trivial:

1. Du musst das große Levelbild in kleine Tiles zerteilen und diese einzeln Darstellen.
2. Für die Kollision generierst du um die festen Levelbestandteile "Boundingboxes" und prüfst zunächst mit diesen auf Kollision, dann auf Pixelebene
3. Verfolgst du diesen Ansatz, werden Löcher kein Problem sein

Tatsächlich habe ich das ganze mal in Crahspoint implementiert, ich distanziere mich aber ausdrücklich von diesem Code, der ist jetzt schon 4 Jahre alt

Für den Anfang wäre es sicherlich einfacher das Level aus festen, rechteckigen Bestandteilen zusammenzusetzen.

Andreas
Andreas
"Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
  Mit Zitat antworten Zitat
sabbert

Registriert seit: 16. Apr 2008
67 Beiträge
 
#4

Re: [Andorra 2D] Level , Schuss ... Probleme

  Alt 2. Feb 2010, 22:56
Danke schonmal für die Antworten

Zu meinem zweiten Problem hört sich dein Idee igel457 recht interessant an
Zitat von igel457:
Hallo,

wen du das Level mit einem Grafikbearbeitungsprogramm "malen" willst, so ist dies nicht ganz so trivial:

1. Du musst das große Levelbild in kleine Tiles zerteilen und diese einzeln Darstellen.
2. Für die Kollision generierst du um die festen Levelbestandteile "Boundingboxes" und prüfst zunächst mit diesen auf Kollision, dann auf Pixelebene
3. Verfolgst du diesen Ansatz, werden Löcher kein Problem sein
...
Kannst du das vielleicht näher erläutern? Hab mir schonmal das Programm Crashpoint angeschaut.

Genau sowas suche ich, doch bevor ich mich durch den Source Code "wühle", würde ich gerne den Lösungsansatz näher erläutert haben

Danke schonmal im voraus

mfg
Christian
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#5

Re: [Andorra 2D] Level , Schuss ... Probleme

  Alt 7. Feb 2010, 12:25
Wenn du jetzt eine Große Grafik hättest sagen wir mal 1600 mal 1600 Währe das für den Rechner kaum machbar.
D.H. du hast kleine Grafiken. So genannte Kacheln(engl. Tile). Die kannst du jetzt wie Fließen zusammen setzten. Da kommen zwar Paar zusammen, aber nur so viele wie das Fenster groß ist.

Wände, z.b. währen auch Tiles, die du einfach Platzieren kannst. Ich würde sie Abhängig von der Player Position machen. D.H. Du erstellst alle Tiles und sobald der Player am Rand ist, Scrollst du in die Entsprechende Richtung.

Andorra hat eine gute Möglichkeiten auf Kollisions zu Prüfen. Auch Pixel genau. Sollte das Level zu Groß werden, müsstest du wie Igel vorgeschlagen hat, erst eine ptInRect Prüfung machen und erst dann Pixel Genau prüfen. Das Spart Zeit.

Ich habe mal so ein Spiel (fast) Fertig gestellt. Mit Andorra. gescrollt werden kann noch nicht, aber dafür stehen verschiedene "Waffen" zu Verfügung die du auswählen kannst(mit den Tasten 0 bis 9), du kannst Punkte einsammeln, die Zufällig entstehen, wenn du ein Gegner Abschießt.

Das Ein-zigste Problem dabei ist: Die Grafiken sind nicht von mir. Ich meine ich hatte den Autoren um Erlaubnis gefragt, nur ist das schon eine Weile her... Seit dem verwende ich diese Grafiken *G*... Wenn du eigene Grafiken hast, könnte ich das Projekt ohne Grafiken hochladen... Die Grafiken werden Sowieso Dynamisch geladen.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Vasco da Gama

Registriert seit: 2. Aug 2009
131 Beiträge
 
Delphi 2009 Professional
 
#6

Re: [Andorra 2D] Level , Schuss ... Probleme

  Alt 7. Feb 2010, 13:31
Zitat von mimi:
Das Ein-zigste Problem dabei ist: Die Grafiken sind nicht von mir. Ich meine ich hatte den Autoren um Erlaubnis gefragt, nur ist das schon eine Weile her... Seit dem verwende ich diese Grafiken *G*... Wenn du eigene Grafiken hast, könnte ich das Projekt ohne Grafiken hochladen... Die Grafiken werden Sowieso Dynamisch geladen.
Wenn du Grafiken brauchst, schau mal bei Reiner vorbei:

http://reinerstileset.4players.de/deutsch.html

Da gibt's viele gute Bitmaps unter 2D Grafiken und vielleicht (bzw. wahrscheinlich) auch welche, die euch bei euren Projekten helfen könnten

mfG und viel Glück und Spaß euch allen mit euren Projekten
Flo
Programmiere inzwischen hauptsächlich mit C++. Nicht böse werden
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#7

Re: [Andorra 2D] Level , Schuss ... Probleme

  Alt 7. Feb 2010, 13:33
Das Problem ist halt: Die Grafiken sind für Iso Spiele gedacht. Für mein Zweck nicht geeignet. Trotzdem Danke.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  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:

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