Entwickler-Ecke
Multimedia / Grafik - Bug beim scrollen
Elayla - Do 26.06.03 20:37
Titel: Bug beim scrollen
Huhu ich bins nochmal, ich bin mit meinem kleinen Programm jetzt soweit das ich ne karte erzeuge, die problemlos scrollen kann, auch Gebäude können gebaut werden und diese scrollen auch mit.
ABER:
Wenn ich am Rand der Karte angelangt bin scrollen die Häuser immer um ein Feld weiter :?
Hier mal ein Ausschnitt aus der Scrollprozedur:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| procedure TForm1.oben; begin detaily := detaily - scrollspeed; if detaily < 1 then begin detaily := 40; dec(standy); if standy < 1 then begin standy := 1; detaily := 0; end; end; IF standy > 1 Then Begin IF complete_Haus1 = true THEN completeY_Haus1:=completeY_Haus1+2; IF complete_Haus2 = true THEN completeY_Haus2:=completeY_Haus2+2; End; end; |
Habt ihr ne Idee was ich da verändern könnte / muss?
Variablenerklärung:
detaily : Erzeugt das Stufenlose scrollen
standy : 1 Feld aus der Karte (Array)
complete_Haus2 : Kontrollvariable ob Gebäude gebaut
completeY_Haus2 : y-Koordinate des Hauses
umpani - Do 26.06.03 21:11
Wie ich sehe, benutzt du noch immer mein Grundgerüst. :D
Wenn du einen link zu deinem kompletten Quelltext gibst, dann schaue ich ihn mir mal an.
Gruß Umpani
Elayla - Do 26.06.03 21:22
Oki hier der Link:
http://www.pro3d.de/gonozal/Mapcreate.zip
Dein Grundgerüst ist ja auch gut ^^
(Und nicht wieder meckern, das ist nur ein Testprogramm und soll keinen Schönheitswettbewerb gewinnen (Quelltextmäßig) :twisted: )
umpani - Do 26.06.03 22:07
So, habe den Quelltext korrigiert.
Hier am beispiel "nach oben"
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| procedure TForm1.oben; begin IF not ((standy = 1) and (detaily = 0)) Then Begin IF complete_Haus1 = true THEN completeY_Haus1:=completeY_Haus1+scrollspeed; IF complete_Haus2 = true THEN completeY_Haus2:=completeY_Haus2+scrollspeed; End; detaily := detaily - scrollspeed; if detaily < 1 then begin detaily := 40; dec(standy); if standy < 1 then begin standy := 1; detaily := 0; end;
end;
end; |
Gruß Umpani
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
Elayla - Do 26.06.03 22:50
Ui vielen dank, funktioniert mal wieder perfekt :)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!