Problem mit Scrolling
Übersicht

girglBetreff: Problem mit Scrolling |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
servus,ich will in mein editor scrolling einbaun,aber das geht net.
so sieht erstmal die Funktion aus Code: [AUSKLAPPEN] Function Scrolling()
If KeyDown(203) Then scrollx=scrollx-4 If scrollx<0 Then scrollx=0 If KeyDown(205) Then scrollx=scrollx+4 If scrollx>(mapb-1)*16 scrollx=(mapb-1)*16 If KeyDown(200) scrolly=scrolly-4 If scrolly<0 Then scrolly=0 If KeyDown(208) Then scrolly=scrolly+4 If scrolly>(maph-1)*16 Then scrolly=(maph-1)*16 End Function so und beim zeichnen muss man ja angeblich einfach nur die scrollwerte abziehn,wenn ich aber n bischen scroll sind die tiles ganz woanders. Code: [AUSKLAPPEN] for i=0 to maph-1 for j=0 to mapb-1 drawimage Tset,j*16-scrollx,i*16-scrolly,map(j,i) next next |
||
Nukleus |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
:oops:
zwischen scrollx> ... und scrollx= fehlt Then aber daran allein kanns wohl nicht liegen |
||
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
dne das is egal wie mans schreibt | ||
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
kann mir keiner sagen wie ich sowas mach? ![]() |
||
![]() |
Slayer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vieleicht hilft Dir das hier weiter.
Code: [AUSKLAPPEN] Graphics 640,480,16,1 SetBuffer BackBuffer() ;------------------------------ Global xpos = 0,ypos = 0 Global links = 203,rechts = 205,oben = 200, unten = 208 Global tilex = 32,tiley = 32 Global count = 0 ;------------------------------ While Not KeyHit(1) If KeyDown(links) xpos = xpos - 1 If xpos < 0 Then xpos = 0 EndIf If KeyDown(rechts) xpos = xpos + 1 If xpos > (640 - tilex * 10) Then xpos = (640 - tilex * 10) EndIf If KeyDown(oben) ypos = ypos - 1 If ypos < 0 Then ypos = 0 EndIf If KeyDown(unten) ypos = ypos + 1 If ypos > (480 - tiley * 10) Then ypos = (480 - tiley * 10) EndIf ;------------------------------ For y = 0 To 9 For x = 0 To 9 Rect xpos + (x * tilex ),ypos + (y * tiley),tilex,tiley,0 Text xpos + (x * tilex ),ypos + (y * tiley),count count = count +1 Next Next count = 0 ;------------------------------ Flip:Cls Wend:End |
||
AMD2500XP, SB5.1, DX9, 512MB DDR333,
XPPro SP1a,ATI 9800SE 256bit 128MB,B3B, B+ immer die neue Version |
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich weiss net,was ich falsch mach,aber das klappt immer noc hnich.Kann nic hjemand einfach nen codebeispiel bringen,wie ers immer macht? | ||
![]() |
Slayer |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() ![]() ![]() Der Code/Beispiel Oben hat Dir nicht geholfen ?? |
||
AMD2500XP, SB5.1, DX9, 512MB DDR333,
XPPro SP1a,ATI 9800SE 256bit 128MB,B3B, B+ immer die neue Version |
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich habs so gemacht,wies in dem beispiel auch is,aber irgendwie hauts net hin,war mir eigentlich alles einleuchtend,was da drin stand...aber trotzdem gings net | ||
denial |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du erledigst das Scrollen einer Funktion.... hast du vielleicht zufällig die Variablen scrollx, scrolly nicht global gemacht? ![]() Außerdem ist die Abfrage, ob die X/Y-Scroll-Koordinaten zu hoch sind, ziemlich unelegant gelöst. |
||
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja,sin global.Wie würdest dus denn machen? | ||
denial |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nicht hochzählen und dann gucken obs zu hoch war (erst schiessen, dann fragen, um einen Vergleich zu bringen), sondern erst prüfen obs zu hoch war, und gegebenfals umstellen. Würd ich jedenfals vorziehen. | ||
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
aber deswegen werden doch net die tiles gleich bei minimalem scrolling falsch gezeichnet.Das muss doch wo anders liegen.In jedem Tutorial das ich gesehn hab,musste man einfach beim zeichnen die scrollwerte abziehen.Hab ich gemacht,aber immer wieder der gleiche fehler ?! | ||
denial |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich benutze fürs Scrollen immer den Befehl Origin.... Du drückst dich aber auch etwas unpräzise aus. Bisher hast du nur geschrieben "dass es nicht geht". Was genau aber nicht geht, sagst du nicht. Kann er überhaupt nicht scrollen? Oder läuft es nur in eine Richtung? Oder was genau ist denn das Problem? | ||
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich denke schon,das ich mein problem geschildert hab.Scrollen tut er schon,nur wenn ich ein bischen scrolle und ein tile zeichnen möchte,ist das tile halt immer an der falschen stelle.
Aber mal zu origin,wie geht das mit dem befehl? |
||
denial |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Origin x,y
Bestimmt den Ursprungspunkt aller Grafiken.. Als X/Y Parameter könntest du ScrollX und ScrollY einsetzen, also deine Variablen. |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wobei Origin nur für kleine Karten zu empfehlen ist. Sonst gehts an die Performance. | ||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
wiglef |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also,.... 1. Ich weiß ja nicht wie groß dein Teil ist, aber vielleicht ist +/- 4 einfach zu viel? | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group