Wie positioniere ich eine bmp-Datei bei mehreren Screens?
Übersicht

JeyBetreff: Wie positioniere ich eine bmp-Datei bei mehreren Screens? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wie positioniere ich eine bmp-Datei bei mehreren Screens?
Ich bin noch ziemlicher Anfänger und habe vor ein kleines spiel zu programmieren in dem die camera mit pfeiltasten gesteuert wird... das ganze funktioniert gut ich habe ein player als bmp in die mitte des fensters gesetzt und kann mich so auf den 4 screens bewegen. Soweit so gut.. aber ich will mich nicht nur bewegen sondern auch dinge einbauen die solide sind.Wenn ich jetzt aber eine bild auf eine position lade bewege ich dieses automatisch mit meinem spieler über den bildschirm! Ich bräuchte also einen Befehl um zu sagen screen 1 auf position 200, 300 ->mein bildchen. Oder muss ich meine maps ganz anderst anfertigen?? Bitte um Hilfe!!! thx |
||
![]() |
wunderkind |
![]() Antworten mit Zitat ![]() |
---|---|---|
Meinst du, du benutzt eine Bitmap, die in der Breite über vier Screens geht? | ||
x.Force |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
am besten du nimmst tiles: hab jetzt aber keine zeit zu erklären muss jetzt weg *g* schau dir mal den editor von TheShadow an | ||
AMD Athlon XP 2000+ | 1024mb DDR-Ram | Asus Radeon 9600XT | BENQ FP757 17°Zoll TFT Was kümmert mich mein Geschwätz von gestern? (Konrad Adenauer) -.- |
Jey |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja tiles hab ich schon aber auch nach weiß gott wieviel anleitungen hab ich immer noch nicht kapiert wie ich sage welche tile begehbar ist und welche nicht..
wenn mir das jemand erklären könnte wäre ich zu großem dank verpflichtet^^ plz!!! |
||
![]() |
The Yeti |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dass Objekte sich mitbewegen kannst du mit Types regeln.
Ich hoffe, ich sag jetzt nix falsches (bin selsbt noch Anfänger): Code: [AUSKLAPPEN] Objektbild=LoadImage("Name.png") Type Objekte Field x Field y Field bild End Type Global objekt.Objekte objekt=NEW Objekte ; objekt\x=[x-Koordinate] ; Das für jedes Objekt machen objekt\y=[y-Koordinate] ; objekt\bild=Objektbild ; Repeat Cls If Keydown(200)=True Then For objekt=EACH Objekte objekt\y=objekt\y+1 Next EndIf If Keydown(208)=True Then For objekt=EACH Objekte objekt\y=objekt\y-1 Next EndIf If Keydown(203)=True Then For objekt=EACH Objekte objekt\x=objekt\x+1 Next EndIf If Keydown(205)=True Then For objekt=EACH Objekte objekt\x=objekt\x-1 Next EndIf For objekt=EACH Objekte DrawImage objekt\bild,objekt\x,objekt\y Next Flip Forever |
||
![]() |
Bigmichi |
![]() Antworten mit Zitat ![]() |
---|---|---|
das kann man auch ohen Types Regeln hab ihm erstmal über ICQ Tips gegeben die soltle er erst befolgenwenn er keien Kommentare von Hot bit oder so bekommen will ![]() |
||
![]() |
The Yeti |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nur aus Interesse (ich bin wie gesagt noob):
War´s richtig, was ich geschrieben habe? |
||
![]() |
ssj-goku |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi hier so funkt das alles mit tiles hab ich auch von einem tutorial nur bissel umgeändert eigentlich ist das ganz easy da ist aber auch der scroll mit eingebaut nur zu info hier der code:
Code: [AUSKLAPPEN] Graphics 1024,768,32,2 SetBuffer BackBuffer() ;;;;;;;;;;;;;;;;;;;;;; Global tileset = LoadAnimImage("tiles.bmp",32,32,0,8) Global char = LoadImage("char.bmp") Global px = 7 Global py = 10 Global move = 5 ;;;;;;;;;;;;;;;;;;;;;; Dim map(32,32) ;;;;;;;;;;;;;;;;;;;;;; ;0= rasen ;1= boden ;2= strasse ;3= niedriges wasser ;4= tiefes wasser ;5= bäume ;6= blummen ;7= wand ;8= mauer ;;;;;;;;;;;;;;;;;;;;;;MAP=32*32 Data 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5 Data 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5 ;;;;;;;;;;;;;;;;;;;;;; For x = 1 To 32 For y = 1 To 32 Read map(x,y) Next Next ;;;;;;;;;;;;;;;;;;;;;; Repeat Cls If KeyDown(1) Then End ;;;;;;;;;;;;;;;;;;;;;; For x = 1 To 32 For y = 1 To 32 DrawBlock tileset,x * 32-scrollx,y * 32-scrolly,map(x,y) Next Next ;;;;;;;;;;;;;;;;;;;;;; If KeyDown(208) Then If map(px,py+1) < 4 Then py = py +1 move = 5 scrolly = scrolly +32 EndIf EndIf ; If KeyDown(200) Then If map(px,py-1) < 4 Then py = py -1 move = 5 scrolly = scrolly -32 EndIf EndIf ; If KeyDown(203) Then If map(px-1,py) < 4 Then px = px -1 move = 5 scrollx = scrollx -32 EndIf EndIf ; If KeyDown(205) Then If map(px+1,py) < 4 Then px = px +1 move = 5 scrollx = scrollx +32 EndIf EndIf ;;;;;;;;;;;;;;;;;;;;;; If move = 5 Then x = px*32 : y = py*32 : DrawImage char, x-scrollx,y-scrolly : Delay 50 Flip Forever hoffe ich habe dir geholfen |
||
![]() |
DivineDominion |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich nehme mal andu speicherst deine Daten in einem Array
map(x,y) Dann kannst du das Array DREIDIMENSIONAL machen. Hat nix mit 3d zu tun, sondern lediglich mit einem dritten, ja, "Parameter". map(x,y,z) Ganz einfach wäre, wenn z 0 oder 1 sein kann. Also: Dim map(breite, hoehe, 1) Dann schreibst du in map(x,y,0) deine Tiledaten und in map(x,y,1) (dem zweiten "layer" (ebene)) entweder true oder false, wobei false (0) ja standart ist. Dann prüfst du, ob auf der Ebene "1" der Wert 1 ist. Wenn ja, dann ist das Tile NICHT begehbar. Zum abfragen der Posiiton machst du es dann z.B. so wie goku, einfach bei den Abfragen ein +1 dranmachen, wenn du in Tileschritten scrollst. Wilslt du die Figur Pixel für Pixle bewegen, dann geht das nicht mit einem einfachen +1, aber das findest du dann schon raus denke ich. https://www.blitzforum.de/view...7945#57945 Noch Fragen? Zu kompliziert beschrieben? ![]() |
||
christian.tietze@gmail.com - https://christiantietze.de
macOS |
Jey |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also vielen Dank schon mal für die schnelle Hilfe!!! ![]() Ich werde das jetzt mal alles ausprobieren, falls ich immer noch nicht weiterkommen sollte melde ich mich nochnmal ![]() |
||
![]() |
Keimax |
![]() Antworten mit Zitat ![]() |
---|---|---|
Andere Möglichkeit anstatt ein 3d feld zu nehmen, wäre mit layern zu arbeiten.
also Layer1 = begehbare tiles Layer2 nicht usw... cu |
||
XP3000, FX6600, 1024DDR, BB2d @ W2k,
- > Diesen Text bitte nicht beachten <- |
![]() |
DivineDominion |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sind diese Layer nicht die Ebenenen? Oder willst du für jeden Layer ein Array anlegen? ISt dann ja Jacke wie Hose | ||
christian.tietze@gmail.com - https://christiantietze.de
macOS |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group