diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/ActorWithBody.class b/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/ActorWithBody.class index b8b4ce26a..e49eae23e 100644 Binary files a/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/ActorWithBody.class and b/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/ActorWithBody.class differ diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/PBFSigrid.class b/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/PBFSigrid.class index 795474b69..9c496f9e1 100644 Binary files a/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/PBFSigrid.class and b/out/production/Terrarum_renewed/com/Torvald/Terrarum/Actors/PBFSigrid.class differ diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/ConsoleCommand/SetAV.class b/out/production/Terrarum_renewed/com/Torvald/Terrarum/ConsoleCommand/SetAV.class index b40a54f84..23b0cee88 100644 Binary files a/out/production/Terrarum_renewed/com/Torvald/Terrarum/ConsoleCommand/SetAV.class and b/out/production/Terrarum_renewed/com/Torvald/Terrarum/ConsoleCommand/SetAV.class differ diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapLantern.class b/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapLantern.class index a63e08542..f69930307 100644 Binary files a/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapLantern.class and b/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapLantern.class differ diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapRenderer.class b/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapRenderer.class index 1b14624f0..da5ec656c 100644 Binary files a/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapRenderer.class and b/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/LightmapRenderer.class differ diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/MapCamera.class b/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/MapCamera.class index 8b8d91c4e..0ef043242 100644 Binary files a/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/MapCamera.class and b/out/production/Terrarum_renewed/com/Torvald/Terrarum/MapDrawer/MapCamera.class differ diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/TileNameCode.class b/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/TileNameCode.class index 45aac32c2..60e286554 100644 Binary files a/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/TileNameCode.class and b/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/TileNameCode.class differ diff --git a/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/propdata.csv b/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/propdata.csv index 54baf223d..f9bbbc7cf 100644 --- a/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/propdata.csv +++ b/out/production/Terrarum_renewed/com/Torvald/Terrarum/TileProperties/propdata.csv @@ -35,28 +35,31 @@ "9"; "1";"TILE_ICE_FRAGILE" ; "3282"; "1"; "930"; "0"; "0"; "1"; "0"; "0"; "0"; "9"; "1"; "0";"16" "9"; "2";"TILE_ICE_NATURAL" ; "6564"; "25"; "930"; "0"; "0"; "1"; "1"; "0"; "1"; "9"; "2"; "0"; "8" "9"; "3";"TILE_ICE_CLEAR_MAGICAL" ; "8205"; "25";"3720"; "0"; "0"; "1"; "1"; "5009"; "0"; "9"; "3"; "0"; "8" - "10"; "0";"TILE_PLATFORM_STONE" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "0"; "0";"16" - "10"; "1";"TILE_PLATFORM_WOODEN" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "1"; "0";"16" - "10"; "2";"TILE_PLATFORM_EBONY" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "2"; "0";"16" - "10"; "3";"TILE_PLATFORM_BIRCH" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "3"; "0";"16" - "10"; "4";"TILE_PLATFORM_BLOODROSE" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "4"; "0";"16" + "10"; "0";"TILE_PLATFORM_STONE" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "0"; "0";"16" + "10"; "1";"TILE_PLATFORM_WOODEN" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "1"; "0";"16" + "10"; "2";"TILE_PLATFORM_EBONY" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "2"; "0";"16" + "10"; "3";"TILE_PLATFORM_BIRCH" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "3"; "0";"16" + "10"; "4";"TILE_PLATFORM_BLOODROSE" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "4"; "0";"16" "11"; "0";"TILE_TORCH" ; "0"; "0"; "N/A"; "0"; "0"; "0"; "0"; "63412"; "0"; "11"; "0"; "0";"16" - "12"; "0";"TILE_ILLUMINATOR_WHITE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "59076"; "0"; "12"; "0"; "0";"16" - "12"; "1";"TILE_ILLUMINATOR_YELLOW" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "33440"; "0"; "12"; "1"; "0";"16" - "12"; "2";"TILE_ILLUMINATOR_ORANGE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "58320"; "0"; "12"; "2"; "0";"16" - "12"; "3";"TILE_ILLUMINATOR_RED" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57600"; "0"; "12"; "3"; "0";"16" - "12"; "4";"TILE_ILLUMINATOR_FUCHSIA" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57618"; "0"; "12"; "4"; "0";"16" - "12"; "5";"TILE_ILLUMINATOR_PURPLE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "28836"; "0"; "12"; "5"; "0";"16" - "12"; "6";"TILE_ILLUMINATOR_BLUE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "36"; "0"; "12"; "6"; "0";"16" - "12"; "7";"TILE_ILLUMINATOR_CYAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "1276"; "0"; "12"; "7"; "0";"16" - "12"; "8";"TILE_ILLUMINATOR_GREEN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "17240"; "0"; "12"; "8"; "0";"16" - "12"; "9";"TILE_ILLUMINATOR_GREEN_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "8640"; "0"; "12"; "9"; "0";"16" - "12"; "10";"TILE_ILLUMINATOR_BROWN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "21000"; "0"; "12"; "10"; "0";"16" - "12"; "11";"TILE_ILLUMINATOR_TAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "37448"; "0"; "12"; "11"; "0";"16" - "12"; "12";"TILE_ILLUMINATOR_GREY_LIGHT"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "47589"; "0"; "12"; "12"; "0";"16" - "12"; "13";"TILE_ILLUMINATOR_GREY_MED"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "29538"; "0"; "12"; "13"; "0";"16" - "12"; "14";"TILE_ILLUMINATOR_GREY_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "16410"; "0"; "12"; "14"; "0";"16" - "12"; "15";"TILE_ILLUMINATOR_BLACK" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "4923"; "0"; "12"; "15"; "0";"16" + "11"; "1";"TILE_TORCH_FROST" ; "0"; "0"; "N/A"; "0"; "0"; "0"; "0"; "919"; "0"; "11"; "1"; "0";"16" + "12"; "0";"TILE_TORCH" ; "1641"; "0"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "11"; "0"; "0";"16" + "12"; "1";"TILE_TORCH_FROST" ; "1641"; "0"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "11"; "1"; "0";"16" + "13"; "0";"TILE_ILLUMINATOR_WHITE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "59076"; "0"; "13"; "0"; "0";"16" + "13"; "1";"TILE_ILLUMINATOR_YELLOW" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "59040"; "0"; "13"; "1"; "0";"16" + "13"; "2";"TILE_ILLUMINATOR_ORANGE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "58720"; "0"; "13"; "2"; "0";"16" + "13"; "3";"TILE_ILLUMINATOR_RED" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57600"; "0"; "13"; "3"; "0";"16" + "13"; "4";"TILE_ILLUMINATOR_FUCHSIA" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57628"; "0"; "13"; "4"; "0";"16" + "13"; "5";"TILE_ILLUMINATOR_PURPLE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "44836"; "0"; "13"; "5"; "0";"16" + "13"; "6";"TILE_ILLUMINATOR_BLUE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "36"; "0"; "13"; "6"; "0";"16" + "13"; "7";"TILE_ILLUMINATOR_CYAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "1276"; "0"; "13"; "7"; "0";"16" + "13"; "8";"TILE_ILLUMINATOR_GREEN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "17240"; "0"; "13"; "8"; "0";"16" + "13"; "9";"TILE_ILLUMINATOR_GREEN_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "8640"; "0"; "13"; "9"; "0";"16" + "13"; "10";"TILE_ILLUMINATOR_BROWN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "21000"; "0"; "13"; "10"; "0";"16" + "13"; "11";"TILE_ILLUMINATOR_TAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "37448"; "0"; "13"; "11"; "0";"16" + "13"; "12";"TILE_ILLUMINATOR_GREY_LIGHT"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "47589"; "0"; "13"; "12"; "0";"16" + "13"; "13";"TILE_ILLUMINATOR_GREY_MED"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "29538"; "0"; "13"; "13"; "0";"16" + "13"; "14";"TILE_ILLUMINATOR_GREY_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "16410"; "0"; "13"; "14"; "0";"16" + "13"; "15";"TILE_ILLUMINATOR_BLACK" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "4923"; "0"; "13"; "15"; "0";"16" "254"; "0";"TILE_WATER" ; "6522"; "100";"1000"; "1"; "0"; "0"; "0"; "0"; "0"; "N/A"; "N/A"; "0";"16" "254"; "1";"TILE_WATER" ; "6522"; "100";"1000"; "1"; "3"; "0"; "0"; "0"; "0"; "N/A"; "N/A"; "0";"16" "254"; "2";"TILE_WATER" ; "6522"; "100";"1000"; "1"; "6"; "0"; "0"; "0"; "0"; "N/A"; "N/A"; "0";"16" diff --git a/res/graphics/sprites/test_player.png b/res/graphics/sprites/test_player.png index efe0d984f..010593f4a 100644 Binary files a/res/graphics/sprites/test_player.png and b/res/graphics/sprites/test_player.png differ diff --git a/res/graphics/sprites/test_player_glow.png b/res/graphics/sprites/test_player_glow.png index 54edbd935..1f02e89d1 100644 Binary files a/res/graphics/sprites/test_player_glow.png and b/res/graphics/sprites/test_player_glow.png differ diff --git a/res/graphics/terrain/terrain.png b/res/graphics/terrain/terrain.png index 9787d48c7..25dc09a8f 100644 Binary files a/res/graphics/terrain/terrain.png and b/res/graphics/terrain/terrain.png differ diff --git a/res/graphics/terrain/wire.png b/res/graphics/terrain/wire.png index cc0b4afec..942d03e83 100755 Binary files a/res/graphics/terrain/wire.png and b/res/graphics/terrain/wire.png differ diff --git a/src/com/Torvald/Terrarum/Actors/ActorWithBody.java b/src/com/Torvald/Terrarum/Actors/ActorWithBody.java index 8bd61d051..4b6b7781c 100644 --- a/src/com/Torvald/Terrarum/Actors/ActorWithBody.java +++ b/src/com/Torvald/Terrarum/Actors/ActorWithBody.java @@ -676,7 +676,7 @@ public class ActorWithBody implements Actor, Visible, Glowing { , (hitbox.getPosX() - (hitboxTranslateX * scale)) , (hitbox.getPosY() + (hitboxTranslateY * scale)) - (baseSpriteHeight - baseHitboxH) * scale - + 1 + + 2 , scale ); } @@ -685,7 +685,7 @@ public class ActorWithBody implements Actor, Visible, Glowing { , (hitbox.getPosX() - scale) , (hitbox.getPosY() + (hitboxTranslateY * scale)) - (baseSpriteHeight - baseHitboxH) * scale - + 1 + + 2 , scale ); } @@ -700,7 +700,7 @@ public class ActorWithBody implements Actor, Visible, Glowing { , (hitbox.getPosX() - (hitboxTranslateX * scale)) , (hitbox.getPosY() + (hitboxTranslateY * scale)) - (baseSpriteHeight - baseHitboxH) * scale - + 1 + + 2 , scale ); } @@ -709,7 +709,7 @@ public class ActorWithBody implements Actor, Visible, Glowing { , (hitbox.getPosX() - scale) , (hitbox.getPosY() + (hitboxTranslateY * scale)) - (baseSpriteHeight - baseHitboxH) * scale - + 1 + + 2 , scale ); } diff --git a/src/com/Torvald/Terrarum/Actors/PBFSigrid.java b/src/com/Torvald/Terrarum/Actors/PBFSigrid.java index 21fc477b2..2a6f5c4e3 100644 --- a/src/com/Torvald/Terrarum/Actors/PBFSigrid.java +++ b/src/com/Torvald/Terrarum/Actors/PBFSigrid.java @@ -21,7 +21,7 @@ public class PBFSigrid { Player p = new Player(); p.sprite = new SpriteAnimation(); - p.sprite.setDimension(28, 50); + p.sprite.setDimension(28, 51); p.sprite.setSpriteImage("res/graphics/sprites/test_player.png"); p.sprite.setDelay(200); p.sprite.setRowsAndFrames(1, 1); @@ -29,7 +29,7 @@ public class PBFSigrid { p.sprite.composeSprite(); p.spriteGlow = new SpriteAnimation(); - p.spriteGlow.setDimension(28, 50); + p.spriteGlow.setDimension(28, 51); p.spriteGlow.setSpriteImage("res/graphics/sprites/test_player_glow.png"); p.spriteGlow.setDelay(200); p.spriteGlow.setRowsAndFrames(1, 1); diff --git a/src/com/Torvald/Terrarum/ConsoleCommand/SetAV.java b/src/com/Torvald/Terrarum/ConsoleCommand/SetAV.java index e15027f31..1a30f8c36 100644 --- a/src/com/Torvald/Terrarum/ConsoleCommand/SetAV.java +++ b/src/com/Torvald/Terrarum/ConsoleCommand/SetAV.java @@ -36,10 +36,10 @@ class SetAV implements ConsoleCommand { val = new Float(args[2]); // try for float } catch (NumberFormatException ee) { - if (args[2].equalsIgnoreCase("true")) { + if (args[2].equalsIgnoreCase("__true")) { val = new Boolean(true); } - else if (args[2].equalsIgnoreCase("false")) { + else if (args[2].equalsIgnoreCase("__false")) { val = new Boolean(false); } else { diff --git a/src/com/Torvald/Terrarum/MapDrawer/MapCamera.java b/src/com/Torvald/Terrarum/MapDrawer/MapCamera.java index d52e7f772..a2cecf1cc 100644 --- a/src/com/Torvald/Terrarum/MapDrawer/MapCamera.java +++ b/src/com/Torvald/Terrarum/MapDrawer/MapCamera.java @@ -49,10 +49,11 @@ public class MapCamera { private static final int NEARBY_TILE_CODE_LEFT = 0b1000; /** - * Connectivity group 01 : man-made tiles + * Connectivity group 01 : artificial tiles * It holds different shading rule to discriminate with group 02, index 0 is single tile. + * These are the tiles that only connects to itself, will not connect to colour variants */ - private static Integer[] TILES_CONNECTIVE_THE_TILE = { + private static Integer[] TILES_CONNECT_SELF = { TileNameCode.ICE_MAGICAL , TileNameCode.ILLUMINATOR_BLACK , TileNameCode.ILLUMINATOR_BLUE @@ -77,7 +78,7 @@ public class MapCamera { * Connectivity group 02 : natural tiles * It holds different shading rule to discriminate with group 01, index 0 is middle tile. */ - private static Integer[] TILES_CONNECTIVE = { + private static Integer[] TILES_CONNECT_MUTUAL = { TileNameCode.STONE , TileNameCode.DIRT , TileNameCode.GRASS @@ -135,6 +136,23 @@ public class MapCamera { , TileNameCode.LAVA }; + /** + * Torches, levers, switches, ... + */ + private static Integer[] TILES_WALL_STICKER = { + TileNameCode.TORCH + , TileNameCode.TORCH_FROST + , TileNameCode.TORCH_OFF + , TileNameCode.TORCH_FROST_OFF + }; + + /** + * platforms, ... + */ + private static Integer[] TILES_WALL_STICKER_CONNECT_SELF = { + + }; + /** * Tiles that half-transparent and has hue * will blend colour using colour multiplication @@ -252,8 +270,11 @@ public class MapCamera { ))) { int nearbyTilesInfo; - if (isDarkenAir(thisTile)) { - nearbyTilesInfo = getNearbyTilesInfo(x, y, mode, TileNameCode.AIR); + if (isWallSticker(thisTile)) { + nearbyTilesInfo = getNearbyTilesInfoWallSticker(x, y); + } + else if (isConnectMutual(thisTile)) { + nearbyTilesInfo = getNearbyTilesInfoNonSolid(x, y, mode); } else if (isConnectSelf(thisTile)) { nearbyTilesInfo = getNearbyTilesInfo(x, y, mode, thisTile); @@ -330,7 +351,69 @@ public class MapCamera { } return ret; + } + private static int getNearbyTilesInfoNonSolid(int x, int y, int mode) { + int[] nearbyTiles = new int[4]; + if (x == 0) { nearbyTiles[NEARBY_TILE_KEY_LEFT] = 4096; } + else { nearbyTiles[NEARBY_TILE_KEY_LEFT] = map.getTileFrom(mode, x - 1, y); } + + if (x == map.width - 1) { nearbyTiles[NEARBY_TILE_KEY_RIGHT] = 4096; } + else { nearbyTiles[NEARBY_TILE_KEY_RIGHT] = map.getTileFrom(mode, x + 1, y); } + + if (y == 0) { nearbyTiles[NEARBY_TILE_KEY_UP] = 0; } + else { nearbyTiles[NEARBY_TILE_KEY_UP] = map.getTileFrom(mode, x, y - 1); } + + if (y == map.height - 1) { nearbyTiles[NEARBY_TILE_KEY_DOWN] = 4096; } + else { nearbyTiles[NEARBY_TILE_KEY_DOWN] = map.getTileFrom(mode, x, y + 1); } + + // try for + int ret = 0; + for (int i = 0; i < 4; i++) { + if (!TilePropCodex.getProp(nearbyTiles[i]).isSolid()) { + ret += (1 << i); // add 1, 2, 4, 8 for i = 0, 1, 2, 3 + } + } + + return ret; + } + + private static int getNearbyTilesInfoWallSticker(int x, int y) { + int[] nearbyTiles = new int[4]; + int NEARBY_TILE_KEY_BACK = NEARBY_TILE_KEY_UP; + if (x == 0) { nearbyTiles[NEARBY_TILE_KEY_LEFT] = 4096; } + else { nearbyTiles[NEARBY_TILE_KEY_LEFT] = map.getTileFrom(TERRAIN, x - 1, y); } + + if (x == map.width - 1) { nearbyTiles[NEARBY_TILE_KEY_RIGHT] = 4096; } + else { nearbyTiles[NEARBY_TILE_KEY_RIGHT] = map.getTileFrom(TERRAIN, x + 1, y); } + + if (y == map.height - 1) { nearbyTiles[NEARBY_TILE_KEY_DOWN] = 4096; } + else { nearbyTiles[NEARBY_TILE_KEY_DOWN] = map.getTileFrom(TERRAIN, x, y + 1); } + + nearbyTiles[NEARBY_TILE_KEY_BACK] = map.getTileFrom(WALL, x, y); + + try { + if (TilePropCodex.getProp(nearbyTiles[NEARBY_TILE_KEY_RIGHT]).isSolid() + && TilePropCodex.getProp(nearbyTiles[NEARBY_TILE_KEY_LEFT]).isSolid()) { + if (TilePropCodex.getProp(nearbyTiles[NEARBY_TILE_KEY_BACK]).isSolid()) + return 0; + else return 3; + } + else if (TilePropCodex.getProp(nearbyTiles[NEARBY_TILE_KEY_RIGHT]).isSolid()) { + return 2; + } + else if (TilePropCodex.getProp(nearbyTiles[NEARBY_TILE_KEY_LEFT]).isSolid()) { + return 1; + } + else if (TilePropCodex.getProp(nearbyTiles[NEARBY_TILE_KEY_BACK]).isSolid()) { + return 0; + } + else return 3; + } + catch (ArrayIndexOutOfBoundsException e) { + return TilePropCodex.getProp(nearbyTiles[NEARBY_TILE_KEY_BACK]).isSolid() + ? 0 : 3; + } } private static void drawTile(int mode, int tilewisePosX, int tilewisePosY, int sheetX, int sheetY) { @@ -478,11 +561,19 @@ public class MapCamera { } private static boolean isConnectSelf(int b) { - return Arrays.asList(TILES_CONNECTIVE_THE_TILE).contains(b); + return Arrays.asList(TILES_CONNECT_SELF).contains(b); } - private static boolean isDarkenAir(int b) { - return Arrays.asList(TILES_CONNECTIVE).contains(b); + private static boolean isConnectMutual(int b) { + return Arrays.asList(TILES_CONNECT_MUTUAL).contains(b); + } + + private static boolean isWallSticker(int b) { + return Arrays.asList(TILES_WALL_STICKER).contains(b); + } + + private static boolean isPlatform(int b) { + return Arrays.asList(TILES_WALL_STICKER_CONNECT_SELF).contains(b); } private static boolean isBlendMul(int b) { diff --git a/src/com/Torvald/Terrarum/TileProperties/TileNameCode.java b/src/com/Torvald/Terrarum/TileProperties/TileNameCode.java index 3e25c5c8c..7c4fa4751 100644 --- a/src/com/Torvald/Terrarum/TileProperties/TileNameCode.java +++ b/src/com/Torvald/Terrarum/TileProperties/TileNameCode.java @@ -59,24 +59,28 @@ public class TileNameCode { public static final int PLATFORM_BIRCH = TilePropCodex.indexDamageToArrayAddr(10, 3); public static final int PLATFORM_BLOODROSE = TilePropCodex.indexDamageToArrayAddr(10, 4); - public static final int TORCH = TilePropCodex.indexDamageToArrayAddr(11, 0); + public static final int TORCH = TilePropCodex.indexDamageToArrayAddr(11, 0); + public static final int TORCH_FROST = TilePropCodex.indexDamageToArrayAddr(11, 1); - public static final int ILLUMINATOR_WHITE = TilePropCodex.indexDamageToArrayAddr(12, 0); - public static final int ILLUMINATOR_YELLOW = TilePropCodex.indexDamageToArrayAddr(12, 1); - public static final int ILLUMINATOR_ORANGE = TilePropCodex.indexDamageToArrayAddr(12, 2); - public static final int ILLUMINATOR_RED = TilePropCodex.indexDamageToArrayAddr(12, 3); - public static final int ILLUMINATOR_FUCHSIA = TilePropCodex.indexDamageToArrayAddr(12, 4); - public static final int ILLUMINATOR_PURPLE = TilePropCodex.indexDamageToArrayAddr(12, 5); - public static final int ILLUMINATOR_BLUE = TilePropCodex.indexDamageToArrayAddr(12, 6); - public static final int ILLUMINATOR_CYAN = TilePropCodex.indexDamageToArrayAddr(12, 7); - public static final int ILLUMINATOR_GREEN = TilePropCodex.indexDamageToArrayAddr(12, 8); - public static final int ILLUMINATOR_GREEN_DARK = TilePropCodex.indexDamageToArrayAddr(12, 9); - public static final int ILLUMINATOR_BROWN = TilePropCodex.indexDamageToArrayAddr(12, 10); - public static final int ILLUMINATOR_TAN = TilePropCodex.indexDamageToArrayAddr(12, 11); - public static final int ILLUMINATOR_GREY_LIGHT = TilePropCodex.indexDamageToArrayAddr(12, 12); - public static final int ILLUMINATOR_GREY_MED = TilePropCodex.indexDamageToArrayAddr(12, 13); - public static final int ILLUMINATOR_GREY_DARK = TilePropCodex.indexDamageToArrayAddr(12, 14); - public static final int ILLUMINATOR_BLACK = TilePropCodex.indexDamageToArrayAddr(12, 15); + public static final int TORCH_OFF = TilePropCodex.indexDamageToArrayAddr(12, 0); + public static final int TORCH_FROST_OFF = TilePropCodex.indexDamageToArrayAddr(12, 1); + + public static final int ILLUMINATOR_WHITE = TilePropCodex.indexDamageToArrayAddr(13, 0); + public static final int ILLUMINATOR_YELLOW = TilePropCodex.indexDamageToArrayAddr(13, 1); + public static final int ILLUMINATOR_ORANGE = TilePropCodex.indexDamageToArrayAddr(13, 2); + public static final int ILLUMINATOR_RED = TilePropCodex.indexDamageToArrayAddr(13, 3); + public static final int ILLUMINATOR_FUCHSIA = TilePropCodex.indexDamageToArrayAddr(13, 4); + public static final int ILLUMINATOR_PURPLE = TilePropCodex.indexDamageToArrayAddr(13, 5); + public static final int ILLUMINATOR_BLUE = TilePropCodex.indexDamageToArrayAddr(13, 6); + public static final int ILLUMINATOR_CYAN = TilePropCodex.indexDamageToArrayAddr(13, 7); + public static final int ILLUMINATOR_GREEN = TilePropCodex.indexDamageToArrayAddr(13, 8); + public static final int ILLUMINATOR_GREEN_DARK = TilePropCodex.indexDamageToArrayAddr(13, 9); + public static final int ILLUMINATOR_BROWN = TilePropCodex.indexDamageToArrayAddr(13, 10); + public static final int ILLUMINATOR_TAN = TilePropCodex.indexDamageToArrayAddr(13, 11); + public static final int ILLUMINATOR_GREY_LIGHT = TilePropCodex.indexDamageToArrayAddr(13, 12); + public static final int ILLUMINATOR_GREY_MED = TilePropCodex.indexDamageToArrayAddr(13, 13); + public static final int ILLUMINATOR_GREY_DARK = TilePropCodex.indexDamageToArrayAddr(13, 14); + public static final int ILLUMINATOR_BLACK = TilePropCodex.indexDamageToArrayAddr(13, 15); public static final int WATER_1 = TilePropCodex.indexDamageToArrayAddr(254, 0); public static final int WATER_2 = TilePropCodex.indexDamageToArrayAddr(254, 1); diff --git a/src/com/Torvald/Terrarum/TileProperties/propdata.csv b/src/com/Torvald/Terrarum/TileProperties/propdata.csv index 54baf223d..f9bbbc7cf 100644 --- a/src/com/Torvald/Terrarum/TileProperties/propdata.csv +++ b/src/com/Torvald/Terrarum/TileProperties/propdata.csv @@ -35,28 +35,31 @@ "9"; "1";"TILE_ICE_FRAGILE" ; "3282"; "1"; "930"; "0"; "0"; "1"; "0"; "0"; "0"; "9"; "1"; "0";"16" "9"; "2";"TILE_ICE_NATURAL" ; "6564"; "25"; "930"; "0"; "0"; "1"; "1"; "0"; "1"; "9"; "2"; "0"; "8" "9"; "3";"TILE_ICE_CLEAR_MAGICAL" ; "8205"; "25";"3720"; "0"; "0"; "1"; "1"; "5009"; "0"; "9"; "3"; "0"; "8" - "10"; "0";"TILE_PLATFORM_STONE" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "0"; "0";"16" - "10"; "1";"TILE_PLATFORM_WOODEN" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "1"; "0";"16" - "10"; "2";"TILE_PLATFORM_EBONY" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "2"; "0";"16" - "10"; "3";"TILE_PLATFORM_BIRCH" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "3"; "0";"16" - "10"; "4";"TILE_PLATFORM_BLOODROSE" ; "0"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "4"; "0";"16" + "10"; "0";"TILE_PLATFORM_STONE" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "0"; "0";"16" + "10"; "1";"TILE_PLATFORM_WOODEN" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "1"; "0";"16" + "10"; "2";"TILE_PLATFORM_EBONY" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "2"; "0";"16" + "10"; "3";"TILE_PLATFORM_BIRCH" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "3"; "0";"16" + "10"; "4";"TILE_PLATFORM_BLOODROSE" ; "1641"; "1"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "10"; "4"; "0";"16" "11"; "0";"TILE_TORCH" ; "0"; "0"; "N/A"; "0"; "0"; "0"; "0"; "63412"; "0"; "11"; "0"; "0";"16" - "12"; "0";"TILE_ILLUMINATOR_WHITE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "59076"; "0"; "12"; "0"; "0";"16" - "12"; "1";"TILE_ILLUMINATOR_YELLOW" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "33440"; "0"; "12"; "1"; "0";"16" - "12"; "2";"TILE_ILLUMINATOR_ORANGE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "58320"; "0"; "12"; "2"; "0";"16" - "12"; "3";"TILE_ILLUMINATOR_RED" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57600"; "0"; "12"; "3"; "0";"16" - "12"; "4";"TILE_ILLUMINATOR_FUCHSIA" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57618"; "0"; "12"; "4"; "0";"16" - "12"; "5";"TILE_ILLUMINATOR_PURPLE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "28836"; "0"; "12"; "5"; "0";"16" - "12"; "6";"TILE_ILLUMINATOR_BLUE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "36"; "0"; "12"; "6"; "0";"16" - "12"; "7";"TILE_ILLUMINATOR_CYAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "1276"; "0"; "12"; "7"; "0";"16" - "12"; "8";"TILE_ILLUMINATOR_GREEN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "17240"; "0"; "12"; "8"; "0";"16" - "12"; "9";"TILE_ILLUMINATOR_GREEN_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "8640"; "0"; "12"; "9"; "0";"16" - "12"; "10";"TILE_ILLUMINATOR_BROWN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "21000"; "0"; "12"; "10"; "0";"16" - "12"; "11";"TILE_ILLUMINATOR_TAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "37448"; "0"; "12"; "11"; "0";"16" - "12"; "12";"TILE_ILLUMINATOR_GREY_LIGHT"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "47589"; "0"; "12"; "12"; "0";"16" - "12"; "13";"TILE_ILLUMINATOR_GREY_MED"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "29538"; "0"; "12"; "13"; "0";"16" - "12"; "14";"TILE_ILLUMINATOR_GREY_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "16410"; "0"; "12"; "14"; "0";"16" - "12"; "15";"TILE_ILLUMINATOR_BLACK" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "4923"; "0"; "12"; "15"; "0";"16" + "11"; "1";"TILE_TORCH_FROST" ; "0"; "0"; "N/A"; "0"; "0"; "0"; "0"; "919"; "0"; "11"; "1"; "0";"16" + "12"; "0";"TILE_TORCH" ; "1641"; "0"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "11"; "0"; "0";"16" + "12"; "1";"TILE_TORCH_FROST" ; "1641"; "0"; "N/A"; "0"; "0"; "0"; "0"; "0"; "0"; "11"; "1"; "0";"16" + "13"; "0";"TILE_ILLUMINATOR_WHITE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "59076"; "0"; "13"; "0"; "0";"16" + "13"; "1";"TILE_ILLUMINATOR_YELLOW" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "59040"; "0"; "13"; "1"; "0";"16" + "13"; "2";"TILE_ILLUMINATOR_ORANGE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "58720"; "0"; "13"; "2"; "0";"16" + "13"; "3";"TILE_ILLUMINATOR_RED" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57600"; "0"; "13"; "3"; "0";"16" + "13"; "4";"TILE_ILLUMINATOR_FUCHSIA" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "57628"; "0"; "13"; "4"; "0";"16" + "13"; "5";"TILE_ILLUMINATOR_PURPLE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "44836"; "0"; "13"; "5"; "0";"16" + "13"; "6";"TILE_ILLUMINATOR_BLUE" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "36"; "0"; "13"; "6"; "0";"16" + "13"; "7";"TILE_ILLUMINATOR_CYAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "1276"; "0"; "13"; "7"; "0";"16" + "13"; "8";"TILE_ILLUMINATOR_GREEN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "17240"; "0"; "13"; "8"; "0";"16" + "13"; "9";"TILE_ILLUMINATOR_GREEN_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "8640"; "0"; "13"; "9"; "0";"16" + "13"; "10";"TILE_ILLUMINATOR_BROWN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "21000"; "0"; "13"; "10"; "0";"16" + "13"; "11";"TILE_ILLUMINATOR_TAN" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "37448"; "0"; "13"; "11"; "0";"16" + "13"; "12";"TILE_ILLUMINATOR_GREY_LIGHT"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "47589"; "0"; "13"; "12"; "0";"16" + "13"; "13";"TILE_ILLUMINATOR_GREY_MED"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "29538"; "0"; "13"; "13"; "0";"16" + "13"; "14";"TILE_ILLUMINATOR_GREY_DARK"; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "16410"; "0"; "13"; "14"; "0";"16" + "13"; "15";"TILE_ILLUMINATOR_BLACK" ; "0"; "0"; "N/A"; "0"; "0"; "1"; "1"; "4923"; "0"; "13"; "15"; "0";"16" "254"; "0";"TILE_WATER" ; "6522"; "100";"1000"; "1"; "0"; "0"; "0"; "0"; "0"; "N/A"; "N/A"; "0";"16" "254"; "1";"TILE_WATER" ; "6522"; "100";"1000"; "1"; "3"; "0"; "0"; "0"; "0"; "N/A"; "N/A"; "0";"16" "254"; "2";"TILE_WATER" ; "6522"; "100";"1000"; "1"; "6"; "0"; "0"; "0"; "0"; "N/A"; "N/A"; "0";"16" diff --git a/work_files/Tools/b24_col_to_40step_col.py b/work_files/Tools/b24_col_to_40step_col.py index daded9f51..8d83d57aa 100644 --- a/work_files/Tools/b24_col_to_40step_col.py +++ b/work_files/Tools/b24_col_to_40step_col.py @@ -32,23 +32,5 @@ def intFromRGB24(r24, g24, b24): def colFromNum(raw): return getR40(raw), getG40(raw), getB40(raw) -print(intFromRGB24(238, 238, 238)) -print(intFromRGB24(128, 238, 0)) -print(intFromRGB24(238, 119, 0)) -print(intFromRGB24(238, 0, 0)) - -print(intFromRGB24(238, 0, 119)) -print(intFromRGB24(119, 0, 238)) -print(intFromRGB24(0, 0, 238)) -print(intFromRGB24(0, 204, 238)) - -print(intFromRGB24(68, 204, 0)) -print(intFromRGB24(34, 102, 0)) -print(intFromRGB24(85, 34, 0)) -print(intFromRGB24(153, 102, 51)) - -print(intFromRGB24(187, 187, 187)) -print(intFromRGB24(119, 119, 119)) -print(intFromRGB24(68, 68, 68)) -print(intFromRGB24(17, 17, 17)) - +print(intFromCol(28, 0, 36)) +print(colFromNum(57618)) diff --git a/work_files/graphics/terrain/wires_equiluminance.raw b/work_files/graphics/terrain/wires_equiluminance.raw new file mode 100644 index 000000000..0003be087 Binary files /dev/null and b/work_files/graphics/terrain/wires_equiluminance.raw differ diff --git a/work_files/graphics/terrain/wires_equiluminance12.raw b/work_files/graphics/terrain/wires_equiluminance12.raw new file mode 100644 index 000000000..168346010 Binary files /dev/null and b/work_files/graphics/terrain/wires_equiluminance12.raw differ