Ja, hab ich auch geschrieben:Kerli hat geschrieben:'distleft' und 'distup' ist wahrscheinlich der aktuelle Offset oder?
dani93 hat geschrieben:"distleft" und "distup" sind Member der Klasse und die Entfernungen vom linken bzw. oberen Rand, der durch das Scrollen in der Map entsteht.
"Runden" ist vielleicht schlecht gesagt...Kerli hat geschrieben:Nur das Runden kannst du dir sparen, da bei einer Integerdivision sowieso alle Nachkommastellen abgeschnitten werden...
Ich will auf die letzte durch 32 teilbare Zahl kommen.
Beispiel:
Der User klickt auf Pixel 70/40.
Auf letzte durch 32 teilbare Zahlen: 64/32 (linkes obere Eck der Grafik in der grafischen Map)
Dann durch 32 dividieren: 2/1 (Position der Grafik im Vektor)
Das heißt die Grafik wird im Vektor auf den Index [2][1][layer] gespeichert.
32 weil eben alle Grafiken 32*32 Pixel groß sind.
Beim zeichnen der Map muss ichs umgekehrt machen, Position im Vektor mit 32 multiplizieren:
Code: Alles auswählen
dest.x = i * 32;
dest.y = j * 32;
dest.w = 32;
dest.h = 32;