From 62e2c75f00387ecf6270cfe869b7cb14e321e742 Mon Sep 17 00:00:00 2001 From: Nic0Nic0Nii Date: Fri, 3 Jun 2022 17:59:19 +0000 Subject: [PATCH] Set view boundaries between room areas to prevent bleeding screens between each other Co-authored-by: r3cp3ct <45179536+r3cp3ct@users.noreply.github.com> Co-authored-by: sigonasr2 --- bin/RabiClone.jar | Bin 34407 -> 39367 bytes maps/world1.map | Bin 295488 -> 295488 bytes src/sig/map/Maps.java | 2 +- src/sig/map/View.java | 1 - src/sig/objects/Player.java | 77 +++++++++++++++++++++++++++--------- 5 files changed, 60 insertions(+), 20 deletions(-) diff --git a/bin/RabiClone.jar b/bin/RabiClone.jar index 24ee248e96bf1c6618ee2f8be6d3c439d938c93b..f36c28b1fe53f7ac3f14d47b2ceb5790fd10a1e9 100644 GIT binary patch delta 28460 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 delta 23523 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 diff --git a/maps/world1.map b/maps/world1.map index b81cc1194da00d06aa678ce3ec9c92c3962a7ff1..25705bb00c21c7c4121888101778d4fce5a27a73 100644 GIT binary patch delta 29 lcmX@mB6OfdsG)_ig{g&k3yWX_69dym!Fi0+H#V~L0|1#N3CREe delta 44 ocmX@mB6OfdsG)_ig{g&k3yWZbAPW-%3SikN*v~k9V=this.map.views.length) { - return View.DIRECT_FOLLOW; + return View.FIXED; } else { return View.values()[this.map.views[index]]; } diff --git a/src/sig/map/View.java b/src/sig/map/View.java index 1b9842a..f11a323 100644 --- a/src/sig/map/View.java +++ b/src/sig/map/View.java @@ -1,7 +1,6 @@ package sig.map; public enum View { - DIRECT_FOLLOW, //Follows the player directly. LIGHT_FOLLOW, // Follows the player loosely, but makes sure there's // still a border between the edge of the screen and the player. diff --git a/src/sig/objects/Player.java b/src/sig/objects/Player.java index aadde23..39c0132 100644 --- a/src/sig/objects/Player.java +++ b/src/sig/objects/Player.java @@ -36,6 +36,7 @@ public class Player extends Object{ final double viewBoundaryX=RabiClone.BASE_WIDTH/3; final double viewBoundaryY=RabiClone.BASE_HEIGHT/3; + View lastCameraView = View.FIXED; public Player(Panel panel) { super(panel); @@ -55,45 +56,85 @@ public class Player extends Object{ private void handleCameraRoomMovement() { int tileX = (int)(getX())/Tile.TILE_WIDTH; int tileY = (int)(getY())/Tile.TILE_HEIGHT; + double newX=RabiClone.level_renderer.getX(),newY=RabiClone.level_renderer.getY(); //By default we use a fixed view. View currentView = RabiClone.CURRENT_MAP.getView(tileX, tileY); + if (currentView!=lastCameraView) { + lastCameraView=currentView; + newX=(tileX/Tile.TILE_SCREEN_COUNT_X)*Map.MAP_WIDTH; + newY=(tileY/Tile.TILE_SCREEN_COUNT_Y)*Map.MAP_HEIGHT; + } switch (currentView) { - case DIRECT_FOLLOW: - RabiClone.level_renderer.setX(getX()-RabiClone.BASE_WIDTH/2); - RabiClone.level_renderer.setY(getY()-RabiClone.BASE_HEIGHT/2); - break; - case FIXED: - RabiClone.level_renderer.setX((tileX/Tile.TILE_SCREEN_COUNT_X)*Map.MAP_WIDTH); - RabiClone.level_renderer.setY((tileY/Tile.TILE_SCREEN_COUNT_Y)*Map.MAP_HEIGHT); - break; case LIGHT_FOLLOW: if (getX()-RabiClone.level_renderer.getX()RabiClone.BASE_WIDTH-viewBoundaryX) { - RabiClone.level_renderer.setX(getX()-(RabiClone.BASE_WIDTH-viewBoundaryX)); + newX=getX()-(RabiClone.BASE_WIDTH-viewBoundaryX); + int newTileX = (int)(getX()+viewBoundaryX)/Tile.TILE_WIDTH; + View newView = RabiClone.CURRENT_MAP.getView(newTileX, tileY); + if (newView!=currentView) { + newX=(tileX/Tile.TILE_SCREEN_COUNT_X)*Map.MAP_WIDTH; + } } if (getY()-RabiClone.level_renderer.getY()RabiClone.BASE_HEIGHT-viewBoundaryY) { - RabiClone.level_renderer.setY(getY()-(RabiClone.BASE_HEIGHT-viewBoundaryY)); + newY=getY()-(RabiClone.BASE_HEIGHT-viewBoundaryY); + int newTileY = (int)(getY()+viewBoundaryY)/Tile.TILE_HEIGHT; + View newView = RabiClone.CURRENT_MAP.getView(tileX, newTileY); + if (newView!=currentView) { + newY=(tileY/Tile.TILE_SCREEN_COUNT_Y)*Map.MAP_HEIGHT; + } } break; case LIGHT_HORIZONTAL_FOLLOW: if (getX()-RabiClone.level_renderer.getX()RabiClone.BASE_WIDTH-viewBoundaryX) { - RabiClone.level_renderer.setX(getX()-(RabiClone.BASE_WIDTH-viewBoundaryX)); + newX=getX()-(RabiClone.BASE_WIDTH-viewBoundaryX); + int newTileX = (int)(getX()+viewBoundaryX)/Tile.TILE_WIDTH; + View newView = RabiClone.CURRENT_MAP.getView(newTileX, tileY); + if (newView!=currentView) { + newX=(tileX/Tile.TILE_SCREEN_COUNT_X)*Map.MAP_WIDTH; + } } - RabiClone.level_renderer.setY((tileY/Tile.TILE_SCREEN_COUNT_Y)*Map.MAP_HEIGHT); + newY=(tileY/Tile.TILE_SCREEN_COUNT_Y)*Map.MAP_HEIGHT; break; case LIGHT_VERTICAL_FOLLOW: - RabiClone.level_renderer.setX((tileX/Tile.TILE_SCREEN_COUNT_X)*Map.MAP_WIDTH); + newX=(tileX/Tile.TILE_SCREEN_COUNT_X)*Map.MAP_WIDTH; if (getY()-RabiClone.level_renderer.getY()RabiClone.BASE_HEIGHT-viewBoundaryY) { - RabiClone.level_renderer.setY(getY()-(RabiClone.BASE_HEIGHT-viewBoundaryY)); + newY=getY()-(RabiClone.BASE_HEIGHT-viewBoundaryY); + int newTileY = (int)(getY()+viewBoundaryY)/Tile.TILE_HEIGHT; + View newView = RabiClone.CURRENT_MAP.getView(tileX, newTileY); + if (newView!=currentView) { + newY=(tileY/Tile.TILE_SCREEN_COUNT_Y)*Map.MAP_HEIGHT; + } } break; } + RabiClone.level_renderer.setX(newX); + RabiClone.level_renderer.setY(newY); }