Tilemap Problem

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

juse4pro

Betreff: Tilemap Problem

BeitragSo, Apr 01, 2007 12:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Leute hab mal ne Frage:

1. Ich kenn mich nich so gut mit Tilemaps aus (TUTS helfen auch nicht)
kann mir das mal jemand erklären?

2. Wenn ich ne Tilemap habe wie kann ich da die einzelnen personen mit Wänden usw. kollisieren?

Hilfe wäre cool


mfg: mortus
Portfolio |LinkedIn |XING

skey-z

BeitragSo, Apr 01, 2007 13:03
Antworten mit Zitat
Benutzer-Profile anzeigen
was ist den kollisieren?

Ich denke mal du willst wissen, wie du z.B. eine Figur mit Wänden kollidieren lässt, oder?

Das geht, indem du nicht nur eine Map mit einem Layer machst( dim map(x,y) ), sondern in einem 2. Layer, der nur 2 werte enhält, 0 für begehbar und 1 für nicht begehbar.
in einer Schleife prüfst du, ob sich das Feld, auf das sich die Figur bewegen will, begehbar ist oder nicht oder nicht und die Figur nur dahin schiebst, wenn das Feld frei ist.
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

juse4pro

Betreff: aber

BeitragSo, Apr 01, 2007 14:22
Antworten mit Zitat
Benutzer-Profile anzeigen
wie kann ich das scannen wenn mein spiel nicht Felderorientiert ist sondern man kann sich auch zwichen den Feldern bewegen!!!

mfg: mortus
Portfolio |LinkedIn |XING
 

getlose

BeitragMo, Apr 02, 2007 9:42
Antworten mit Zitat
Benutzer-Profile anzeigen
erst einmal musst du wissen wie groß deine tiles sind aus der die map aufgebaut ist. dann musst du noch wissen wo genau sich gerade deine spielerfigur befindet.

angenommen die tiles sind 16*16 pixel groß, deine map besteht aus 10*10 tiles und dein spieler befindet sich auf position x:45pixel, y:100pixel. theoretisch müsste er sich dann auf dem 2. feld von links und 7. feld von oben befinden. der code zum prüfen würde in etwa so aussehen :

Code: [AUSKLAPPEN]

For x=0 To 10
   For y=0 To 10
      If RectsOverlap ( player_pos_x,player_pos_y,width,height, x*16,y*16,16,16) Then
         If map(x,y,0)=1 Then
            ;Kollision
         EndIf
      EndIf
   Next
Next

juse4pro

BeitragMo, Apr 02, 2007 17:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:

If map(x,y,0)=1


was bedeutet die 0 an der dritten stelle??? Question Question Question
Portfolio |LinkedIn |XING

The_Nici

BeitragMo, Apr 02, 2007 19:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du ne Z-Ahcse hast, aber nur bei 3D der Fall ist, glaub. =)
 

BlackTermi

BeitragDi, Apr 03, 2007 8:52
Antworten mit Zitat
Benutzer-Profile anzeigen
http://www.blitzbase.de/befehle2d/dim.htm

Tornado11

BeitragDi, Apr 03, 2007 13:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Zitat:

If map(x,y,0)=1



was bedeutet die 0 an der dritten stelle???


Das ist die dritte Dimension . dim(1D, 2D ,3D...)

Thorsten

BeitragDi, Apr 03, 2007 13:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Der Layer!

mfG

juse4pro

BeitragDi, Apr 03, 2007 14:47
Antworten mit Zitat
Benutzer-Profile anzeigen
k
thx
Portfolio |LinkedIn |XING

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group