Schlimmes Problem!

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Gameprogman

Betreff: Schlimmes Problem!

BeitragSa, Nov 27, 2004 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich Hab das Problem dass wen mein Charakter Schiest (der schuss kommt Natürlich von seinen Koordinaten) und man bewegt ihn, dann bewegt sich auch der Schuss.
Wer kann mir helfen?
www.bandradr.de ! Awesome !
 

Apocalyptic

BeitragSa, Nov 27, 2004 21:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab zwar keine Ahnung, wie dein Code aufgebaut ist, deswegen meine Antwort: Wenn die Figur schießt, speicher die Position deiner Figur zu diesem Zeitpunkt in zwei Variablen, evt als Field oder was du auch immer benutzt... Ne richtige Antwort gibts, wenn du einen Codeausschnitt/eine Erklärung der Funktionsweise der Schußlinie ablieferst Wink
Suum cuique

[ www.ffs-net.de.vu ] [ Raycaster ]

Gameprogman

BeitragSa, Nov 27, 2004 21:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Graphics 640,480
SetBuffer BackBuffer()
Player1=320
Player2=450
Shota=450
shotb=0
Ploty=0
Ball=LoadImage ("Ball.bmp")
MaskImage Ball,0,0,255
Player=LoadImage ("Player.bmp")
MaskImage Player,0,0,255
Repeat
Cls
DrawImage Player,Player1,Player2
If KeyDown (205) Then
Player1=Player1+3
EndIf
If KeyDown (203) Then
Player1=Player1-3
EndIf
If KeyHit (44) Then
Ploty=1
Shotb=1
EndIf
If Ploty=1 Then
Plot Player1+100,shota
EndIf
If shotb=1 Then
shota=shota-5
EndIf
If shota=0 Then
shota=450
shotb=0
Ploty=0
EndIf
Flip
Until KeyHit (1)
End

Mein "Bisheriger" Code
Der "Schuss-bereich" ist alles dass was mit >shot< und >Plot< zu tun hat.
www.bandradr.de ! Awesome !

Hubsi

BeitragSa, Nov 27, 2004 21:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Weise dem Shuss eigene Koordinaten zu und bewege ihn als eigenständiges Objekt.
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

Another progger

BeitragSo, Nov 28, 2004 16:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Zur übersicht benutze ich immer ein feld:
Code: [AUSKLAPPEN]

Dim schiesen(50,2)
for i=0 to 50
 if schiesen(i,0)=1 ;ob vorhanden
  schiesen(i,2)=schiesen(i,2)+1  ;y koardinate
  drawimage schuss,schiesen(I,1),schiesen(i,2) ;schuss zeichnen
 endif
next

Das musst du nat. noch ausbauen.zb in welche richtung der schuss fliegt usw Wink
 

David

BeitragSo, Nov 28, 2004 16:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Code: [AUSKLAPPEN]

Graphics 800, 600, 32
SetBuffer BackBuffer()

Type Schuss_t
   Field x, y
End Type

Type Spieler_t
   Field x, y
   Field img
End Type

Const SCHUSS_GESCHW   = 5

; Globals

Global spieler.Spieler_t

InitGame()

While Not KeyHit( 1 )
   If ( KeyHit( 57 ) ) Then SchussNeu()
   If ( KeyDown( 205 ) ) Then spieler\x = spieler\x + 3
   If ( KeyDown( 203 ) ) Then spieler\x = spieler\x - 3
   
   DrawImage( spieler\img, spieler\x, spieler\y )
   
   SchussUpdate()
   
   Flip
   Cls
Wend

End

Function InitGame()
   spieler.Spieler_t = New Spieler_t
   spieler\x = 377
   spieler\y = 540
   spieler\img = LoadImage( "player.bmp" )
End Function

Function SchussNeu()
   schuss.Schuss_t = New Schuss_t
   schuss\x = spieler\x + 23
   schuss\y = spieler\y
End Function

Function SchussUpdate()
   For schuss.Schuss_t = Each Schuss_t
      schuss\y = schuss\y - SCHUSS_GESCHW
      
      If ( schuss\y < 1 ) Then
         Delete( schuss )
         Exit
      End If
      
      Oval schuss\x, schuss\y, 5, 5
   Next
End Function


@Another: Wieso nutzt du Dim Felder? Das ist ja graunvoll unübersichtlich... Rolling Eyes

grüße
http://bl4ckd0g.funpic.de
 

Another progger

BeitragSo, Nov 28, 2004 16:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Nach 3 tagen vergeblichen versuchen types zu lernen hab ichs aufgegeben Wink
 

noir

BeitragSo, Nov 28, 2004 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
types brauchst du auch nicht unbedingt, geht fast immer ohne, aber manchmal sind sie echt nützlich

kannst sie mit dim-felder und for schleifen ersetzen, is halt mehr arbeit.

bei dim felder musst du dann halt drauf achten, ob der schuss noch aktiv ist, und dann wieder neu belegt werden kann für einen neuen schuss
mit types kannst du mit new und delete solche vorgänge einfach dynamischer lösen

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group