Offset nich vergessen..
sowohl das finescrolling der tiles, als auch das offset des kartenausschnitts spielen ne rolle.
davon ab... hast du dich vertippt bei deiner formel? die ergibt irgendwie wenig sinn
Ja du Korintenkacker!Kaeru Gaman hat geschrieben:Offset nich vergessen..
Das ist nicht meine Aufgabe, die Grundformel ist dieselbe.Kaeru Gaman hat geschrieben:sowohl das finescrolling der tiles, als auch das offset des kartenausschnitts spielen ne rolle.
Dann werde ich dich mit einem Beispiel erleuchten!Kaeru Gaman hat geschrieben:davon ab... hast du dich vertippt bei deiner formel? die ergibt irgendwie wenig sinn
Code: Alles auswählen
InitSprite() : InitKeyboard() : InitMouse()
OpenWindow(0,0,0,640,480,"void",$CC0001)
OpenWindowedScreen(WindowID(0),0,0,640,480,0,0,0)
CreateGadgetList(WindowID(0))
#TILESIZE = 32
Repeat
	EventID = WindowEvent()
	
	ExamineKeyboard()
	ExamineMouse()
	
	ClearScreen($804020)
	
	StartDrawing(ScreenOutput())
	For x=0 To 640 Step #TILESIZE
		For y=0 To 480 Step #TILESIZE
			Box(x,0,1,480,$905030)
			Box(0,y,640,1,$905030)
		Next
	Next
			
	MTX = MouseX() / #TILESIZE * #TILESIZE
	MTY = MouseY() / #TILESIZE * #TILESIZE
	
	Box(MTX,MTY,#TILESIZE,#TILESIZE,$905030)
	
	StopDrawing()
	
	FlipBuffers()
Until KeyboardPushed(1) Or EventID = #WM_CLOSENa dann lass es halt weg oder dividiere wieder durch die Tilegröße. Is nun echt nicht so komplex oder?um die tile-koordinate zu erhalten, die du auch ans maparray übergeben kannst,
darfst du nicht noch mal mit #TILESIZE multiplizieren.