Hi, ich habe in meinem Spiel einen 3 Backgrounds tiefen Hintergrund, bei dem sich jeder background unterschiedlich schnell mit der Spielerbewegung mitbewegt. Der Code dafür ist in einem controller objekt (code unten). Das funktioniert soweit auch, wenn der Spieler aber springt gibt es beim Höhepunkt einen kleinen Ruckler in der horizontalen Bewegung der Hintergründe. (hoch und rechts taste die ganze Zeit über gedrückt). Bei kleinen Bewegungen gibt es auch Ruckler, dann springt der Background wieder zurück in seine vorherige Position. Ich vermute, dass das etwas mit den 5 Pixeln in dem parallax script zu tun hat, weiß aber nicht wie ich das lösen kann.
Das Create-event des parallax controller objekts:
Das Step-event des parallax controller objekts:
Alles anzeigen
Hat jemand eine Idee wie man das ganze "smoother" machen kann?
Das Create-event des parallax controller objekts:
Das Step-event des parallax controller objekts:
Quellcode
- if(keyboard_check(vk_right) && view_xview <= view_wport[0] - 5) { //check if right is pressed and if the view has enough space to move 5 px
- view_xview += 5 * keyboard_check(vk_right)* global.delta; // added * global.delta to smooth out, effective?
- }
- if(keyboard_check(vk_left) && view_xview >= view_wport[0] - 5) { //check if right is pressed and if the view has enough space to move 5 px
- view_xview -= 5 * keyboard_check(vk_left)* global.delta; // added * global.delta to smooth out, effective?
- }
- for(var i = 0; background_visible[i]; i++) { //gets all backgrounds in the room (variable i)
- if( view_xview >= 0 && view_xview <= 640) {
- background_x[i] = parallax[i] * view_xview; //function to set the background x factor based on the view (view_xview)
- }
- }
Hat jemand eine Idee wie man das ganze "smoother" machen kann?
5-min-pixel "art" um 0 Uhr als Accountbild


