Editor background drawing should be based on the center of the view area instead of the upper-left corner
Co-authored-by: r3cp3ct <45179536+r3cp3ct@users.noreply.github.com> Co-authored-by: sigonasr2 <sigonasr2@gmail.com>
This commit is contained in:
parent
9bef6c0caf
commit
099a19c461
@ -2,11 +2,8 @@ package sig;
|
|||||||
|
|
||||||
import javax.swing.JFrame;
|
import javax.swing.JFrame;
|
||||||
|
|
||||||
import net.java.games.input.AbstractController;
|
|
||||||
import net.java.games.input.Controller;
|
import net.java.games.input.Controller;
|
||||||
import net.java.games.input.ControllerEnvironment;
|
import net.java.games.input.ControllerEnvironment;
|
||||||
import net.java.games.input.ControllerEvent;
|
|
||||||
import net.java.games.input.ControllerListener;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
@ -301,7 +301,20 @@ public class EditorRenderer extends LevelRenderer{
|
|||||||
dataTileValue.clear();
|
dataTileValue.clear();
|
||||||
}break;
|
}break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void drawBackground(byte[] p) {
|
||||||
|
int screenX = (int)(getX()+RabiClone.BASE_WIDTH/2)/Tile.TILE_WIDTH;
|
||||||
|
int screenY = (int)(getY()+RabiClone.BASE_HEIGHT/2)/Tile.TILE_HEIGHT;
|
||||||
|
Background targetBackground = RabiClone.CURRENT_MAP.getBackground(screenX, screenY);
|
||||||
|
for (int y=0;y<RabiClone.BASE_HEIGHT;y++) {
|
||||||
|
for (int x=0;x<RabiClone.BASE_WIDTH;x++) {
|
||||||
|
int index = y*RabiClone.BASE_WIDTH+x;
|
||||||
|
p[index] = targetBackground.getPixels()[
|
||||||
|
((y+(int)(getY()*targetBackground.getScrollSpeed()))%targetBackground.getHeight())*targetBackground.getWidth()+((x+(int)(getX()*targetBackground.getScrollSpeed()))%targetBackground.getWidth())
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,6 @@ import sig.engine.Panel;
|
|||||||
import sig.engine.Transform;
|
import sig.engine.Transform;
|
||||||
import sig.objects.actor.AttachableObject;
|
import sig.objects.actor.AttachableObject;
|
||||||
import sig.objects.actor.PhysicsObject;
|
import sig.objects.actor.PhysicsObject;
|
||||||
import sig.objects.actor.State;
|
|
||||||
import sig.engine.objects.AnimatedObject;
|
import sig.engine.objects.AnimatedObject;
|
||||||
import sig.engine.objects.Object;
|
import sig.engine.objects.Object;
|
||||||
|
|
||||||
|
@ -5,7 +5,6 @@ import sig.engine.Panel;
|
|||||||
import sig.engine.Transform;
|
import sig.engine.Transform;
|
||||||
import sig.objects.actor.AttachableObject;
|
import sig.objects.actor.AttachableObject;
|
||||||
import sig.objects.actor.PhysicsObject;
|
import sig.objects.actor.PhysicsObject;
|
||||||
import sig.objects.actor.State;
|
|
||||||
import sig.engine.objects.AnimatedObject;
|
import sig.engine.objects.AnimatedObject;
|
||||||
import sig.engine.objects.Object;
|
import sig.engine.objects.Object;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user