Hallo Forum
ich möchte gern einen Sidescroller, also ein Spiel im klassischen jump&run Style basteln. Leider hab ich noch überhaupt keinen Schimmer, wie ich beginnen soll. Das gute ist erst mal, dass das Spiel komplett ohne Graphik auskommt, da es ein sogenantes Audiogame ist. Also einfach gesagt, man soll die zu überspringenden Schluchten nicht sehen, sondern nur hören können. Als Sound Engine verwende ich dx8. Für ein Paar tips, wie man so was beginnt, währ ich echt dankbar.
Liebe Grüße
Tschapajew
Hallo Tschapajew,
mir ist noch nicht komplett klar, was es werden soll. Mir fallen zwei Möglichkeiten ein.
1.) Die Position des Spielers verändert sich zeitabhängig.
2.) Die Position des Spielers wird über ein Eingabegerät vom Spieler bestimmt.
In Beiden Fällen würde ich in einer Liste die Positionen und die dazugehörigen Aktionen speichern, die Liste mit einem Zeiger lesen und ein Ereignis auslösen, wenn eine Aktion stattfinden soll.
Über DX-Sound weiß ich nichts, aber das scheinst Du ja schon zu haben.
Du brauchst dann also ein Programm zum Erzeugen des Levels, das die Daten sichert. Ob da eine Datenbank oder ein Textfile besser geeignet ist, hängt davon ab, wie Du Dir die Spielengine vorstellst.
Dann liest in einer Klasse ein Zeiger die Daten und löst die Ereignisse aus.
Gruß Rainer
Hallo
ja, es sollen aktionen abhängig von der position des spielers ausgelöst werden und der Spieler bewegt sich durch Tastendruck nach rechts oder links. Das mit der Liste hab ich noch nicht ganz, jedoch in groben Zügen verstanden. Könntest du mir dafür mal bitte ein Beispiel zeigen?
Gruß
Tschapajew
Hallo Tschapajew,
ein Beispiel, wie das aussehen könnte:
Ein neues Projekt, auf der Form liegt ein Timer: ‚Timer1‘.
Es gibt garantiert noch ein paar elegantere Lösungen, diese funktioniert aber auch schon. 
Gruß Rainer
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Dim Feld(100) As Long, Snd(100) As String, Pos As Long, PMx As Long, Zeiger As Integer
Private Sub Form\_Load()
Dim i As Integer, SW As Integer
'Ich erzeuge per Zufall eine Liste.
Randomize Timer
For i = 0 To 100
SW = Int(Rnd(1) \* 10) + 1
Pos = Pos + SW
Feld(i) = Pos
Snd(i) = "Pfad zum entsprechenden Sound"
Next
PMx = Pos
Pos = 0
Zeiger = 1
Timer1.Interval = 100
Timer1.Enabled = True
End Sub
Private Sub Timer1\_Timer()
If GetAsyncKeyState(37) Then
Me.Caption = ""
Pos = Pos + 1
If Pos \> PMx Then Pos = PMx
End If
Auswertung
End Sub
Private Sub Auswertung()
If Zeiger \> 1 Then
If Pos Feld(Zeiger) Then
'weiter zum nächsten Feld
Zeiger = Zeiger + 1
'Sound Snd(Zeiger) abspielen
End If
End If
End Sub