Tile Ich, fliege, durch ! >:(

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Rob_

Betreff: Tile Ich, fliege, durch ! >:(

BeitragSo, Feb 20, 2005 4:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo
Es ist schon sehr, sehr spääät, und ich bin etwas gereizt.

Ich habe eine ver***** tilemap (mal wieder) erstellt,
ich habe als tiles 1 platform 2 säule 3 boden,
so sieht meine data aus:

Code: [AUSKLAPPEN]

.level
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0
Data 0,2,0,0,0,0,0,0,0,0,0,0,0,0,2,0
Data 0,2,0,0,0,0,0,0,0,0,0,0,0,0,2,0
Data 0,2,0,0,0,0,0,0,0,0,0,0,0,0,2,0
Data 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3


Ich bleibe auf dem boden bei 3 und stoße gegen 2 alle ok, super doch ich fliege durch die ver***** 1 durch! WIZO
Wiso in gottesnamen fliege ich durch die durch? Mad
Ich prüf doch nur das ich durch die 0 mich bewegen kann,
und wieso bleibe ich bei 3,2 stehen und bei 1 NICHT???

Hier vielleicht noch code, hier:



Code: [AUSKLAPPEN]

If KeyDown(key_right) Then
      If lev((tweet_x + 50) / 50,(tweet_y + 25) / 50) = 0 Then
         tweet_x = tweet_x + 3      
   EndIf
      
      
   EndIf

   If KeyDown(key_left) Then
      If lev(tweet_x / 50,(tweet_y + 25) / 50) = 0 Then
         tweet_x = tweet_x - 3
         
      EndIf    
   EndIf   


Code: [AUSKLAPPEN]

If KeyDown(key_space) Then
    If fly = 0 Then
       fly = 1
          EndIf
          Else
       fly = 0
          EndIf
   
      If lev(tweety_x / 50, (tweet_y + 80) / 50) = 0 Then
         tweet_y = tweet_y + 2
      EndIf
 
          If fly = 1 Then
               tweet_y  = tweet_y - 4
          EndIf


ERKLÄRT MIR DAS BITTE, ICH DREH DURCH MEIN VERDAMMTER SCHÄDEL PLATZT GLEICH! Evil or Very Mad
AMD Athlon 64 3500+ | Infineon 1 GB DDR RAM | nVidia Geforce 7800 GTX

Hubsi

BeitragSo, Feb 20, 2005 10:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
    If fly = 0 Then
       fly = 1
          EndIf
          Else
       fly = 0
          EndIf
Warum so umständlich?Code: [AUSKLAPPEN]
fly=1-fly
Zu Deinem Problem:Code: [AUSKLAPPEN]
If lev(tweety_x / 50, (tweet_y + 80) / 50) = 0
Die 80, ist die so richtig? Nicht eher 50? Oder ist die Grafik 50*80?
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

Rob_

BeitragSo, Feb 20, 2005 15:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Die 80 das ist die Pixel Höhe von spieler damit der auf dem boden stehen bleibt und nicht versinkt.
AMD Athlon 64 3500+ | Infineon 1 GB DDR RAM | nVidia Geforce 7800 GTX

simi

BeitragSo, Feb 20, 2005 17:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn ich das richtig sehe, prüfst du nur die Tiles rechts von Sweety....
(Ausser im wenn du Space drückst)

Du musst auch unten abfragen, dann solltest du nicht durchfallen....

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group