v2.0.2: fixed bugs with dragging view + corners + controller cursor

This commit is contained in:
Evan Debenham
2023-04-10 16:49:12 -04:00
parent d31b539824
commit 1c944a0ada
4 changed files with 9 additions and 5 deletions

View File

@@ -51,7 +51,7 @@ public class Camera extends Gizmo {
public float[] matrix;
public boolean scrollable = false;
public PointF edgeScroll;
public PointF scroll;
public PointF centerOffset;
@@ -122,7 +122,8 @@ public class Camera extends Gizmo {
screenWidth = (int)(width * zoom);
screenHeight = (int)(height * zoom);
edgeScroll = new PointF();
scroll = new PointF();
centerOffset = new PointF();

View File

@@ -176,7 +176,7 @@ public class CellSelector extends ScrollArea {
@Override
protected void onPointerDown( PointerEvent event ) {
camera.edgeScroll.set(-1);
if (event != curEvent && another == null) {
if (curEvent.type == PointerEvent.Type.UP) {
@@ -199,6 +199,7 @@ public class CellSelector extends ScrollArea {
@Override
protected void onPointerUp( PointerEvent event ) {
camera.edgeScroll.set(1);
if (pinching && (event == curEvent || event == another)) {
pinching = false;

View File

@@ -211,7 +211,7 @@ public class GameScene extends PixelScene {
super.create();
Camera.main.zoom( GameMath.gate(minZoom, defaultZoom + SPDSettings.zoom(), maxZoom));
Camera.main.scrollable = true;
Camera.main.edgeScroll.set(1);
switch (SPDSettings.cameraFollow()) {
case 4: default: Camera.main.setFollowDeadzone(0); break;

View File

@@ -238,7 +238,9 @@ public class PixelScene extends Scene {
}
cameraShift.invScale(Camera.main.zoom);
if (cameraShift.length() > 0 && Camera.main.scrollable){
cameraShift.x *= Camera.main.edgeScroll.x;
cameraShift.y *= Camera.main.edgeScroll.y;
if (cameraShift.length() > 0){
Camera.main.shift(cameraShift);
}
ControllerHandler.updateControllerPointer(virtualCursorPos, true);